|
Рекомендация ITU-T G.729 - это CS-ACELP вокодер (Conjugate-structure Algebraic-code-excited Linear-Prediction). Алгоритм основан на модели кодирования с использованием линейного предсказания с возбуждением по алгебраической кодовой книге (CELP-модель). Кодер оперирует с кадрами речевого сигнала длиной 10мс, дискретизованными с частотой 8КГц, что соответствует 80 16-битным отсчетам в линейном законе. Для каждого кадра производится анализ речевого сигнала и выделяются параметры модели (коэффициенты фильтра линейного предсказания, индексы и коэффициенты усиления в адаптивной и фиксированной кодовых книгах). Далее эти параметры кодируются и передаются в канал.
В декодере битовая посылка используется для восстановления параметров сигнала возбуждения и коэффициентов синтезирующего фильтра. Речь восстанавливается путем пропускания сигнала возбуждения через кратковременный синтезирующий фильтр.
Синтезирующий фильтр имеет полюсную передаточную функцию 10-го порядка. Для работы синтезатора основного тона используется адаптивная кодовая книга. В последующем, речь улучшается адаптивной постфильтрацией.
В случае потери передаваемой кодером битовой посылки, исходные данные для речевого синтезатора получаются интерполяцией данных с предыдущих "хороших" кадров, но при этом энергия интерполированного речевого сигнала постепенно уменьшается, что не создает особого дискомфорта у слушателя.
Вокодер обрабатывает кадры речевых сигналов длиной 10мс. Дополнительно, существует задержка длиной 5мс (look-ahead buffer), что в сумме выливается в алгоритмическую задержку 15мс. Также, задержки речевого сигнала в практическом приложении этого алгоритма определяются временем, затрачиваемым на:
- процессы кодирования и декодирования;
- передачу по каналу;
- мультиплексирование при комбинировании аудиоданных с другими видами данных.
Помимо "чистой" рекомендации G.729, существуют "приложения" (annexes). Приложение А - версия рекомендации, менее требовательная к вычислительной мощности ЦПОС за счет некоторого ухудшения качества кодирования. Алгоритм теоретически должен потреблять на 40-50% меньше временного ресурса, чем "чистая" G.729. Изменения, в основном, касаются следующих частей алгоритма: поиск периода основного тона и поиск параметров возбуждения по алгебраической кодовой книге.
Полное описание рекомендации можно найти в документах (или на сайте ITU):
- ITU-T Recommendation G.729, Coding of speech at 8 kbit/s using conjugate-structure algebraic-code-excited linear-prediction (CS-ACLEP);
- ITU-T Recommendation G.729 - Annex A, Coding of speech at 8 kbit/s using conjugate-structure algebraic-code-excited linear-prediction (CS-ACLEP), Annex A: Reduced complexity 8 kbit/s CS-ACELP speech codec;
Алгоритм реализован для ЦПОС семейства TMS320C54x фирмы Texas Instruments.
Реализация удовлетворяет следующим требованиям:
- функционирует в режиме реального времени;
- совместима со всеми ЦПОС в рамках семейства TMS320C54x (не используются специфические особенности старших моделей, таких как TMS320C548, TMS320C549 и пр.);
- полностью совместима с требованиями стандарта ITU-T G.729 (приложение А) - достигнуто побитовое соответствие тестовым векторам;
- оттестирована в различных режимах работы в составе реальной системы речевой обработки (ip-телефонном шлюзе)
Ресурсоемкость реализации для TMS320C54x (версия 1.1)
Загрузка процессора |
| | G.729.A кодер | G729.A декодер |
Вычислительный ресурс (пиковая загрузка на один канал), млн.оп./с. | 10.75 | 2.1 |
12.85 |
Память |
программа, К слов | 6.55 |
таблицы, К слов | 3.1 + 0.05 * N |
данные, К слов | 1.17 + 1.54 * N |
Всего, К слов | 10.82 + 1.59 * N |
Таким образом, на одном процессоре TMS320C549 с 32 килословами внутренней памяти и мощностью 100MIPS можно реализовать независимую обработку семи речевых каналов
По следующим звуковым файлам вы сможете оценить качество алгоритма G.729.A:
Исходная речь | 
|
Речь, упакованная кодером G.729.A и восстановленная декодером G.729.A при нулевых потерях | 
|
Можно получить подробную документацию по представленным реализациям алгоритма ITU-T G.729 (Приложение A), описание API реализаций, подробные инструкции по встраиванию алгоритма в систему обработки речевых сигналов:
ITU-T G729.A для TMS320C54x (формат Word)
Использовались материалы сайта http://www.dsp.sut.ru.
|