Преобразование файла Raw g722 в формат .wav с SOX

4935
Joel Lewis

Я пытаюсь устранить некоторые проблемы с VOIP и собираю пакеты для вызовов. Однако все мои звонки закодированы в g722, и у меня возникли проблемы с расшифровкой.

Я извлек полезную нагрузку RTP, и в настоящее время он находится в виде необработанного файла. Единственная информация, которую я могу найти, это ссылка:

https://ask.wireshark.org/questions/26607/coverting-g722-payload-to-wav

Но я не могу понять, как получить g722 raw в пригодный для использования волновой файл. Любые точки в правильном направлении будут полезны.

0
Я тоже был на том же пути. Я обнаружил, что SOX не поддерживает g722! В итоге мне пришлось написать собственный конвертер :( Shane Powell 8 лет назад 0
@ShanePowell Есть ли шанс, которым вы хотите поделиться с миром? Joel Lewis 8 лет назад 0

3 ответа на вопрос

2
Peter Cox

FFMPEG works well, but the suggested arguments do not work. I used:

ffmpeg -f g722 -i input.raw -acodec pcm_s16le -ar 16000 output.wav 

Options applying to input files should precede the file name, using .wav on the output file defines the format.

1
Shane Powell

As per my comment, SOX doesn't support g722.

I ended up creating my own converter using internal codec support within the company I work for. For this reason I can't release that version.

I then re-wrote it using the open source library NAudio.

You can find it here: https://github.com/shanepowell/G722Converter

You can download a compiled version here: https://github.com/shanepowell/G722Converter/releases/latest

It requries the .net framework v4.5 to be installed to run.

1
user1772710

FFMPEG может сделать работу также

ffmpeg -i g722_input_file.raw -f g722 -acodec pcm_s16le -ar 16000 out.pcm