2015-05-14 4 views
1

У меня есть этот файл захвата (pcap) с RTP-пакетами, кажется, закодирован opus. В wirehark анализировал поток и сохранялся как сырой файл. Теперь у меня есть .raw файл аудио. С помощью инструмента opus от http://www.opus-codec.org/downloads/ Я не могу его декодировать прямо в wav, потому что файл является сырым, а не .opus. Я не могу закодировать его в .opus, потому что эти необработанные данные являются извлечением уже закодированного потока. Мне просто нужно воспроизвести этот голос. Любые предложения Пожалуйста,декодирование .raw voip data to opus

+0

См. Также: http://www.giacomovacca.com/2016/02/extracting-opus-from-pcap-file-into.html –

ответ

1

Насколько я знаю, вы не сможете декодировать поток Opus, извлеченный таким образом - информация кадрирования теряется. Вам нужно либо написать модуль Wireshark, который мог бы декодировать opus, либо написать другой инструмент для извлечения потока из RTP в другой контейнер (обычно используется OGG).

http://xiph.org/~giles/2012/rtpopus.c похоже инструмент, который вам нужен.

+0

Да. Думая же сейчас. Но как насчет использования rtptools (rtpplayer). Есть идеи ? – Shasi

1

Старый вопрос, но если кому-то нужен для декодирования Opus RTP-пакеты, вот решение:

PJSIP поставляется с инструментом (pjsip-apps/src/samples/pcaputil.c), что делает именно это. Он компилируется по умолчанию, просто убедитесь, что у вас установлен libopus-dev, прежде чем вы создадите PJSIP. Просто загрузите файл pcap с пакетами RTP в pcaputil и укажите кодек в командной строке (например, «opus/48000»). Вы получите декодированный звук в виде файла WMA PCM.

pcaputil также может расшифровывать SRTP-пакеты (если задан ключ), однако я не мог заставить это работать, а вместо этого использовал srtp-decrypt для дешифрования пакетов, а затем Wireshark для преобразования выходного файла .txt обратно в .pcap для подачи на Pcappil PJSIP (см. Также https://www.acritelli.com/hacking-voip-decrypting-sdes-protected-srtp-phone-calls/).

Смежные вопросы