尝试gst-play
在 22.04 盒子中播放 MPEG-TS 流,我得到:
Missing decoder: MPEG-2 Transport Stream (video/mpegts, systemstream=(boolean)true, packetsize=(int)188)
而它在另一个版本中运行良好(也是 22.04)。
在它起作用的地方,我得到:
$ gst-inspect-1.0 mpegtsdemux
Plugin Details:
Name mpegtsdemux
Description MPEG TS demuxer
Filename /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsdemux.so
Version 1.20.3
License LGPL
Source module gst-plugins-bad
Source release date 2022-06-15
Binary package GStreamer Bad Plugins (Ubuntu)
Origin URL https://launchpad.net/distros/ubuntu/+source/gst-plugins-bad1.0
tsdemux: MPEG transport stream demuxer
tsparse: MPEG transport stream parser
2 features:
+-- 2 elements
而不存在的地方:
$ gst-inspect-1.0 mpegtsdemux
No such element or plugin 'mpegtsdemux'
但据我所知,该插件应该也在这里可用。文件在那里
$ls -l /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsdemux.so
-rw-r--r-- 1 root root 197488 Jun 29 2022 /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsdemux.so
并且安装了“坏”的插件包:
$ apt list gstreamer1.0-plugins-bad
Listing... Done
gstreamer1.0-plugins-bad/jammy-updates,now 1.20.3-0ubuntu1 amd64 [installed,automatic]
gstreamer1.0-plugins-bad/jammy-updates 1.20.3-0ubuntu1 i386
可能缺少什么?我该如何刷新插件数据库/注册表/等等?我试过了,apt-get install --reinstall gstreamer1.0-plugins-bad
但没有明显的效果。