8(499)-709-97-83
Работаем с 8:00 до 19:00

Декодирования G.729 с помощью Wireshark

  • 09 октября 2014

Благодаря огромным возможностям для диагностики и устранения сетевых проблем, Wireshark,

стал бесценным инструментом для системных администраторов и VoIP инженеров. С помощью Wireshark можно без проблем воспроизвести G.711 кодек ,но воспроизвести G.729 кодек не получиться.
Можно конечно воспользоваться платными программами , например : Hammer Call Analyzer , или воспользоваться online декодером на cайте :asteriskguru
Попробуем с помощью Wireshark, VoiceAge G.729 decoder и Audacity декодировать аудиопоток, кодированный с использованием G.729 и послушать его.

 

Эта инструкции основаны на оригинальной инструкции, приведенные ниже, найденных на Wireshark Wiki.
В составлении это инструкции использовался материал из статей:

http://wiki.wireshark.org/HowToDecodeG729
http://wiki.wireshark.org/VoIP_calls
http://wiki.wireshark.org/RTP_statistics

Первое что нам предстоит сделать, это открыть .pcap файл содержащий RTP пакеты , который вы хотите декодировать. В примере ниже пакеты были захвачены Wireshark на сервере ,где стоит наша АТС. Щелкните по одному из RTP и перейдите в меню Telephony –> RTP –> Stream Analysis.

В открывшимся окне кликаем на любой пакет(обратите внимание, что Wireshark будет отображать полезную информацию о потоке, включая джиттер, количество потерянных пакетов и продолжительность потока) и нажимаем “Save Payload…

В открывшемся окне выбираем Forma=.raw, Channel = forward и называем файл test-f.raw.
Если требуется декодировать два потока, то повторяем процедуру изменив Channel = reverse и поменяв название файла.

Нажимаем на кнопку “Save payload” и далее выбираем Forma:.raw, даем название файлу и место ,куда сохранить.

После того как raw файл был извлечен из RTP потока, Wireshark нам больше не понадобиться.
Дальше нам необходимо конвертировать наш raw в pcm с помощью VoiceAge.
Скачать VoiceAge можно по адресу http://www.voiceage.com/openinit_g729.php
Если Вы не нашли exe на этом сайте, то попробуйте это http://www.findthatzip-file.com/search-7842799-hZIP/winrar-winzip-download-g729.zip.htm

Открываем командную строку и в ней переходим в распакованную папку.

Синтаксис декодера для преобразования raw в pcm выглядит следующим образом.
va_g729_decoder.exe

В нашем случае декодируем два наших файла raw в pcm
va_g729_decoder.exe test-f.raw test-f.pcm
va_g729_decoder.exe test-r.raw test-r.pcm

После декодирования открываем программу Audacity (http://audacity.sourceforge.net/?lang=ru). Далее Файл – Импортировать – Звуковой файл без заголовка(Raw) и выбираем test-f.pcm

Далее нужно сделать так, как показано на рисунке ниже , и повторить эту процедуру со вторым нашем фалом(test-r.pcm)

После всего проделанного можно послушать оба потока и сохранить в удобном для вас формате( например mp3)

Если вы в статье нашли ошибки или несоответствия, мы будем благодарны, если вы напишите нам о них в комментариях.


 
Powered by SEO CMS ver.: 23.1 TOP 2 (opencartadmin.com)
 
Метки: Wireshark, G729