gstreamer muxing与x264enc

Pau*_*aet 0 gstreamer x264

我正在尝试使用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时,一切正常..

av5*_*501 5

这可能有效:

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.
Run Code Online (Sandbox Code Playgroud)

字节流应该是0 - 对不起早一点

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

这两个变化让管道在我的最后运行.

去隔行扫描器是可选的,但对于隔行内容是理想的.