2012-04-18 3 views
1

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

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

Только видео

GST-ответно-0,10 -m -v filesrc место = h264Audio.pcap! pcapparse src-port = 44602 \ ! "приложение/x-rtp, полезная нагрузка = 96"! rtph264depay! "video/x-h264, width = 352, height = 288, framerate = (доля) 30/1" \ ! ffdec_h264! видеоролик! ffmpegcolorspace \ ! avimux! filesink место = testh264.avi

Только аудио

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

gst-launch-0.10 -m -v filesrc location = h264Audio.pcap! pcapparse src-port = 7892 \ ! «application/x-rtp, payload = 8»! rtppcmadepay! alawdec! аудиоконвертер! audioresample! avimux! filesink расположение = test1audio.avi

видео + аудио

Когда я объединить две команды следующим образом, я сталкивался сообщение об ошибке - ERROR: от элемента/GstPipeline: pipeline0/GstFileSrc: filesrc1: Внутренний потока данных ошибка.

gst-launch-0.10 -m -v filesrc location = h264Audio.pcap! pcapparse src-port = 44602 \ ! "приложение/x-rtp, полезная нагрузка = 96"! rtph264depay! "video/x-h264, width = 352, height = 288, framerate = (доля) 30/1" \ ! ffdec_h264! видеоролик! ffmpegcolorspace \ ! очередь ! Мультиплексор. \ filesrc location = h264Audio.pcap pcapparse src-port = 7892 \ ! «application/x-rtp, payload = 8»! rtppcmadepay! alawdec! аудиоконвертер! audioresample! очередь ! avimux name = mux! filesink location = testVideoAudio.avi

Просьба дать мне несколько решений или предложений по этой проблеме. Спасибо заранее. Eric

ответ

1

Вместо второго «filesrc! Pcapparse» дать первому pcapparse имя = demux, отбросить аргумент src-port и запустить вторую ветку из demux.