Интерполяция потерь речевых пакетов (PLC) предназначена
для сглаживания потерь отдельных речевых кадров целиком, возникающих,
например, в системах VoIP из-за проблем маршрутизации или джиттера, или
когда отдельные битовые ошибки в цифровых каналах связи приводят к ошибкам
распаковки и к хаотическому заполнению принятого пакета.
Большинство низкоскоростных параметрических и CELP вокодеров
содержат подобные механизмы интерполяции потерь внутри своих синтезаторов,
однако для них в VoIP издержки скорости на передачу заголовков IP пакетов
значительно превышают объем кодированных данных и все преимущества низкоскоростного
кодирования речи сводятся на нет.
Поэтому для передачи речи и аудио в VoIP все чаще применяются
высокачественные высокоскоростные непараметрические кодеки не имеющие,
однако, такого встроенного механизма интерполяции потерь кадров, например,
кодеки G.711 G.726, G.728 и др. Для них и предназначен разработанный алгоритм.
Алгоритм опрерирует с речевыми кадрами длительностью
от 5 до 40 мс, частота дискретизации может быть 8 или 16 кГц. Алгоритмическая
задержка обработки - 5 мс.
Итерполяция потерь происходит во временной области методом
PSOLA после оценки текущих параметров речи.
Алгоритм прекрасно справляется со случайными потерями
кадров (без группирования) до 25-30% от их общего числа.
Алгоритм управляется внешним флагом, сигнализирущим о
том, что текущий принятый пакет потерян или испорчен. В качестве признака
может использоваться контрольная сумма вышележащего протокола передачи
пакетов или анализ признаков помехи (хаотическое заполнение кадра).
Алгоритм PLC реализован в виде Си модели для ПЭВМ в арифметике
с фиксированной точкой с файловым вводом-выводом сигналов.
Многоканальная реализация для ЦПОС осуществляется под
заказ и может быть выполнена на различных вычислительных платформах.
По следующим звуковым файлам вы сможете оценить качество интерполяция
потерь речевых пакетов
Исходная речь |
|
Размер кадра 10 мс
5% потерянных пакетов без обработки |
|
5% потерянных пакетов с интерполяцией кадров (PLC) |
|
10% потерянных пакетов без обработки |
|
10% потерянных пакетов с интерполяцией кадров (PLC) |
|
25% потерянных пакетов без обработки |
|
25% потерянных пакетов с интерполяцией кадров (PLC) |
|
Размер кадра 20 мс
5% потерянных пакетов без обработки |
|
5% потерянных пакетов с интерполяцией кадров (PLC) |
|
10% потерянных пакетов без обработки |
|
10% потерянных пакетов с интерполяцией кадров (PLC) |
|
25% потерянных пакетов без обработки |
|
25% потерянных пакетов с интерполяцией кадров (PLC) |
|
Размер кадра 30 мс
5% потерянных пакетов без обработки |
|
5% потерянных пакетов с интерполяцией кадров (PLC) |
|
10% потерянных пакетов без обработки |
|
10% потерянных пакетов с интерполяцией кадров (PLC) |
|
25% потерянных пакетов без обработки |
|
25% потерянных пакетов с интерполяцией кадров (PLC) |
|
|