我已通过以下链接使用.msi文件在Windows上安装了GStreamer-
gstreamer-1.0-x86-1.2.0.msi
和
gstreamer-1.0-devel-x86-1.2.0.msi
我可以运行以下命令并播放.webm视频文件,而不会出现任何问题。 gst-launch-1.0 playbin uri="file:///D:/gstreamer_sample_media/sintel_trailer-480p.webm"
但是,当我尝试使用以下命令播放测试.mts文件时:
gst-launch-1.0 playbin uri="file:///D:/MyTestMedia/Test1.mts"
出现以下错误:
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Missing element: MPEG-2 Transport Stream demuxer
WARNING: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: No dec
oder available for type 'video/mpegts, systemstream=(boolean)true, packetsize=(i
nt)192'.
Additional debug info:
gsturidecodebin.c(930): unknown_type_cb (): /GstPlayBin:playbin0/GstURIDecodeBin
:uridecodebin0
ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstDecode
Bin:decodebin0: Your GStreamer installation is missing a plug-in.
Additional debug info:
gstdecodebin2.c(3896): gst_decode_bin_expose (): /GstPlayBin:playbin0/GstURIDeco
deBin:uridecodebin0/GstDecodeBin:decodebin0:
no suitable plugins found
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...
我知道要播放.mts文件,我必须安装gst-plugins-bad-1.2.0插件,并且缺少“MPEG-2 Transport Stream demuxer”元素。
问题是我不知道如何在Windows 7或Windows 8 OS(32或64位版本)中执行此操作。
我下载了以下文件
gst-plugins-base-1.2.0,
gst-plugins-good-1.2.0,
gst-plugins-bad-1.2.0,
gst-plugins-ugly-1.2.0。
但是用于Windows的预编译的.dll文件不在其中。我也尝试在Windows上编译它们,但是对于gst-plugins-base中的某些项目才能够做到这一点,并且似乎编译gst-plugins-bad需要很多工作,而我现在无法这样做。
有没有链接为Windows下载gst-plugins-bad的pre-build .dll?如果我们将它们下载到必须复制它们的位置,以便gst-launch-1.0.exe可以识别它们?是否仅需要将它们复制到安装了gstreamer的
E:\gstreamer\1.0\x86\bin
中?先感谢您。
最佳答案
您可能安装了gstreamer SDK的'典型'。
重新安装并确保在安装之前选择'完成'功能。这应该包括gst-plugins-bad软件包。
关于windows - 如何在Windows上安装具有 “MPEG-2 Transport Stream demuxer”元素的GStreamer插件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19066262/