Re[6]: DTMF через SIP
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 17.04.25 12:24
Оценка:
Здравствуйте, Stanislaw K, Вы писали:

SK>Большинство кодеков портят DTMF.


Как именно портят? Я работаю со звуком не один десяток лет, и не представляю, как можно испортить тоновые посылки с частотами до 2 кГц, не испортив при этом речь.

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

SK>на стороне слушающей даже костыль придумали опцию "relax dtmf" расширяющую критерии детекции тонов (частоту/длительность).


Подозреваю, что ее придумали как раз для крайне дубовых алгоритмов, чтоб не переделывать их.

ЕМ>>Попищал — не срабатывает.


SK>Но сомнения остались?


А куда им деваться? Я ж пока не понял, в каком виде оно попадает (если вообще попадает) к тому роботу, что отвечает на том конце.

SK>До такой глубины анализа не доходил, ибо бессмысленно. портится оно на стороне мне не подконтрольной.


Стоило бы посмотреть, что именно приходит на Вашу сторону, хотя бы ради интереса. А на слух это как звучало?

ЕМ>>Попробовал его — ничто не меняется.


SK>При этом другие кодеки нужно запретить.


Зачем? Клиент отображает использование именно PCMA, на другие кодеки не переходит.

SK>А что в дебаг логах sip клиента?


Если DTMF настроен на "протокольный" режим — пишет, что отправляет соответствующие цифры. Если in-band — ничего не пишет.

В аудиозаписях звонков тонов DTMF нет даже в режиме in-band. То есть, код клиентов ленится их туда замешивать.

Сейчас попробовал в последнем MicroSIP под виндой — такая же хрень, в том числе с единственным кодеком G.711 a-law.

Какой-то весь этот клиентский софт явно кривой.

>wireshark поанализировать сессию. он автоматически разложит на sip диалог и медиатрафик (если не шифрован) можно послушать.


Руки дойдут — попробую.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.