Video Gstreamer-不播放mpeg ts的VAAPI解码

Video Gstreamer-不播放mpeg ts的VAAPI解码,video,gstreamer,Video,Gstreamer,我正在尝试使用gstreamervaapi插件在mpegts中播放视频 按照建议使用vaapi时 gst-launch-0.10 -v filesrc location=video.mp4 ! qtdemux ! vaapidecode ! vaapisink 当然,它正在发挥作用 此外,TS播放也适用于 GST_DEBUG="*:3" gst-launch-0.10 -v udpsrc buffer-size="5000" \ port=1234 multicast-group="239

我正在尝试使用gstreamervaapi插件在mpegts中播放视频

按照建议使用vaapi时

gst-launch-0.10 -v filesrc location=video.mp4 ! qtdemux ! vaapidecode ! vaapisink
当然,它正在发挥作用

此外,TS播放也适用于

GST_DEBUG="*:3" gst-launch-0.10 -v udpsrc buffer-size="5000"   \
port=1234 multicast-group="239.0.0.17"   \
caps="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264"   \
! .recv_rtp_sink_0 gstrtpbin ! rtpmp2tdepay   \
! mpegtsdemux ! ffdec_h264 ! xvimagesink
但是当我想替换
ffdec_h264时!xImageSink
vaapidecode!vaapisink
我没有收到任何视频,并且是使用
GST\u DEBUG=*:3记录的

我发现了类似的问题,建议使用
ffdemu\u mpegts
而不是
tsdemux
,因为
vaapidecode
需要水槽盖。但是,
ffdemu-mpegts
不再是
gstreamer-ffmpeg
包中的接缝,因为它以前有一些问题

但不管怎样,我看不到和你一样的错误

有没有办法发现caps需要什么
vaapidecode
并在demuxer无法做到这一点时手动添加它


或者是其他问题?

我发现这个问题最近受到了一些关注,下面是我目前所知道的

首先,我们需要转移到gstreamer1.x,有许多问题可以用新版本解决

我想到的另一件事是在解码器之前添加解析器

此外,Gstreamer解析器/解码器(不记得了)也有一个补丁,修复了播放h264流视频时的一些问题


我希望这会对你们有所帮助。

cmd行工具和相关问题最适合superuser.com,但这与编程有关,因为gst launch是唯一一个使开发应用程序更容易的测试工具,无论您使用它的原因是什么,它仍然是一个cmd行工具,问题中的编程内容很少(我看到了很多命令行参数和参数,没有任何代码)。我想说的是,在superuser.com上你会更幸运地得到答案。bash代码可以简单地翻译成python代码(
gst.parse_launch(“filesrc location=video.mp4!qtdemex!vaapidecode!vaapisink”)
),这显然会神奇地将问题变成一个值得stackoverflow的编程问题。