Перейти к содержанию
    

Речевой кодек для задачи, поставленной GeGel

Ниже выложил пробу звука на 978 бит/с - это тоже что и MELP 1200, только без битов FEC.

Средний вариант между 1956 bps и 489 bps.

Спасибо, полезно. У Вас в оригинальном файле какая-то предобработка? Вроде бы предварительное эхо?

Я его ради интереса пропустил через свой кодек http://exfile.ru/483147

Если слушать через динамик, то, как мне кажется, мой вариант предпочтительнее, если же через наушники, то однозначно - МЕLP лучше.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если вы спросили про первую пробу(где 2 голоса), то это запись с радио - может быть все что угодно: начиная от эха, заканчивая фоновыми звуками.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Всё, нет моих сил больше. В файле - последняя версия акустической части, ничего менять не буду. С вокодера, которому передается только нормированный энергетический спектр (без синусной и косинусной компонент), выжать что-нибудь еще невозможно. Пришлось отказаться от полулогарифмического сжатия сигнала, т.к. все эксперты морщили носы, говорили о "советском" звучании и т.п.

Впрочем, замечания приму к сведению и буду за них признателен (виртуально, понятное дело). RESUL.WAV

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я правильно понял постановку задач. Нужно получить неузнаваемость голоса абонента?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я правильно понял постановку задач. Нужно получить неузнаваемость голоса абонента?

Нет, разумеется, у меня такой задачи не стоит. Пока только рожал ежика. Смысл родов в том, чтобы ограничиться минимумом информации как передаваемой по каналу связи, так и хранимой в приемном и передающем устройстве. При приемлемом качестве речи (хотя желания потенциальных пользователей в этом плане абсолютно нереалистичны).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

какой битрейт (максимальный, пик) у последней звуковой пробы?

Изменено пользователем Mister_DSP

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

какой битрейт (максимальный, пик) у последней звуковой пробы?

 

Такой же, не изменился. Для именно этой пробы - 850 без предварительного сжатия и 300 после Хаффмена. Изменил только окно данных в синтезаторе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По качеству если 800 бит/с - то уступает MELP-у. Если 300 бит/с - превосходно для такого битрейта!

 

Какой размер блока в байтах сжимаете Хаффманом?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сможет ли Хаффман пожать блок из 33 байт? Это 6 фреймов вокодера MELP, данные кореллируют между собой (параметры речевого сигнала)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сможет ли Хаффман пожать блок из 33 байт? Это 6 фреймов вокодера MELP, данные кореллируют между собой (параметры речевого сигнала)

Да, в каноническом включении здесь проблемы. Но если представлять последовательность байт в виде ДИКМ, причем невязку корректировать в последующем такте, то все очень недурно получается. Номера передаваемых спектров надо, понятное дело, изначально располагать по частости встречаемости и минимальному ожидаемому приращению на последующем такте.

Этот метод мы отработали еще при цифровой передаче ЭКГ через акустический канал мобильника (как говорит ув. GeGel "поверх GSM"). (это лучше нарисовать, т.к. я что-то косноязычно выражаюсь).

 

Для иллюстрации та же запись с разным битрейтом. Это без(!) Хаффмена, просто передаваемые спектры обновляются не при появлении каждой новой "особой точки", а через тактRESUL400.WAV, через два такта, через три, т.е. время обновления спектра становится не приблизительно 10 мсек изначально, а 20...30.. и т.д. RESUL200.WAV

RESUL150.WAV RESUL100.WAV

Из этих иллюстраций хорошо видно (слышно) как действительно сильно коррелирован речевой сигнал.

Изменено пользователем Милливольт

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

При таких крохотных битрейтах вышло великолепно! :rolleyes: Речь на грани разборчивости, зато в узкие каналы пролезет.

 

Единственно в пробе на 100 бит/с фрагменты слов проглатываются - это плохо.

 

А так в целом отлично!

 

Если спектр не обновляется, а только через такт: выходит вы просто дублируете синтез волны при декодировании или как?

Я так делал, получается голосовой джиттер. Фрейм у меня 22,5 мс.

 

Пробовал LSP брать через раз - нормально выходит, но если брать через 3 раза, то уже неприемлемо.

 

Мой мод кодека до 381 бит/с ещё можно уменьшить путём загрубления Pitch/Gain/BPV. LSP лучше не трогать.

Но качество пострадает, расборчивость на грани.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Единственно в пробе на 100 бит/с фрагменты слов проглатываются - это плохо.

В очередной раз спасибо за ценное замечание. Устранил.RESUL100.WAV

Но для стабильного потока без сжатия не получается 100 - только 120. Т.е. 1 раз в 100 мсек передается номер спектра (8 бит) плюс количество повторений в течение этого периода времени (4 бита).

Итого 12 бит за 100 мсек, соответственно 120 бит/сек. Звук грубоватый, конечно, не выйдет говорить в итальянском темпе, но для служебной связи, возможно, и будет приемлемо.

Вообще, рекорды битрейта - не самоцель. А вот передача поверх GSM должна показать кто есть ху.

Изменено пользователем Милливольт

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пробовал навернуть Рида-Соломона на пакет 6x6 байт - раздул до 8x8 байт (добавочные 2x8 8x2 и 2x2). Потребовалось увеличить битрейт модема в 2 раза. В итоге только хуже -много пакетов теряется в дальней зоне, а в ближней - с искажениями.

 

Видать, чутьё упало на 3дБ, поэтому пакетов нет, коррекция простаивает....

 

Так что Ваш интерес снижать битрейт - очень восстребованное ИМХО дело!

Изменено пользователем Mister_DSP

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В итоге только хуже -много пакетов теряется в дальней зоне, а в ближней - с искажениями.

 

У нас при разработке микромощной телеметрии для использования внутри зданий была та же самая история. Ничего из общеупотребительных средств не помогало. Но в итоге проблема решилась успешно.

Если это будет уместным, опишу подробно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...