GStreamer:播放mpeg2 [英] GStreamer: Play mpeg2

查看:271
本文介绍了GStreamer:播放mpeg2的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用gstreamer播放本地mpeg2 TS文件:

I'm trying to play a local mpeg2 TS file with gstreamer with this:

gst-launch  filesrc location=open_season.mpg ! mpeg2dec ! xvimagesink

第一帧显示为大块彩色,然后停止.对我在这里做错什么有任何想法吗? -TS文件的处理方式是否与此不同?

The first frame appears as big blocks of color and then stops. Any thoughts about what I'm doing wrong here? Does a -TS file need to be handled differently than this?

这是日志:

$ gst-launch  filesrc location=open_season.mpg ! mpeg2dec ! xvimagesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ....
WARNING: from element /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0: Internal data flow problem..
Additional debug info:.
gstbasesink.c(3492): gst_base_sink_chain_unlocked (): /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0:
Received buffer without a new-segment. Assuming timestamps start from 0.
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 6866757291 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ..

推荐答案

我认为首先您应该首先尝试在playbin2的帮助下播放文件.如果您能够播放它,那么您应该使用encodebin2,调试其输出并相应地构建您的管道.

I think first you should first try to play the file with the help of playbin2. If you are able to play it then u should use decodebin2 ,debug its output and construct your pipeline accordingly.

playbin2的语法如下:-

The syntax for playbin2 is as follows :-

gst-launch playbin2 uri = file:///home/user1031040/Desktop/file.mpg

decodebin2的语法如下:-

The syntax for decodebin2 is as follows:-

gst-launch filesrc location = file.mpg ! decodebin2 ! autovideosink

这篇关于GStreamer:播放mpeg2的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆