воспроизводить и записывать поток одновременно с помощью gstreamer

Привет всем, я пытаюсь играть и записывать mp3-супhttpsrc одновременно, но у меня нет хорошего результата, кто-нибудь может помочь?

gst-launch-1.0 -e filesrc location=/dev/fd/0 ! h264parse ! tee name=myvid \! queue ! decodebin ! xvimagesink sync=false  \ myvid. ! queue ! mux.video_0 \ alsasrc device="plughw:2,0" ! "audio/x-raw,rate=44100,channels=1,depth=24" ! audioconvert ! queue ! filesink location=/tmp/out.mp4

Спасибо


person user2936743    schedule 04.11.2013    source источник


Ответы (1)


Привет, ваш конвейер немного неправильный.

  1. Со звуком не происходит кодирования, поэтому вы сохраняете необработанный звук в контейнер.
  2. Мультиплексора нет, поэтому mux.video_0 не разрешается ни в какую площадку для любого элемента.

Вот конвейер без этих проблем:

gst-launch-1.0 -e mp4mux name=mux ! filesink location=/tmp/out.mp4 filesrc location=/dev/fd/0 ! h264parse ! tee name=myvid ! queue ! decodebin ! xvimagesink sync=false  myvid. ! queue ! mux.video_0 \ alsasrc device="plughw:2,0" ! "audio/x-raw,rate=44100,channels=1,depth=24" ! audioconvert ! queue ! lame ! mux.audio_0 
person Zaheer Merali    schedule 07.11.2013