gstreamer与x264enc复用

我正试图用gstreamer将DVD转换成mkv文件。 我使用的管道是:

gst-launch -evv multifilesrc location="VTS_01_%d.VOB" index=1 ! dvddemux name=demuxer 
 matroskamux name=mux ! filesink location=test.mkv 
 demuxer.current_video ! queue ! mpeg2dec ! x264enc ! mux. 
 demuxer.current_audio ! queue ! ffdec_ac3 ! lamemp3enc ! mux.

不幸的是,管道并没有超出预卷。 当我用例如ffenc_mpeg4替换x264enc时,一切正常。


这可能工作:

gst-launch filesrc location=file.vob 
  ! queue 
  ! dvddemux name=demuxer matroskamux name=mux 
  ! queue 
  ! filesink location=test.mkv demuxer.current_video
  ! queue 
  ! ffdec_mpeg2video 
  ! ffdeinterlace  
  ! x264enc 
  ! 'video/x-h264, width=720, height=576, framerate=25/1' 
  ! mux.  demuxer.current_audio 
  ! queue max-size-bytes=0 max-size-buffers=0 max-size-time=10000000000 
  ! ffdec_ac3 
  ! audioconvert 
  ! lamemp3enc 
  ! mux.

字节流应该是0--对于此前的抱歉

您需要在x264enc之后提供视频的上限,并且您需要增加音频队列的限制以处理x264enc中的延迟

这两个更改使管道在我的末端运行。

去隔行器是可选的,但对于隔行扫描内容来说是可取的。

链接地址: http://www.djcxy.com/p/43971.html

上一篇: gstreamer muxing with x264enc

下一篇: How to capture only video from audio