реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Сложение цифрового звука, на хмеге
ae_
сообщение Sep 9 2011, 01:17
Сообщение #16


Участник
***

Группа: Свой
Сообщений: 462
Регистрация: 2-04-07
Из: Иркутск
Пользователь №: 26 695



Цитата(zombi @ Sep 9 2011, 01:26) *
...При этом громкость каждого голоса не зависит от того в хоре он поёт или нет.

L+R -> 9бит ЦАП и (L+R)/2 -> 8бит ЦАП - разницы в громкости не будет никакой, сумма каналов имеет полный размах DAC, каждый из каналов - лишь половину от диапазона DAC. Во втором случае ещё и хуже качество, т.к. есть потери звуковой информации.
Я предложил использовать среднее арифметическое лишь для решения эстетической проблемы: "0FFH+0FFH= 1FEH младшего бита не хватает". Делаем хуже качество, зато цифры ровные. Ведь даже для [0…9]+[0…9]=[0…18] а не [0…19] - некрасиво.
Складываейте, как и собирались в 1 посте, всё правильно, но сигналы ослабляются вдвое, как и при (L+R)/2.
Go to the top of the page
 
+Quote Post
zombi
сообщение Sep 9 2011, 05:49
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(ae_ @ Sep 9 2011, 04:17) *
Складываейте, как и собирались в 1 посте, всё правильно, но сигналы ослабляются вдвое, как и при (L+R)/2.

Да вы правы, но пусть уж лучше ослабляются чем страдает качество.

Спасибо всем за помощь!
Go to the top of the page
 
+Quote Post
Allregia
сообщение Sep 9 2011, 09:35
Сообщение #18


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



А немного "в сторону вопрос" - если надо не складываь, а вычитать сигналы, что будет (или что надо делать) с разрядностью?
Например - пропустить сигнал через ФНЧ, затем вычесть его из исходного, т.е.. получив согласованный ФВЧ ?
Go to the top of the page
 
+Quote Post
ae_
сообщение Sep 9 2011, 12:15
Сообщение #19


Участник
***

Группа: Свой
Сообщений: 462
Регистрация: 2-04-07
Из: Иркутск
Пользователь №: 26 695



Цитата(Allregia @ Sep 9 2011, 18:35) *
А немного "в сторону вопрос" - если надо не складываь, а вычитать сигналы, что будет (или что надо делать) с разрядностью? ...

То же самое. Разность, как и сумма, для двух 8-бит сигналов без потери качества будет 9-бит.
255-0 = 255
0-255 = -255
диапазон значений max-min 255-(-255)=510.
Go to the top of the page
 
+Quote Post
Allregia
сообщение Sep 10 2011, 14:12
Сообщение #20


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Цитата(ae_ @ Sep 9 2011, 14:15) *
То же самое. Разность, как и сумма, для двух 8-бит сигналов без потери качества будет 9-бит.
255-0 = 255
0-255 = -255
диапазон значений max-min 255-(-255)=510.


Т.е. что получается - допустим есть 8-битный сигнал (IN), пропускаю его через ФНЧ и вычитаю из исходного.

получаю два сигнала:
OUT1=LPF(IN)
OUT2=IN-OUT2=IN-LPF(IN)

Чтобы небыло переполнения, OUT2 должен быть 9-битным, но чтобы иметь на выходе опять 8-битный сигнал, я должен его поделить на 2, т.е. пожертвовать младшим битом.

Предположим полный размах (8бит) это 1 вольт., частота среза ФНЧ 1кгц.
Даю на вход синус полного размаха 10кгц. На выходе OUT1 практически ничего, на выходе OUT2 имею 0.5в.
Даю на вход синус полного размаха 100гц. На выходе OUT1 получаю 1в, на выходе OUT2 - почти ничего. Но, чтобы выходы были одинаковые, OUT1 я тоже должен поделить на 2, т.е. истинные выходы будут выглядеть так:
OUT1 = LPF(IN)/2
OUT2 = (IN-LPF(IN))/2

Т.е. я потерял точность (младший бит) и динамический диапазон (т.к. на выходе фактически 7 бит).
Из этого следует, что делать ФВЧ согласованный с ФНЧ (методом вычитания) в цифре нельзя и лучше применить отдельный ФВЧ:
OUT1=HPF(IN)
OUT2=LPF(IN)

Где я ошибся?
Go to the top of the page
 
+Quote Post
ae_
сообщение Sep 11 2011, 03:08
Сообщение #21


Участник
***

Группа: Свой
Сообщений: 462
Регистрация: 2-04-07
Из: Иркутск
Пользователь №: 26 695



Цитата(Allregia @ Sep 10 2011, 23:12) *
...Из этого следует, что делать ФВЧ согласованный с ФНЧ (методом вычитания) в цифре нельзя и лучше применить отдельный ФВЧ:

Сложение и вычитание - обратимые операции, и в обоих случаях результат может выходить за разрядность исходных данных.
В том, что разность IN-LPF(IN) получается большей разрядности, "цифра" не причём, это и в реальной схеме так:
Прикрепленное изображение

схема - RC цепочка, вверху входной сигнал, в середине - напряжение на конденсаторе (ФНЧ), внизу - на резисторе (ФВЧ).
амплитуда на резисторе превышает входной сигнал вдвое. ФВЧ=ВХОД-ФНЧ, всё сходится :)
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 00:29
Рейтинг@Mail.ru


Страница сгенерированна за 0.0138 секунд с 7
ELECTRONIX ©2004-2016