Как конвертировать 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.