Здравствуйте, Евгений Музыченко, Вы писали:
SK>>Большинство кодеков портят DTMF.
ЕМ>Как именно портят? Я работаю со звуком не один десяток лет, и не представляю, как можно испортить тоновые посылки с частотами до 2 кГц, не испортив при этом речь.
Причины те же, по которым VoIP не работали голосовые модемы и факсы. Детали можно почитать на форумах телефонистов, за период широкого начала распространения IP телефонии 2000-2010 года.
ЕМ>Ну, или алгоритм распознавания посылок должен быть предельно дубовый, вроде поиска чистых фрагментов волны на фоне полной тишины, вместо анализа спектра.
Сдвиг частот +-5% человеческим ухом воспринимается нормально, а детектор двухтональной мультчастотной модуляции детектит
запрещенные некоректные сочетания. Например ждет "*472#58", получает "52A10D5" и конечно такая посылка молча отбрасывается.
ЕМ>>>Попищал — не срабатывает.
SK>>Но сомнения остались?
ЕМ>А куда им деваться?
Я ж пока не понял, в каком виде оно попадает (если вообще попадает) к тому роботу, что отвечает на том конце.
SK>>До такой глубины анализа не доходил, ибо бессмысленно. портится оно на стороне мне не подконтрольной.
ЕМ>Стоило бы посмотреть, что именно приходит на Вашу сторону, хотя бы ради интереса. А на слух это как звучало?
Звучало
не нормально, но у меня не музыкальный слух.
ЕМ>>>Попробовал его — ничто не меняется.
SK>>При этом другие кодеки нужно запретить.
ЕМ>Зачем? Клиент отображает использование именно PCMA, на другие кодеки не переходит.
У меня нет веры в честность sip клиентов.
SK>>А что в дебаг логах sip клиента?
ЕМ>Если DTMF настроен на "протокольный" режим — пишет, что отправляет соответствующие цифры. Если in-band — ничего не пишет.
ЕМ>В аудиозаписях звонков тонов DTMF нет даже в режиме in-band. То есть, код клиентов ленится их туда замешивать.
Клиент может не писать часть потока.
ЕМ>Сейчас попробовал в последнем MicroSIP под виндой — такая же хрень, в том числе с единственным кодеком G.711 a-law.
ЕМ>Какой-то весь этот клиентский софт явно кривой.
Весь SIP кривой, особенно кривой когда один из концов не под твоим контролем.
>>wireshark поанализировать сессию. он автоматически разложит на sip диалог и медиатрафик (если не шифрован) можно послушать.
ЕМ>Руки дойдут — попробую.