2013-08-06 39 views
0

我有一個工作GST-管道下水0.10:的Gstreamer管道發揮MPEGTS文件的工作在0.10版本,但不是1.0

gst-launch-0.10 \ 
    filesrc location=c:/prog4.mpg \ 
    ! tsdemux name=dem \ 
    ! queue \ 
    ! ac3parse \ 
    ! a52dec \ 
    ! audioconvert \ 
    ! audioresample \ 
    ! autoaudiosink \ 
    dem. \ 
    ! queue \ 
    ! mpegvideoparse \ 
    ! mpeg2dec \ 
    ! autovideosink 

但是在1.0版本相同的管道噴出的錯誤:

Setting pipeline to PAUSED ... 
Pipeline is PREROLLING ... 
Redistribute latency... 
ERROR: from element /GstPipeline:pipeline0/GstTSDemux:dem: Internal data stream error. 
Additional debug info: 
mpegtsbase.c(1639): mpegts_base_loop(): /GstPipeline:pipeline0/GstTSDemux:dem: 
stream stopped, reason not-negotiated 
ERROR: pipeline doesn't want to preroll. 
Setting pipeline to NULL ... 
Freeing pipeline ... 

我也嘗試過使用playbin,奇怪的是,它給出了同樣的錯誤。我該如何解決?

編輯:好的,所以我已經發現它是導致麻煩的視頻部分。如果我隔離音頻和視頻部分,音頻正常工作!這是造成麻煩的原因:

gst-launch-1.0 filesrc location=/home/rubndsouza/prog4.mpg \ 
! tsdemux ! queue ! mpegvideoparse ! mpeg2dec ! autovideosink 

任何幫助,將不勝感激。謝謝!

回答

1

我認爲這是固定在新版本的gstreamer。 在我的1.2.3版本中,我至少不能重現這一點。

+0

+1爲了付出努力,但這是很久以前的事了,我現在沒有安裝它來測試它。我會盡快回復,但謝謝! – rubndsouza

相關問題