Introduction to GStreamer Bad Plug-ins

The GStreamer Bad Plug-ins package contains a set of plug-ins that aren't up to par compared to the rest. They might be close to being good quality, but they're missing something - be it a good code review, some documentation, a set of tests, a real live maintainer, or some actual wide use.

This package is known to build and work properly using an LFS-11.2 platform.

Package Information

GStreamer Bad Plug-ins Dependencies





BlueZ-5.65, cURL-7.84.0, FAAC-1_30, FAAD2-2_10_0, fdk-aac-2.0.2, GTK+-3.24.34 (for examples), Little CMS-2.13.1, libass-0.16.0, libexif-0.6.24 (for one test), libmpeg2-0.5.1, librsvg-2.54.4, libsndfile-1.1.0, libssh2-1.10.0, libusb-1.0.26, libva-2.15.0, libwebp-1.2.4, libxkbcommon-1.4.1, neon-0.32.2, Nettle-3.8.1 or libgcrypt-1.10.1 (for SSL support in hls plugin, if both are not installed OpenSSL will be used instead), opencv-4.6.0 (with additional modules), OpenJPEG-2.5.0, Opus-1.3.1, SBC-2.0, SDL-1.2.15, Valgrind-3.19.0, Wayland-1.21.0 (GTK+-3.24.34 must have been compiled with wayland support), wpebackend-fdo-1.12.1, x265-20220819, aom, bs2b, Chromaprint, dssim, Flite, FluidSynth, Game Music Emu, GSM, hotdoc, LADSPA, libavtp, libdc1394-2, libdca, libde265, libkate, libmfx, libmms, libmodplug, libnice, libofa, libopenmpt, libopenni, libsrtp, lilv, LRDF, ltc-tools, microdns, MJPEG Tools, OpenAL, OpenEXR, OpenH264, Orc, rtmpdump, spandsp, srt, svthevcenc, VO AAC, VO AMRWB, Vulkan, WildMidi, WPE-WebKit, ZBAR, ZVBI, and zxing

User Notes:

Installation of GStreamer Bad Plug-ins



If you need a plugin for a given dependency, that dependency needs to be installed before this package.

Install GStreamer Bad Plug-ins by running the following commands:

mkdir build &&
cd    build &&

meson  --prefix=/usr       \
       --buildtype=release \
       -Dgpl=enabled       \
       -Dpackage-origin= \
       -Dpackage-name="GStreamer 1.20.3 BLFS" &&

To test the results, issue: ninja test. Several tests need a terminal emulator in a graphical session. One test, aesdesc is known to fail.

Now, as the root user:

ninja install

Command Explanations

--buildtype=release: Specify a buildtype suitable for stable releases of the package, as the default may produce unoptimized binaries.

-Dgpl=enabled: Without this switch, plugins with dependencies on (A)GPL licensed libraries are not built.


Installed Programs: gst-transcoder-1.0 and playout
Installed Libraries:,,,,,,,,,,,,,,,,, and several plugins under /usr/lib/gstreamer-1.0
Installed Directories: /usr/include/gstreamer-1.0/gst/{audio,basecamerabinsrc,codecparsers}, /usr/include/gstreamer-1.0/gst/{insertbin,interfaces,isoff,mpegts}, /usr/include/gstreamer-1.0/gst/{play,player,sctp,transcoder}, and /usr/include/gstreamer-1.0/gst/{uridownloader,wayland,webrtc}

Short Descriptions


is used to transcode a stream into a different format


is an example application used to sequentially play a list of audio-video files