menuconfig BR2_PACKAGE_GST1_PLUGINS_GOOD
	bool "gst1-plugins-good"
	select BR2_PACKAGE_GST1_PLUGINS_BASE
	select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7
	select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7
	select BR2_PACKAGE_XLIB_LIBXV if BR2_PACKAGE_XORG7
	help
	  A set of well-supported plug-ins for GStreamer under the
	  preferred license.

	  https://gstreamer.freedesktop.org/

if BR2_PACKAGE_GST1_PLUGINS_GOOD

config BR2_PACKAGE_GST1_PLUGINS_GOOD_JPEG
	bool "jpeg (JPEG support)"
	select BR2_PACKAGE_JPEG
	help
	  JPeg plugin library

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PNG
	bool "png (PNG support)"
	select BR2_PACKAGE_LIBPNG
	help
	  PNG plugin library

config BR2_PACKAGE_GST1_PLUGINS_GOOD_BZ2
	bool "bz2 support"
	depends on BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MATROSKA
	select BR2_PACKAGE_BZIP2
	help
	  Enable bz2 support for the following plugins:
	  matroska

comment "dependency-less plugins"

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ALPHA
	bool "alpha"
	help
	  adds an alpha channel to video - constant or via chroma-keying

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_APETAG
	bool "apetag"
	help
	  APEv1/2 tag reader

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUDIOFX
	bool "audiofx"
	help
	  Audio effects plugin

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUDIOPARSERS
	bool "audioparsers"
	help
	  Parsers for various audio formats

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUPARSE
	bool "auparse"
	help
	  parses au streams

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUTODETECT
	bool "autodetect"
	help
	  Plugin contains auto-detection plugins for video/audio in-
	  and outputs

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AVI
	bool "avi (*.avi video)"
	default y
	help
	  AVI stream handling

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_CUTTER
	bool "cutter"
	help
	  Audio Cutter to split audio into non-silent bits

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_DEBUGUTILS
	bool "debugutils"
	help
	  elements for testing and debugging

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_DEINTERLACE
	bool "deinterlace"
	help
	  Deinterlacer

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_DTMF
	bool "dtmf"
	help
	  DTMF plugin

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_EFFECTV
	bool "effectv"
	help
	  effect plugins from the effectv project

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_EQUALIZER
	bool "equalizer"
	help
	  GStreamer audio equalizers

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_FLV
	bool "flv"
	help
	  FLV muxing and demuxing plugin

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_FLX
	bool "flx"
	help
	  FLC/FLI/FLX video decoder

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_GOOM
	bool "goom"
	help
	  GOOM visualization filter

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_GOOM2K1
	bool "goom2k1"
	help
	  GOOM 2k1 visualization filter

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ICYDEMUX
	bool "icydemux"
	help
	  Demux ICY tags from a stream

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ID3DEMUX
	bool "id3demux (*.mp3 audio)"
	help
	  Demux ID3v1 and ID3v2 tags from a file

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_IMAGEFREEZE
	bool "imagefreeze"
	help
	  Still frame stream generator

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_INTERLEAVE
	bool "interleave"
	help
	  Audio interleaver/deinterleaver

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ISOMP4
	bool "isomp4"
	default y
	help
	  ISO base media file format support (mp4, 3gpp, qt, mj2)

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_LAW
	bool "law"

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_LEVEL
	bool "level"
	help
	  Audio level plugin

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MATROSKA
	bool "matroska"
	help
	  Matroska and WebM stream handling

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MONOSCOPE
	bool "monoscope"
	help
	  Monoscope visualization

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MULTIFILE
	bool "multifile"
	help
	  Reads/Writes buffers from/to sequentially named files

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MULTIPART
	bool "multipart"
	help
	  multipart stream manipulation

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_REPLAYGAIN
	bool "replaygain"
	help
	  ReplayGain volume normalization

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTP
	bool "rtp"
	help
	  Real-time protocol plugins

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTPMANAGER
	bool "rtpmanager"
	help
	  RTP session management plugin library

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTSP
	bool "rtsp"
	help
	  transfer data via RTSP

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SHAPEWIPE
	bool "shapewipe"
	help
	  Shape Wipe transition filter

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SMPTE
	bool "smpte"
	help
	  Apply the standard SMPTE transitions on video images

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SPECTRUM
	bool "spectrum"
	help
	  Run an FFT on the audio signal, output spectrum data

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_UDP
	bool "udp"
	help
	  transfer data via UDP

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOBOX
	bool "videobox"
	help
	  resizes a video by adding borders or cropping

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOCROP
	bool "videocrop"
	help
	  Crops video into a user-defined region

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOFILTER
	bool "videofilter"
	help
	  Video filters plugin

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOMIXER
	bool "videomixer"
	help
	  Video mixer

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_WAVENC
	bool "wavenc"
	help
	  Encode raw audio into WAV

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_WAVPARSE
	bool "wavparse (*.wav audio)"
	default y
	help
	  Parse a .wav file into raw audio

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_Y4M
	bool "y4m"
	help
	  Encodes a YUV frame into the yuv4mpeg format (mjpegtools)

comment "plugins with external dependencies"

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_LAME
	bool "lame (*.mp3 audio encoder)"
	select BR2_PACKAGE_LAME
	help
	  Encode MP3s with LAME

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MPG123
	bool "mpg123 (*.mp3 audio)"
	select BR2_PACKAGE_MPG123
	help
	  mp3 decoding based on the mpg123 library

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_OSS
	bool "ossaudio (OSS audio)"
	help
	  OSS (Open Sound System) support for GStreamer

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_OSS4
	bool "oss4 (Open Sound System 4)"
	help
	  Open Sound System (OSS) version 4 support for GStreamer

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_QMLGL
	bool "qmlgl (qt5)"
	depends on BR2_PACKAGE_QT5
	depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE # qt5declarative
	depends on BR2_PACKAGE_GST1_PLUGINS_BASE_HAS_LIB_OPENGL
	select BR2_PACKAGE_QT5BASE_WIDGETS
	select BR2_PACKAGE_QT5DECLARATIVE
	select BR2_PACKAGE_QT5DECLARATIVE_QUICK
	select BR2_PACKAGE_QT5X11EXTRAS if BR2_PACKAGE_QT5BASE_XCB
	help
	  QT5 plugin which includes elements qmlglsrc and qmlglsink

comment "qmlgl (qt5) needs the gst1-plugins-base opengl library"
	depends on !BR2_PACKAGE_GST1_PLUGINS_BASE_HAS_LIB_OPENGL

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SHOUT2
	bool "shout2"
	select BR2_PACKAGE_LIBSHOUT
	help
	  Elements to send data to an icecast server using libshout2

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2
	bool "v4l2"
	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # multi planar api
	select BR2_PACKAGE_LIBGUDEV if BR2_PACKAGE_HAS_UDEV
	help
	  elements for Video 4 Linux

comment "v4l2 needs a toolchain w/ headers >= 3.0"
	depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2_PROBE
	bool "v4l2-probe (m2m)"
	depends on BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2
	help
	  Enables the V4L2 probe at plugin load time. This enables
	  support for v4l2 transform devices, such as m2m
	  devices. These plugins are registered as v4l2videoNconvert

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_CAIRO
	bool "cairo"
	select BR2_PACKAGE_CAIRO
	select BR2_PACKAGE_CAIRO_PNG
	help
	  Cairo-based elements

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_FLAC
	bool "flac (libFLAC)"
	depends on BR2_USE_WCHAR # flac
	select BR2_PACKAGE_FLAC
	help
	  The FLAC Lossless compressor Codec

comment "flac needs a toolchain w/ wchar"
	depends on !BR2_USE_WCHAR

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_GDKPIXBUF
	bool "gdkpixbuf"
	depends on BR2_USE_WCHAR # gdk-pixbuf -> libglib2
	depends on BR2_TOOLCHAIN_HAS_THREADS # gdk-pixbuf -> libglib2
	select BR2_PACKAGE_GDK_PIXBUF
	help
	  GdkPixbuf-based image decoder, overlay and sink

comment "gdkpixbuf needs a toolchain w/ wchar, threads"
	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_JACK
	bool "jack"
	depends on BR2_INSTALL_LIBSTDCPP
	depends on !BR2_STATIC_LIBS
	depends on BR2_TOOLCHAIN_HAS_SYNC_4
	select BR2_PACKAGE_JACK2
	help
	  JACK audio source/sink plugin

comment "jack needs a toolchain w/ C++, dynamic library"
	depends on BR2_TOOLCHAIN_HAS_SYNC_4
	depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_PULSE
	bool "pulseaudio"
	depends on BR2_TOOLCHAIN_HAS_THREADS # pulseaudio
	depends on BR2_USE_MMU # pulseaudio
	depends on !BR2_STATIC_LIBS # pulseaudio
	depends on BR2_USE_WCHAR # pulseaudio
	depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC # pulseaudio
	select BR2_PACKAGE_PULSEAUDIO
	help
	  PulseAudio plugin library

comment "pulseaudio support needs a toolchain w/ threads, wchar, dynamic library"
	depends on BR2_USE_MMU
	depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC
	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || !BR2_USE_WCHAR

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SOUPHTTPSRC
	bool "souphttpsrc (http client)"
	depends on BR2_USE_WCHAR # libsoup -> glib2
	depends on BR2_TOOLCHAIN_HAS_THREADS # libsoup -> glib2
	select BR2_PACKAGE_LIBSOUP
	help
	  libsoup HTTP client src/sink

comment "souphttpsrc needs a toolchain w/ wchar, threads"
	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SPEEX
	bool "speex"
	select BR2_PACKAGE_SPEEX
	help
	  Speex plugin library

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_TAGLIB
	bool "taglib"
	depends on BR2_INSTALL_LIBSTDCPP
	depends on BR2_USE_WCHAR
	select BR2_PACKAGE_TAGLIB
	help
	  Taglib tagging plugin library

comment "taglib needs a toolchain w/ C++, wchar"
	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_TWOLAME
	bool "twolame"
	select BR2_PACKAGE_TWOLAME
	help
	  twolame mp2 audio encoder plugin

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VPX
	bool "vpx (webm)"
	depends on BR2_TOOLCHAIN_HAS_THREADS # libvpx
	select BR2_PACKAGE_LIBVPX
	help
	  VP8 plugin

comment "libvpx needs a toolchain w/ threads"
	depends on !BR2_TOOLCHAIN_HAS_THREADS

config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_WAVPACK
	bool "wavpack (*.wv audio)"
	select BR2_PACKAGE_WAVPACK
	help
	  Wavpack lossless/lossy audio format handling

endif
