Как конвертировать PCAP в AVI файл с видео и аудио по Gstreamer?

Мне нужно прочитать файл pcap и преобразовать его в файл AVI с аудио и видео с помощью gstreamer.

Если я попробую следующую команду, она будет работать только для создания видеофайла.

Только видео

gst-launch-0.10 -m -v filesrc location = h264Audio.pcap! pcapparse src-port = 44602 \! "application / x-rtp, payload = 96"! rtph264depay! "video / x-h264, ширина =352, высота =288, частота кадров =(фракция) 30/1" \! ffdec_h264! видеорейт! ffmpegcolorspace \! avimux! расположение файла files = testh264.avi

Только аудио

И если я использую следующую команду, она работает только для создания аудио файла.

gst-launch-0.10 -m -v filesrc location = h264Audio.pcap! pcapparse src-port = 7892 \! "application / x-rtp, payload = 8"! rtppcmadepay! алавдек! аудиоконвертировать! аудиосэмпл! avimux! местоположение файла file =test1audio.avi

Видео + Аудио

Когда я комбинирую две команды следующим образом, я обнаружил сообщение об ошибке - ОШИБКА: из элемента /GstPipeline:pipeline0/GstFileSrc:filesrc1: Внутренняя ошибка потока данных.

gst-launch-0.10 -m -v filesrc location = h264Audio.pcap! pcapparse src-port = 44602 \! "application / x-rtp, payload = 96"! rtph264depay! "video / x-h264, ширина =352, высота =288, частота кадров =(фракция) 30/1" \! ffdec_h264! видеорейт! ffmpegcolorspace \! очередь! Мультиплексор. \ filesrc location = h264Audio.pcap pcapparse src-port = 7892 \! "application / x-rtp, payload = 8"! rtppcmadepay! алавдек! аудиоконвертировать! аудиосэмпл! очередь! имя avimux =mux! местоположение файла file =testVideoAudio.avi

Пожалуйста, дайте мне несколько решений или предложений по этому вопросу. Заранее спасибо. Эрик

1 ответ

Вместо 2-го "filesrc! Pcapparse" дайте первому pcapparse имя =demux, удалите аргумент src-port и запустите 2-ю ветку из demux.

Другие вопросы по тегам