linux - GStreamer 安装缺少插件

标签 linux qt qml gstreamer m3u8

我希望有人可以帮助解决这个问题,过去两天一直在寻找解决方案。

简单描述一下这个问题:我正在尝试制作一个简单的 qt5.7 应用程序,它将流式传输 m3u8(使用 Qt Creator(社区))。但是当我尝试运行它时,我得到一个

Warning: "No decoder available for type 'application/x-hls'."
Error: "Your GStreamer installation is missing a plug-in."

“gst-inspect | grep hls” 返回:typefindfunctions:application/x-hls:m3u8

此时我不知道我会错过哪个插件,因为我已经浏览了完整的 GStreamer 插件列表并逐个添加了插件。 据我的搜索,有些人通过安装坏/丑陋的插件得到了修复。有人说QT5仍然使用gstreamer0.10,但新的linux版本使用1.0(此时已丢失)。我尝试设置一个标志来强制 GST_VERSION=1.0,但没有工作,或者我做错了什么(我使用了 qmake GST_VERSION=1.0 命令)。另外,我可以在 vlc 中播放视频。 我完全陷入困境,不知道该怎么办。

应用程序代码:

import QtQuick 2.7
import QtQuick.Window 2.2
import QtMultimedia 5.7

Window {
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")

    Item {
        width: 640
        height: 480

        MediaPlayer {
            id: player
            source: "http://playertest.longtailvideo.com/adaptive/wowzaid3/chunklist_w249832652.m3u8"
        }

        VideoOutput {
            anchors.fill: parent
            source: player
        }

        Component.onCompleted: {
            player.play();
        }
    }
}

操作系统:

DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=18
DISTRIB_CODENAME=sarah
DISTRIB_DESCRIPTION="Linux Mint 18 Sarah"
NAME="Linux Mint"
VERSION="18 (Sarah)"
ID=linuxmint
ID_LIKE=ubuntu
PRETTY_NAME="Linux Mint 18"
VERSION_ID="18"
HOME_URL="http://www.linuxmint.com/"
SUPPORT_URL="http://forums.linuxmint.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/linuxmint/"
UBUNTU_CODENAME=xenial

gstreamer 插件列表:

ii  gir1.2-gstreamer-0.10                        0.10.36-1.5ubuntu1                         amd64        Description: GObject introspection data for the GStreamer library
ii  gir1.2-gstreamer-1.0                         1.8.2-1~ubuntu1                            amd64        GObject introspection data for the GStreamer library
ii  gstreamer-qapt                               3.0.2-0ubuntu1.1                           amd64        GStreamer plugin to install codecs using QApt
ii  gstreamer-tools                              0.10.36-1.5ubuntu1                         amd64        Tools for use with GStreamer
ii  gstreamer0.10-alsa:amd64                     0.10.36-2                                  amd64        GStreamer plugin for ALSA
ii  gstreamer0.10-doc                            0.10.36-1.5ubuntu1                         all          GStreamer core documentation and manuals
ii  gstreamer0.10-ffmpeg:amd64                   0.10.13-5ubuntu1~wily                      amd64        FFmpeg plugin for GStreamer
ii  gstreamer0.10-ffmpeg-dbg:amd64               0.10.13-5ubuntu1~wily                      amd64        FFmpeg plugin for GStreamer (debug symbols)
ii  gstreamer0.10-gconf:amd64                    0.10.31-3+nmu4ubuntu2~gcc5.1               amd64        GStreamer plugin for getting the sink/source information from GConf
ii  gstreamer0.10-gnomevfs:amd64                 0.10.36-2                                  amd64        GStreamer plugin for GnomeVFS
ii  gstreamer0.10-nice:amd64                     0.1.13-0ubuntu2                            amd64        ICE library (GStreamer 0.10 plugin)
ii  gstreamer0.10-plugins-base:amd64             0.10.36-2                                  amd64        GStreamer plugins from the "base" set
ii  gstreamer0.10-plugins-base:i386              0.10.36-2                                  i386         GStreamer plugins from the "base" set
ii  gstreamer0.10-plugins-base-apps              0.10.36-2                                  amd64        GStreamer helper programs from the "base" set
ii  gstreamer0.10-plugins-base-dbg:amd64         0.10.36-2                                  amd64        GStreamer plugins from the "base" set
ii  gstreamer0.10-plugins-base-doc               0.10.36-2                                  all          GStreamer documentation for plugins from the "base" set
ii  gstreamer0.10-plugins-good:amd64             0.10.31-3+nmu4ubuntu2~gcc5.1               amd64        GStreamer plugins from the "good" set
ii  gstreamer0.10-plugins-good:i386              0.10.31-3+nmu4ubuntu2~gcc5.1               i386         GStreamer plugins from the "good" set
ii  gstreamer0.10-plugins-good-dbg:amd64         0.10.31-3+nmu4ubuntu2~gcc5.1               amd64        GStreamer plugins from the "good" set
ii  gstreamer0.10-plugins-good-doc               0.10.31-3+nmu4ubuntu2~gcc5.1               all          GStreamer documentation for plugins from the "good" set
ii  gstreamer0.10-pulseaudio:amd64               0.10.31-3+nmu4ubuntu2~gcc5.1               amd64        GStreamer plugin for PulseAudio
ii  gstreamer0.10-qapt                           3.0.2-0ubuntu1.1                           all          transitional dummy package
ii  gstreamer0.10-tools                          0.10.36-1.5ubuntu1                         amd64        Tools for use with GStreamer
ii  gstreamer0.10-x:amd64                        0.10.36-2                                  amd64        GStreamer plugins for X11 and Pango
ii  gstreamer0.10-x:i386                         0.10.36-2                                  i386         GStreamer plugins for X11 and Pango
ii  gstreamer1.0-alsa:amd64                      1.8.2-1ubuntu0.1                           amd64        GStreamer plugin for ALSA
ii  gstreamer1.0-clutter                         2.0.18-1                                   amd64        Clutter PLugin for GStreamer 1.0
ii  gstreamer1.0-clutter-3.0                     3.0.18-1                                   amd64        Clutter PLugin for GStreamer 1.0
ii  gstreamer1.0-crystalhd                       1:0.0~git20110715.fdd2f19-11build1         amd64        Crystal HD Video Decoder (GStreamer plugin)
ii  gstreamer1.0-doc                             1.8.2-1~ubuntu1                            all          GStreamer core documentation and manuals
ii  gstreamer1.0-dvswitch                        0.1.1-1                                    amd64        GStreamer plugin source from DVswitch
ii  gstreamer1.0-espeak                          0.4.0-1                                    amd64        GStreamer plugin for eSpeak speech synthesis
ii  gstreamer1.0-fluendo-mp3:amd64               0.10.32.debian-1                           amd64        Fluendo mp3 decoder GStreamer 1.0 plugin
ii  gstreamer1.0-hybris:i386                     1.8.2-1ubuntu0.1                           i386         GStreamer plugins from hybris
ii  gstreamer1.0-libav:amd64                     1.8.2-1~ubuntu1                            amd64        libav plugin for GStreamer
ii  gstreamer1.0-libav-dbg:amd64                 1.8.2-1~ubuntu1                            amd64        libav plugin for GStreamer (debug symbols)
ii  gstreamer1.0-nice:amd64                      0.1.13-0ubuntu2                            amd64        ICE library (GStreamer plugin)
ii  gstreamer1.0-packagekit                      0.8.17-4ubuntu6~gcc5.4ubuntu1.1            amd64        GStreamer plugin to install codecs using PackageKit
ii  gstreamer1.0-plugins-bad:amd64               1.8.2-1ubuntu0.1                           amd64        GStreamer plugins from the "bad" set
ii  gstreamer1.0-plugins-bad-dbg:amd64           1.8.2-1ubuntu0.1                           amd64        GStreamer plugins from the "bad" set (debug symbols)
ii  gstreamer1.0-plugins-bad-doc                 1.8.2-1ubuntu0.1                           all          GStreamer documentation for plugins from the "bad" set
ii  gstreamer1.0-plugins-bad-faad:amd64          1.8.2-1ubuntu0.1                           amd64        GStreamer faad plugin from the "bad" set
ii  gstreamer1.0-plugins-bad-videoparsers:amd64  1.8.2-1ubuntu0.1                           amd64        GStreamer videoparsers plugin from the "bad" set
ii  gstreamer1.0-plugins-base:amd64              1.8.2-1ubuntu0.1                           amd64        GStreamer plugins from the "base" set
ii  gstreamer1.0-plugins-base-apps               1.8.2-1ubuntu0.1                           amd64        GStreamer helper programs from the "base" set
ii  gstreamer1.0-plugins-base-dbg:amd64          1.8.2-1ubuntu0.1                           amd64        GStreamer plugins from the "base" set
ii  gstreamer1.0-plugins-base-doc                1.8.2-1ubuntu0.1                           all          GStreamer documentation for plugins from the "base" set
ii  gstreamer1.0-plugins-good:amd64              1.8.2-1ubuntu0.1                           amd64        GStreamer plugins from the "good" set
ii  gstreamer1.0-plugins-good-dbg:amd64          1.8.2-1ubuntu0.1                           amd64        GStreamer plugins from the "good" set
ii  gstreamer1.0-plugins-good-doc                1.8.2-1ubuntu0.1                           all          GStreamer documentation for plugins from the "good" set
ii  gstreamer1.0-plugins-ugly:amd64              1.8.2-1ubuntu0.1                           amd64        GStreamer plugins from the "ugly" set
ii  gstreamer1.0-plugins-ugly-amr:amd64          1.8.2-1ubuntu0.1                           amd64        GStreamer plugins from the "ugly" set
ii  gstreamer1.0-plugins-ugly-dbg:amd64          1.8.2-1ubuntu0.1                           amd64        GStreamer plugins from the "ugly" set (debug symbols)
ii  gstreamer1.0-plugins-ugly-doc                1.8.2-1ubuntu0.1                           all          GStreamer documentation for plugins from the "ugly" set
ii  gstreamer1.0-pocketsphinx:amd64              0.8.0+real5prealpha-1ubuntu2               amd64        Speech recognition tool - gstreamer plugin
ii  gstreamer1.0-pulseaudio:amd64                1.8.2-1ubuntu0.1                           amd64        GStreamer plugin for PulseAudio
ii  gstreamer1.0-tools                           1.8.2-1~ubuntu1                            amd64        Tools for use with GStreamer
ii  gstreamer1.0-vaapi:amd64                     1.8.2-1~ubuntu2                            amd64        VA-API plugins for GStreamer
ii  gstreamer1.0-vaapi-doc                       1.8.2-1~ubuntu2                            all          GStreamer VA-API documentation and manuals
ii  gstreamer1.0-x:amd64                         1.8.2-1ubuntu0.1                           amd64        GStreamer plugins for X11 and Pango
ii  libcanberra-gstreamer:amd64                  0.30-2.1ubuntu1                            amd64        GStreamer backend for libcanberra
ii  libgstreamer-ocaml                           0.2.0-2build2                              amd64        OCaml interface to the gstreamer library -- runtime files
ii  libgstreamer-ocaml-dev                       0.2.0-2build2                              amd64        OCaml interface to the gstreamer library -- development files
ii  libgstreamer-plugins-bad1.0-0:amd64          1.8.2-1ubuntu0.1                           amd64        GStreamer development files for libraries from the "bad" set
ii  libgstreamer-plugins-bad1.0-0:i386           1.8.2-1ubuntu0.1                           i386         GStreamer development files for libraries from the "bad" set
ii  libgstreamer-plugins-bad1.0-dev              1.8.2-1ubuntu0.1                           amd64        GStreamer development files for libraries from the "bad" set
ii  libgstreamer-plugins-base0.10-0:amd64        0.10.36-2                                  amd64        GStreamer libraries from the "base" set
ii  libgstreamer-plugins-base0.10-0:i386         0.10.36-2                                  i386         GStreamer libraries from the "base" set
ii  libgstreamer-plugins-base0.10-dev            0.10.36-2                                  amd64        GStreamer development files for libraries from the "base" set
ii  libgstreamer-plugins-base1.0-0:amd64         1.8.2-1ubuntu0.1                           amd64        GStreamer libraries from the "base" set
ii  libgstreamer-plugins-base1.0-0:i386          1.8.2-1ubuntu0.1                           i386         GStreamer libraries from the "base" set
ii  libgstreamer-plugins-base1.0-dev             1.8.2-1ubuntu0.1                           amd64        GStreamer development files for libraries from the "base" set
ii  libgstreamer-plugins-good1.0-0:amd64         1.8.2-1ubuntu0.1                           amd64        GStreamer development files for libraries from the "good" set
ii  libgstreamer-plugins-good1.0-dev             1.8.2-1ubuntu0.1                           amd64        GStreamer development files for libraries from the "good" set
ii  libgstreamer0.10-0:amd64                     0.10.36-1.5ubuntu1                         amd64        Core GStreamer libraries and elements
ii  libgstreamer0.10-0:i386                      0.10.36-1.5ubuntu1                         i386         Core GStreamer libraries and elements
ii  libgstreamer0.10-0-dbg:amd64                 0.10.36-1.5ubuntu1                         amd64        Core GStreamer libraries and elements
ii  libgstreamer0.10-dev                         0.10.36-1.5ubuntu1                         amd64        GStreamer core development files
ii  libgstreamer1.0-0:amd64                      1.8.2-1~ubuntu1                            amd64        Core GStreamer libraries and elements
ii  libgstreamer1.0-0:i386                       1.8.2-1~ubuntu1                            i386         Core GStreamer libraries and elements
ii  libgstreamer1.0-0-dbg:amd64                  1.8.2-1~ubuntu1                            amd64        Core GStreamer libraries and elements
ii  libgstreamer1.0-dev                          1.8.2-1~ubuntu1                            amd64        GStreamer core development files
ii  libgstreamermm-1.0-0v5:amd64                 1.4.3+dfsg-5                               amd64        C++ wrapper library for GStreamer (shared libraries)
ii  libgstreamermm-1.0-dev:amd64                 1.4.3+dfsg-5                               amd64        C++ wrapper library for GStreamer (development files)
ii  libqt5gstreamer-1.0-0:amd64                  1.2.0-3                                    amd64        C++ bindings library for GStreamer with a Qt-style API - Qt 5 build
ii  libqt5gstreamer-dev                          1.2.0-3                                    amd64        Development headers for QtGStreamer - Qt 5 build
ii  libqt5gstreamerquick-1.0-0:amd64             1.2.0-3                                    amd64        QtGStreamerQuick library - Qt 5 build
ii  libqt5gstreamerui-1.0-0:amd64                1.2.0-3                                    amd64        QtGStreamerUi library - Qt 5 build
ii  libqt5gstreamerutils-1.0-0:amd64             1.2.0-3                                    amd64        QtGStreamerUtils library - Qt 5 build
ii  libqtgstreamer-1.0-0:amd64                   1.2.0-3                                    amd64        C++ bindings library for GStreamer with a Qt-style API
ii  libqtgstreamer-dev                           1.2.0-3                                    amd64        Development headers for QtGStreamer
ii  libqtgstreamerui-1.0-0:amd64                 1.2.0-3                                    amd64        QtGStreamerUi library
ii  libqtgstreamerutils-1.0-0:amd64              1.2.0-3                                    amd64        QtGStreamerUtils library
ii  libreoffice-avmedia-backend-gstreamer        1:5.1.4-0ubuntu1                           amd64        GStreamer backend for LibreOffice
ii  liquidsoap-plugin-gstreamer                  1.1.1-7.1                                  amd64        audio streaming language -- GStreamer plugin
ii  phonon-backend-gstreamer:amd64               4:4.8.2-0ubuntu2                           amd64        Phonon GStreamer 1.0 backend
ii  phonon-backend-gstreamer-common:amd64        4:4.8.2-0ubuntu2                           amd64        Phonon GStreamer 1.0.x backend icons
ii  phonon4qt5-backend-gstreamer:amd64           4:4.8.2-0ubuntu2                           amd64        Phonon Qt5 GStreamer 1.0 backend
ii  qml-module-qtgstreamer:amd64                 1.2.0-3                                    amd64        QML plugins from QtGStreamer - Qt 5 build
ii  qt5gstreamer-dbg:amd64                       1.2.0-3                                    amd64        Debug symbols for QtGStreamer - Qt 5 build
ii  qtgstreamer-dbg:amd64                        1.2.0-3                                    amd64        Debug symbols for QtGStreamer
ii  qtgstreamer-declarative:amd64                1.2.0-3                                    amd64        QML plugins from QtGStreamer
ii  qtgstreamer-plugins:amd64                    1.2.0-3                                    amd64        GStreamer plugins from QtGStreamer
ii  qtgstreamer-plugins-qt5:amd64                1.2.0-3                                    amd64        GStreamer plugins from QtGStreamer - Qt 5 build

最佳答案

我知道我回答“有点”晚了,但迟到总比不好

这里发生的情况是您的操作系统上缺少某些编解码器,因此我们需要安装它们才能播放视频/音频。

请注意,这仅适用于 Ubuntu 或基于 Ubuntu 的发行版,例如 Linux Mint 等。

要安装缺少的编解码器,您应该在终端上运行以下命令(或添加 ubuntu-restricted-extras 作为 .deb 文件的依赖项):

sudo apt install ubuntu-restricted-extras

关于linux - GStreamer 安装缺少插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40106047/

相关文章:

qt - 如何保存和恢复 ListModel 的内容?

c - 如何理解程序

c++ - 微软 Visual Studio : Loading resources in Qt application (without plug-in)

qtcreator - exe 在 qtcreator 内部工作正常,但不在外部

c++ - 如何以编程方式在 Qt 中获取网络管理器设备名称?

c++ - 如何将 Qt 内置枚举公开给 QML?

linux - 如何检查信号处理程序是否进行了系统调用?

linux - 当网络出现故障时,使用 bash 自动重启 Raspberry PI 接口(interface)

linux - 更改默认端口(22) SSh [CENTOS]

javascript - QML:Lambda 函数意外运行