В 1920 году, Гарри Найквист разработал модель преобразования аналогового аудио-сигнала в цифровой. Данный процесс получил название – квантование.
Найквист утверждал, что можно аккуратно преобразовать любой аналоговый аудио-сигнал в цифровой с помощью сэмплов удвоив частоту дискретизации. Отсюда, если человеческое ухо может воспринимать звук на частотах 20-20000Гц, тогда, согласно теореме Найквиста его необходимо оцифровать с частотой дискретизации 44.1кГц, что соответствует качеству CD-Audio.
Человеческая речь звучит на частотах 200-9000Гц. Обычная аналоговая телефонная линия связи может передать этот голос на частотах 300-3400Гц. Этого достаточно, чтобы распознать личность человека на другом конце провода и услышать его интонацию и настроение. Следовательно, если человек может вполне комфортно воспринимать голос в телефонной трубке, который звучит на частотах 300-3400Гц, тогда можно ориентироваться примерно на эти частоты для его преобразования в цифровой сигнал с целью его отправки по сети передачи данных.
Теорема Найквиста способна преобразовать аудио частоты 300-4000Гц в цифровой сигнал на частоте вдвое большей, согласно его теореме. Следовательно, частота сэмлирования будет равна 8000 сэмплам в секунду.
Сэмпл – это числовое значение, которое хранится в одном байте информации, 1 байт равен 8 битам. 8000 сэмплов по 8 бит каждый в сумме выдаст число, которое будет равно 64000 битам. Если в каждом сэмпле содержится 8 бит информации, тогда в него можно записать любое число от 0 до 255. Квантование голоса ограничено пиковыми значениями +127 и -127, оставшийся бит используется для определения положительного или отрицательного цифрового значения, где 0 – положительное значение, 1 – отрицательное значение:
Пример квантования:
Передача 8000 сэмплов в секунду равна 64кбит/с, что справедливо для несжатого аудио сигнала, которому соответствует аудио-кодек G.711 a-law, который распространен в Европе. Существует другая разновидность кодека — G.711 μ-law, которая в основном используется в США и Японии.
Для экономии полосы пропускания существуют аудио-кодеки, с помощью которых можно сжать аудиосигнал. Так, кодек G.729 позволяет ужать сигнал с 64кбит/с до 8кбит/с ценой потери его качества. Процесс сжатия заключается в том чтобы послать сэмпл удаленной стороне и сказать, чтобы она проигрывала его некоторое время потому как многие сэмлы, если не идентичны, то крайне похожи друг на друга. Например, при произнесении слова «ива» мы используем протяжный звук «ииииии», а вместо того чтобы передавать 8000 сэмплов практически одной и той же частоты, можно передать один с указанием времени его протяженности.
Телефоны Cisco поддерживают кодеки G.711 и G.729. Кодек G.711 является общим стандартом для всех вендоров.
G.729 разделяют на два вида:
- G.729a (Annex A). Снижает нагрузку на процессор ценой потери качества аудио.
- G.729b (Annex B). Поддерживает технологию Voice Activity Detection (VAD), которая распознает тишину и прекращает передачу пакетов, тем самым создавая чувство дискомфорта и раздражения собеседника при полной тишине в разговорных паузах. Для решения этой проблемы на стороне слушателя обычно используется технология генерации комфортного шума (Comfort Noise Generation, CNG), который заполняет молчание шумом при передаче аудио-сигнала.
При оценке качества аудио-сигнала, преобразованного тем или иным кодеком, кроме объективных значений качества преобразования, существует и субъективная оценка слушателем. Такая оценка носит название Mean Opinion Score (MOS) и имеет значения от 1 до 5.
Далее приведу таблицу наиболее распространенных кодеков:
Кодек | Требуемая полоса пропускания | MOS |
G.711 | 64 кбит/с | 4.1 |
Internet Low Bitrate Codec (iLBC) | 15.2 кбит/с | 4.1 |
G.729 | 8 кбит/с | 3.92 |
G.726 | 32 кбит/с | 3.85 |
G.729a | 8 кбит/с | 3.7 |
G.728 | 16 кбит/с | 3.61 |