Сохраните полезные пакеты RTP vp8 в файл .webm

Я сохранил видеозвонок в файл .pcap с помощью Wireshark и хочу получить видео из RTP-пакетов. Тип полезной нагрузки пакетов RTP: vp8, Я мог узнать пакеты RTP vp8, используя библиотеку libpcap в C ++. Затем я сохранил содержимое всех пакетов RTP vp8 в файл. Но я не могу преобразовать эти необработанные данные vp8 в .mp4 с помощью ffmpeg. ffmpeg выдает ошибку при конвертации. Ошибка преобразования ffmpeg: При обработке ввода найдены неверные данные

Какие шаги, чтобы получить .mp4 или же .WebM видеофайл из vp8 RTP пакетов?

Редактировать: я мог бы получить необработанные данные VP8, исключая дескриптор полезной нагрузки VP8, заголовок полезной нагрузки и заголовок ключевого кадра. Затем я добавил заголовок ivf и заголовок кадра для каждого необработанного кадра vp8, в соответствии с документом ivf
Документ ЭКО

Но когда я хочу преобразовать свой файл ivf (output1) в output1.mp4 с помощью ffmpeg

ffmpeg -i output1 -c: v vp8 output1.mp4

Я получаю ошибки

ошибка преобразования

0

Решение

JanusGateway имеет функциональность для преобразования RTP (VP8 / VP9 / H264 / Opus) в (WebM / MP4). Он будет просто кодировать RTP в соответствующий контейнер (webm / mp4 / opus), транскодер не включен.

Ты можешь использовать ffmpeg перекодировать его в любой другой формат.

Короче говоря, Янус будет хранить Пакеты RTP в файле, добавляя заголовок префикса в каждом пакете. Затем мы можем использовать постпроцессор для преобразования RTP-пакетов vp8 в webm.

https://github.com/meetecho/janus-gateway/blob/master/postprocessing/pp-webm.c

Вы можете увидеть вживую демонстрация & Документация.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]