Главная » Программирование звука » Громкость, амплитуда и мощность

0

Помимо  высоты  тона  человек  ощущает  и  другую  характеристику  звука громкость.  Физические  величины,  наиболее  точно  соответствующие  громкости,   это звуковое  давление  (для  звуков  в  воздухе)  и  амплитуда  (для  цифрового  или  электронного представления звука).

Если  говорить  об  оцифрованном  сигнале,  то  амплитуда   это  значение  выборки.   Анализируя   миллионы   дискретных   значений   уровня   одного   и   того   же звука,  часто  говорят  о  пиковой  амплитуде,  то  есть  об  абсолютной  величине  максимального  из  полученных  дискретных  значений  уровня  звука.  Чтобы  избежать искажения,  вызванного  искажением  ограничения  сигнала  при  цифровой  записи звука  (данное  искажение  возникает  в  том  случае,  если  величина  пиковой  амплитуды  выходит  за  границы,  определяемые  форматом  хранения  данных),  необходимо  обратить  внимание  на  величину  пиковой  амплитуды.  При  этом  нужно сохранять   отношение   сигнал/шум   на   максимально   достижимом   уровне.   (Позже мы  обсудим  обе  эти  концепции).  Прежде  чем  перейти  к  определению  средней амплитуды, я хочу отклониться  от  темы  и  поговорить  о  связанной  с  ней  концепции мощности.

Основной  причиной  разной  громкости  звуков  является  различное  давление, оказываемое  ими  на  ваши  уши.  Физик  сказал  бы,  что  волны  давления  обладают различными  уровнями  мощности.  Волны,  несущие  большую  мощность,  с  большей силой  оказывают  воздействие  на  механизм  ваших  ушей.  Электрические  сигналы, идущие по проводам, также передают мощность. По проводам звук обычно передается в виде переменного напряжения, и мгновенная мощность этого звука пропорциональна  квадрату  напряжения.  Чтобы  определить  полную  мощность  за  период времени,  необходимо  просуммировать  все  значения  моментальной  мощности  за этот период.

На языке математики это описывается интегралом ?? t  dt , где ?tэто напряже-

ние в заданный момент времени.

Поскольку   вы   используете   звук,   представленный   дискретными   значениями, вам  не  понадобится  брать  интеграл.  Достаточно  просто  сложить  квадраты  отсчетов.  Среднее  значение  квадратов  дискретных  значений  пропорционально  средней мощности.

Так  как  моментальная  мощность  зависит  от  квадрата  моментальной  амплитуды,  имеет  смысл  аналогичным  образом  подобрать  похожее  соотношение,  связывающее  среднюю  амплитуду  и  среднюю  мощность.  Способ,  которым  это  можно сделать,  заключается  в  определении  средней  амплитуды  как  среднеквадратической  амплитуды  (СКЗ).  Вместо  того,  чтобы  вычислять  среднее  значение  непосредственно  амплитуды,  мы  сначала  возводим  в  квадрат  полученные  значения,  вычисляем  среднее  значение  получившегося  множества,  а  затем  извлекаем  из  него корень. Метод СКЗ применяется в том случае, когда необходимо вычислить среднее  для  быстро  меняющейся  величины.  Алгебраически  это  выражается  следующим  образом:  пусть  у  нас  N  значений  и  x(i)   это  амплитуда  i-ого  дискретного значения. Тогда

СКЗ амплитуды =

N

? (( x(i))2       .

N i =0

Я  умалчиваю  о  том,  что  мощность  всего  лишь  пропорциональна  возведенной в  квадрат  величине  дискретного  значения.  Это  означает,  что  для  перехода  к  реальной  мощности,  эту  величину  необходимо  умножить  на  некоторый  коэффициент.  Безусловно,  вам  как  программисту  могут  и  не  понадобиться  точные  данные об  электрической  мощности,  так  что,  на  самом  деле,  нас  не  интересуют  точные числа, скорее относительная мощность.

Относительная  мощность  измеряется  в  белах,  а  чаще  в  децибелах  (дБ,  децибел,   это  одна  десятая  бела).  Чтобы  сравнить  два  звука,  берется  отношение  их мощности.  Десятичный  логарифм  этого  отношения  и  есть  различие  в  белах;  если умножить  получившееся  число  на  десять,  то  получится  значение  в  децибелах. Например,  если  мощность  одного  сигнала  превосходит  мощность  другого  в  два раза, то первый сигнал будет громче на 10log10(2) ? 3,01 дБ.

Обратите  внимание,  что  децибелы  можно  применять  только  для  сравнения

двух  сигналов.  Однако  измерение  звуков  в  децибелах  оказалось  настолько  удобным,  что  инженеры-акустики  договорились  использовать  некоторый  звук  в  качестве  стандартного  эталона.1   Этот  эталон  очень  близок  к  самому  тихому  звуку, который  только  может  расслышать  человек.  Самый  громкий  звук,  который  способен  слышать  человек,  громче  эталона  приблизительно  на  120  дБ  (в  миллион миллионов  раз  громче,  чем  эталон)   его  громкость  почти  соответствует  громкости  работающего  рядом  реактивного  двигателя.  Как  мы  видим,  слух  человека приспособлен для восприятия звуков в широком диапазоне громкости.

Шкала  децибелов  также  используется  для  измерения  потерь  звука.  Если  два различных  звука  с  одной  и  той  же  энергией  пропустить  через  некоторую  электронную  цепь  или  цифровой  алгоритм  обработки  звука,  на  выходе  один  звук  может оказаться на 6 дБ слабее другого.

Шкала  децибелов  используется  и  для  измерения  уровня  шума  или  искаже-

ний, которые были добавлены (непреднамеренно) к любому сигналу.

1   Строго  говоря,  в  качестве  этого  стандартного  эталона,  который  применяется  только   для измерения   звука   в   воздухе,   используется   1000-герцевый   тон,   вызывающий    колебания давления воздуха силой 20 микропаскалей.

Рассмотрим  пример.  При  записи  музыкального  компакт-диска  для  хранения отсчетов  звука  используются  16-битные  целые  числа.  Это  дает  диапазон  значений  от  -32768  до  +32767.  Так  как  истинный  физический  сигнал  округляется  до ближайшего целого значения, ошибка не превышает 0,5, что в 2-16  раз меньше, чем максимальная  величина  отсчета.  Как  было  отмечено  раньше,  мощность  зависит от квадрата амплитуды, так что мощность ошибки в 2"32  раз меньше, чем максимально  допустимая  громкость  сигнала.  Максимально  допустимая  мощность  сигнала  относится  к  мощности  максимальной  ошибки  (шума)  как  232   к  одному,  что соответствует 10 log10(232) ? 96,3 дБ.

Есть несколько причин, по которым с помощью измерений, проведенных в де-

цибелах, удается хорошо аппроксимировать то, как человек ощущает громкость. Вопервых, чувство слуха у человека очень близко к логарифму: ощущаемая разница в громкости двух звуков зависит от отношения, а не от разности мощностей каждого из звуков. Хотя это будет и не совсем корректно, было бы неплохо рассматривать децибел как минимально ощущаемое изменение громкости.

Еще один аспект, для которого измерения в децибелах дают точную картину ощущений человека это то, что ощущаемая громкость очень сильно зависит от относительной мощности. В частности, известна акустическая иллюзия, называемая маскированием. Если звук образуется двумя независимыми компонентами и одна из этих компонент гораздо громче другой, то более тихая компонента часто будет неслышна. Фактически, слух человека «настраивается» к уровню более громкого звука и более тихий звук слышится гораздо более тихим, чем он есть на самом деле. Это особенно относится к тем ситуациям, когда у этих звуков очень близки высоты тона.

Эффект  маскирования   это  важный  инструмент  в  современной  аудиокомпрессии.  Определяя  и  выборочно  отбрасывая  слабые  звуки,  которые  будут  маскированы более громкими, вы сможете в целом упростить звук и добиться того, что сжать его будет проще. Хорошее понимание эффекта маскирования позволит вам выявить  наиболее  слышимые  составляющие  сложного  звука:  для  этого  требуется понять, что звуки с самыми большими амплитудами вовсе не обязательно  слышны лучше всех остальных.

Есть  еще  несколько  факторов,  которые  влияют  на  наше  восприятие  громкости. Во-первых, громкость частично зависит от высоты тона. Слух человека более чувствителен  в  определенном  среднем  диапазоне  частот.  Его  чувствительность прогрессирующе  падает  на  более  низких  или  высоких  тонах.  В  результате  этого, если взять звук средней высоты тона и звук высокого тона, у которых будет одинаковая мощность, то более громким покажется звук среднего тона.

Кроме  того,  сложные  звуки  человек  слышит  хуже  звуков  простых  тонов. В  частности,  очень  трудно  расслышать  высокочастотный  шум.  Метод  цифрового преобразования,   называемый   размыванием   (dithering),   позволяет   преобразовать ошибки некоторых типов в менее различимый высокочастотный шум.

Источник: Кинтцель Т.  Руководство программиста по работе со звуком = A Programmer’s Guide to Sound: Пер. с англ. М.: ДМК Пресс, 2000. 432 с, ил. (Серия «Для программистов»).

По теме:

  • Комментарии