Кодирование речи — это применение сжатия данных к цифровым аудиосигналам, содержащим речь . Кодирование речи использует оценку параметров речи с использованием методов обработки аудиосигнала для моделирования речевого сигнала в сочетании с общими алгоритмами сжатия данных для представления результирующих смоделированных параметров в компактном потоке битов. [1]
Распространенными приложениями кодирования речи являются мобильная телефония и передача голоса по IP (VoIP). [2] Наиболее широко используемым методом кодирования речи в мобильной телефонии является кодирование с линейным предсказанием (LPC), а в приложениях VoIP наиболее широко используются методы LPC и модифицированного дискретного косинусного преобразования (MDCT). [ нужна цитата ]
Методы, используемые при кодировании речи, аналогичны тем, которые используются при сжатии аудиоданных и кодировании звука , где понимание психоакустики используется для передачи только данных, которые имеют отношение к слуховой системе человека. Например, при кодировании речи в голосовом диапазоне передается только информация в полосе частот от 400 до 3500 Гц, но восстановленный сигнал сохраняет достаточную разборчивость .
Кодирование речи отличается от других форм кодирования звука тем, что речь представляет собой более простой сигнал, чем другие аудиосигналы, и доступна статистическая информация о свойствах речи. В результате некоторая слуховая информация, которая важна для общего кодирования звука, может оказаться ненужной в контексте кодирования речи. Кодирование речи подчеркивает сохранение разборчивости и приятности речи при использовании ограниченного объема передаваемых данных. [3] Кроме того, большинство речевых приложений требуют малой задержки кодирования, поскольку задержка мешает речевому взаимодействию. [4]
Речевые кодеры делятся на два класса: [5]
Алгоритмы A-law и μ-law , используемые в цифровой телефонии G.711 PCM , можно рассматривать как более ранний предшественник кодирования речи, требующий только 8 бит на выборку, но обеспечивающий эффективное разрешение 12 бит . [7] Логарифмическое компандирование соответствует восприятию человеческого слуха, поскольку шум низкой амплитуды слышен вместе с речевым сигналом низкой амплитуды, но маскируется шумом высокой амплитуды. Хотя это может привести к неприемлемым искажениям музыкального сигнала, пиковая природа речевых сигналов в сочетании с простой частотной структурой речи в виде периодического сигнала , имеющего единственную основную частоту с периодическими добавленными шумовыми всплесками, делает эти очень простые алгоритмы мгновенного сжатия приемлемыми для речь. [ нужна ссылка ] [ сомнительно ]
В то время было опробовано множество других алгоритмов, в основном варианты дельта-модуляции , но после тщательного рассмотрения разработчики первых систем цифровой телефонии выбрали алгоритмы A-law/μ-law. На момент разработки снижение пропускной способности на 33% при очень низкой сложности представляло собой отличный инженерный компромисс. Их качество звука остается приемлемым, и необходимости в замене их в стационарной телефонной сети не возникло. [ нужна цитата ]
В 2008 году кодек G.711.1 , имеющий масштабируемую структуру, был стандартизирован ITU-T. Частота входной дискретизации составляет 16 кГц. [8]
Большая часть более поздних работ по сжатию речи была мотивирована военными исследованиями в области цифровой связи для защищенных военных радиостанций , где очень низкие скорости передачи данных использовались для достижения эффективной работы во враждебной радиосреде. В то же время в виде схем СБИС было доступно гораздо больше вычислительной мощности , чем было доступно для более ранних методов сжатия. В результате современные алгоритмы сжатия речи могут использовать гораздо более сложные методы, чем те, которые были доступны в 1960-х годах, для достижения гораздо более высоких коэффициентов сжатия.
Наиболее широко используемые алгоритмы кодирования речи основаны на кодировании с линейным предсказанием (LPC). [9] В частности, наиболее распространенной схемой кодирования речи является кодирование с линейным предсказанием с кодовым возбуждением (CELP) на основе LPC, которое используется, например, в стандарте GSM . В CELP моделирование разделено на два этапа: этап линейного прогнозирования , который моделирует спектральную огибающую, и модель остатка модели линейного прогнозирования на основе кодовой книги. В CELP коэффициенты линейного предсказания (LPC) вычисляются и квантуются, обычно как линейные спектральные пары (LSP). Помимо фактического речевого кодирования сигнала, для передачи часто необходимо использовать канальное кодирование , чтобы избежать потерь из-за ошибок передачи. Чтобы получить наилучшие общие результаты кодирования, методы кодирования речи и канального кодирования выбираются парами, при этом более важные биты в потоке речевых данных защищаются более надежным канальным кодированием.
Модифицированное дискретное косинусное преобразование (MDCT) используется в методе LD-MDCT, используемом в формате AAC-LD , представленном в 1999 году . [10] С тех пор MDCT широко применяется в приложениях передачи голоса по IP (VoIP), таких как Широкополосный аудиокодек G.729.1 , представленный в 2006 году, [11] Apple FaceTime (с использованием AAC-LD), представленный в 2010 году, [12] и кодек CELT , представленный в 2011 году. [13]
Opus — бесплатный аудиокодер. Он сочетает в себе речевой алгоритм SILK на основе LPC и алгоритм CELT на основе MDCT с меньшей задержкой, переключаясь между ними или комбинируя их по мере необходимости для максимальной эффективности. [14] [15] Он широко используется для VoIP-звонков в WhatsApp . [16] [17] [18] Игровая консоль PlayStation 4 также использует Opus для группового чата в системе PlayStation Network . [19]
Был продемонстрирован ряд кодеков с еще более низкой скоростью передачи данных . Кодек2 , работающий со скоростью передачи данных всего 450 бит/с, находит применение в любительском радио. [20] В настоящее время НАТО использует MELPe , обеспечивающий разборчивую речь со скоростью 600 бит/с и ниже. [21] Также появились подходы с использованием нейронного вокодера: Lyra от Google обеспечивает «почти жуткое» качество на скорости 3 кбит/с. [22] Microsoft Satin также использует машинное обучение, но использует более высокий настраиваемый битрейт и является широкополосным. [23]
{{cite book}}
: |journal=
игнорируется ( помощь )