GStreamer installation is missing a plug-in
Solution 1
I know i answer a "little bit" late, but better late than never
What is happening here is that some codecs are missing on your OS, so we need to istall them in order to play video/audio.
Take note that this will work ONLY on Ubuntu or on Ubuntu-based distros such as Linux Mint, etc.
To install the missing codecs, you sould run the following command on a terminal (Or adding ubuntu-restricted-extras
as a dependency on your .deb file):
sudo apt install ubuntu-restricted-extras
Solution 2
The element missing is named hlsdemux
and lives in gst-plugins-bad
. You can check the list of plugins you have installed with gst-inspect-0.10
or gst-inspect-1.0
. Using that with grep will allow you to quickly find out if you have it installed.
gst-inspect-1.0 | grep hlsdemux
(or 0.10 depending on the version you want to use)
If QtMultimedia indeed uses 0.10 you should be missing gstreamer0.10-plugins-bad
. Note that 0.10 is obsolete and unmantained for years. 1.0 is actively developed. You should check if a newer version of QtMultimedia has upgraded to the 1.0 version and try to use that.
Solution 3
The hls plugin is in gst-plugins-bad. To be sure please check "gst-inspect-1.0 | grep hls" - on you distro gst-inspect might be a symlink to gst-inspect-0.10.
light01
Updated on July 24, 2022Comments
-
light01 almost 2 years
I hope that someone can help with this problem, been searching for a solution for the past 2 days.
To describe the problem in short: I'm trying to make a simple qt5.7 application that will stream an m3u8 (using Qt Creator (community). But when I try to run it I get a
Warning: "No decoder available for type 'application/x-hls'." Error: "Your GStreamer installation is missing a plug-in."
"gst-inspect | grep hls" returns: typefindfunctions: application/x-hls: m3u8
At this point I have no idea which plugin can I even miss as I have gone trough the complete GStreamer plugin list and put one after another. As far as my search went some got the fix by installing the bad/ugly plugins. Some say that the QT5 still uses gstreamer0.10, but new linux versions use the 1.0 (lost at this point). I tried to set a flag to force the GST_VERSION=1.0, did not work, or I did something wrong (I used the qmake GST_VERSION=1.0 command). Also, I am able to play the video in vlc. I am completely stuck, and don't know what to do anymore.
the app code:
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(); } } }
OS:
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
list of gstreamer plugins:
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
-
Luka over 7 yearsI got: gst-inspect-1.0 | grep hlsdemux returns: hls: hlsdemux: HLS Demuxer
-
light01 over 7 yearsIt returns this: typefindfunctions: application/x-hls: m3u8 libav: avmux_hls: libav Apple HTTP Live Streaming muxer
-
thiagoss over 7 yearsYou need to figure out which version qtmultimedia is using. 1.0 and 0.10 are separate and incompatible
-
light01 over 7 yearsfor both versions I get no return.
-
Luka over 7 years@thiagoss qtmultimedia is still using 0.10 version and the problem is I don't know how to get gstreamer0.10-plugins-bad
-
ensonic over 7 years@luka: 0.10 is several years old, back then we did not have those plugins yet. fyi: 1.0 has qt bindings: cgit.freedesktop.org/gstreamer/qt-gstreamer/tree/README
-
Luka over 7 years@ensonic we finally made it work by installing "gstreamer0.10-plugins-bad" form old repos
-
G_Style about 3 yearsThis worked for me when all other things failed. Thanks! I couldn't get some internet radio stations to work, particularly m3u8 file streams. I knew I missing a codec somewhere but couldn't find which one or how to install it. Its only fitting that it is stashed in a generically named package somewhere.
-
Pierre D over 2 yearswish I could upvote you more than once.
-
Piotr Chmielewski over 2 yearsit crashed fonts in my app, and didn't resolved my problem
-
puerile over 2 yearsThis is the correct answer!
-
CoderGuy123 about 2 yearsThis worked for me to fix Clementine player on Mint 20. It was giving an error when trying to play di.fm radio
Your GStreamer installation is missing a plug-in.
. -
ניר almost 2 years
restricted-extras
doesn't sound quite nice (: what is that?