Введение

ITU T Recommendation G.729 – это бесплатный алгоритм сжатия аудиоданных на основе узкополосного вокодера, использующий длину кадра 10 миллисекунд. Официально он описан как кодирование речи со скоростью 8 кбит/с с использованием кодового возбужденного линейного предсказания речи (CS-ACELP) и был представлен в 1996 году. Расширение для широкой полосы частот G.729 называется G.729.1, что эквивалентно G.729 Приложению J. Благодаря низким требованиям к полосе пропускания, G.729 в основном используется в приложениях VoIP (Voice over Internet Protocol), когда необходимо экономить полосу пропускания. Стандарт G.729 работает со скоростью 8 кбит/с, но расширения обеспечивают скорости 6,4 кбит/с (Приложения D, F, H, I, C+) и 11,8 кбит/с (Приложения E, G, H, I, C+) для ухудшения и улучшения качества речи соответственно. G.729 был расширен различными функциями, обычно обозначаемыми как G.729a и G.729b:

G.729: Это оригинальный кодек, использующий алгоритм высокой сложности.
G.729A или Приложение A: Эта версия имеет среднюю сложность и совместима с G.729. Она обеспечивает немного более низкое качество голоса.
G.729B или Приложение B: Эта версия расширяет G.729 функцией подавления тишины и не совместима с предыдущими версиями.
G.729AB: Эта версия расширяет G.729A функцией подавления тишины и совместима только с G.729B.
G.729.1 или Приложение J: Эта версия расширяет G.729A и B масштабируемым кодированием переменной скоростью с использованием иерархических слоев повышения. Она обеспечивает поддержку широкополосной речи и аудио, используя модифицированное дискретное косинусное преобразование (MDCT).

| | A | B | C | D | E | F | G | H | I | C+ | J |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Низкая сложность | | | X | X | | | | | | | |
| Фиксированная точка | | X | X | X | | X | X | X | X | X | X | | X |
| Плавающая точка | | | | | X | | | | | | | | X |
| 8 кбит/с | | X | X | X | X | X | X | X | X | X | X | X | X |
| 6.4 кбит/с | | | | | | X | | X | | X | X | X | |
| 11.8 кбит/с | | | | | | | X | | X | X | X | X | |
| DTX | | | | X | | | | X | X | | X | X | |
| Переменная скорость передачи, широкополосная | | | | | | | | | | | | | X |

G.729 Приложение Б

G.729 был расширен в Приложении B (G.729b), которое предоставляет метод сжатия тишины и включает модуль обнаружения голосовой активности (VAD). Он используется для определения наличия речи в сигнале. Также предусмотрен модуль прерывистой передачи (DTX), который определяет необходимость обновления параметров фонового шума для фрагментов без речи (шумных кадров). Он использует 2-байтовые кадры Silence Insertion Descriptor (SID), передаваемые для запуска генерации комфортного шума (CNG). Если передача останавливается и канал становится тихим из-за отсутствия речи, принимающая сторона может решить, что соединение разорвано. Вставка комфортного шума позволяет цифровым способом имитировать аналоговый шум во время тишины, чтобы убедить принимающее устройство в том, что соединение активно и функционирует.

G.729 Приложение J (G.729.1)

G.729 Приложение J, поддерживаемое G.729.1, обеспечивает поддержку широкополосной речи и аудио. Введенный в 2006 году, он определяет широкополосное улучшение с переменной скоростью передачи данных, используя до 12 иерархических слоев. Базовый слой представляет собой битовый поток G.729 со скоростью 8 кбит/с, второй слой – узкополосный слой улучшения со скоростью 4 кбит/с, а третий слой со скоростью 2 кбит/с – слой улучшения полосы пропускания. Последующие слои обеспечивают улучшение широкополосной связи с шагом 2 кбит/с. G.729.1 использует трехступенчатое кодирование: кодирование нижней полосы с использованием встроенного возбуждения линейного предсказания (CELP), параметрическое кодирование верхней полосы посредством расширения полосы пропускания во временной области (TDBWE) и улучшение полной полосы с помощью алгоритма предсказательного преобразования, называемого подавлением временных алиасов (TDAC), также известного как кодирование модифицированной дискретной косинусной трансформации (MDCT). G.729 включает патенты нескольких компаний, которые до истечения срока действия лицензии управлялись Sipro Lab Telecom, уполномоченным администратором лицензирования интеллектуальной собственности для технологии G.729 и патентного пула.

Прошлые патентные споры

AIM IP LLC, калифорнийская компания с ограниченной ответственностью, базирующаяся в Миссион-Вьехо, штат Калифорния, подала 17 исков о нарушении патентных прав в центральные окружные суды Калифорнии, обвинив 22 различные компании, включая Cisco Systems, Polycom и другие, в нарушении патента США № 5 920 853. Патент № 5 920 853 был подан в Патентное ведомство США в 1996 году компанией Rockwell International. Изобретателями, указанными в патенте № 5 920 853, являются Бениассин Адиль, Су Хуань Ю и Шломот Эяль. В 2000 году компания Rockwell International передала патент № 5 920 853 компании Conexant Systems, американскому разработчику программного обеспечения и производителю полупроводников, которая первоначально была подразделением Rockwell, а затем стала независимой публичной компанией. В 2010 году компания Conexant Systems продала патент № 5 920 853 компании AIM IP LLC, калифорнийской компании с ограниченной ответственностью, базирующейся в Миссион-Вьехо.

Тип полезной нагрузки RTP

G.729 IANA присвоен статический тип полезной нагрузки 18 для RTP. Описание параметра rtpmap для этого типа полезной нагрузки – "G729/8000". И G.729a, и G.729b используют то же описание rtpmap, что и G.729. G.729a и G.729b указываются с помощью annexb=no или annexb=yes соответственно. G.729 Приложение B (G.729b) является значением по умолчанию при отсутствии параметра annexb в протоколе описания сеанса.