DeepStream Intro#
I had conceptual understanding of DeepStream, and I almost depicted an entire VA pipeline architecture using DeepStream without trying a single line of code… 🤦🏻♂️ Well, if you have enough tech-ego then it always comes back to haunt you and makes you feel uncomfortable when you do such things :).
Yet another weekend catching up on my backlog of things to learn and explore — here are my notebooks from going through an NVIDIA DeepStream SDK self-learning materials on DLI…
Opportunities for Video AI or Intelligent Video Analytics (IVA)
Access control at airports or other checkpoints
Managing operations for logistic and manufacturing such as warehouse balancing at product distribution centers
Traffic flow and parking management for smart cities
Retail analytics to improve customer experience
Optical inspection at factory assembly line
Video AI Tasks#
In a typical Video Analytics pipeline, there are one or more machine learning models to generate insights from the video inputs. These are generally deep learning neural network (DNN) models that have been trained for a specific visual task. There are numerous approaches for drawing insight from videos:
Classification is used for identifying the object contained in an image. It is the task of labeling the given frame with one of the classes that the model has been trained with
Localization uses regression to return the coordinates of the potential object within the frame
Object detection, which includes image localization, can specify the location of multiple objects in a frame
Segmentation provides pixel level accuracy by creating a fine-grained segmentation mask around the detected object. Applications for segmentation include: an AI powered green screen to blur or change the background of the frame, autonomous driving where you want to segment the road and background, or for manufacturing to identify microscopic level defects
A typical Video AI Pipeline#
Generally, a video AI pipeline takes one or more input video streams, performs decoding and muxing (or aggregating), preprocesses the batch, and puts the data through AI inference. Afterwards, the AI-based insight, combined with the original video, can be 1) encoded for storage, 2) used to create a composite for display, or 3) passed downstream for further analytics.
Video Formats#
The input video file is an encoded video file with a .h264 extension, which is perhaps not the .mp4 extension we would expect for a video file. The .mp4 file extension is a representation of the container, which has all the files needed to play back a video. These files include the visual images, the audio tracks, and the metadata (i.e., bitrate, resolution, subtitles, timestamp, etc.). The metadata also contains information about the codec used for the audio and video streams. The codec, which is a mashup of the words code and decode, is a method used to compress (encode) a video into a smaller size for faster transmission. The encoded file can be decompressed (decoded) using the same codec for playback and processing. The most common video codecs include H.264, H.265, and MPEG4. Separate from MPEG4, MP4 is a container that can be used for playback in the JupyterLab. These properties describe the video format and new ones are continuously being developed to provide improvements in quality, file size, and video playback. We need to build the application based on the video format(s) of the input and desire output.
The FFmpeg tool is a very fast video and audio converter with the general syntax:
ffmpeg [global_options] {[input_file_options] -i input_url} ... {[output_file_options] output_url} ...
.
When using the ffmpeg
command, the -i
option lets us read an input URL, the -loglevel quiet
option suppresses the logs, and the -y
flag overwrites any existing output file with the same name.
# Convert the H.264 encoded video file to MP4 container file - this will generate the sample_30.mp4 file
!ffmpeg -i /dli/task/data/sample_30.h264 /dli/task/sample_30.mp4 \
-y \
-loglevel quiet
from IPython.display import Video
Video('sample_30.mp4', width=720)
GStreamer Foundations#
DeepStream utilizes an optimized graph architecture built using the open-source GStreamer multimedia framework. GStreamer is used for creating streaming media applications, ranging from a simple media player to complex video editing applications. GStreamer plugins can be mixed and matched into arbitrary pipelines to create custom applications.
Key concepts in GStreamer#
Elements - Elements are at the core of GStreamer. Elements provide some sort of functionality when linked with other elements. For example, a source element provides data to a stream, a filter element processes a stream of data, and a sink element consumes data. Data flow downstream from source elements to sink elements, passing through filter elements. GStreamer offers a large collection of elements by default but also allows for writing new elements.
A sink, in computing, is designed to receive data.
Bins - Bins are container elements that allow you to combine linked elements into a logical group. Bins can be handled in the same way as any other element. They are programmed to manage elements contained within, including state changes as well as bus messages, to ensure that data flow smoothly. This is useful when constructing complex pipelines that require many elements.
Pipeline - A pipeline is the top-level bin that also manages the synchronization and bus messages of the contained elements.
Plugins - Elements need to be encapsulated in a plugin to enable GStreamer to use it. A plugin is essentially a loadable block of code, usually recognized as a shared object file or a dynamically linked library. A plugin may contain the implementation of several elements, or just one. GStreamer provides building blocks in the form of plugins that can be used to construct an efficient video analytics pipeline. The DeepStream SDK features hardware-accelerated plugins that bring deep neural networks and other complex processing tasks into the stream processing pipeline.
Bus - The bus is the object responsible for delivering to the application messages generated by the elements. Every pipeline contains a bus by default, so the only thing applications should do is set a message handler on a bus, which is like a signal handler to an object. When the main loop is running, the bus will periodically be checked for new messages, and the message handler will be called when any new message is available.
Messages signal the application of pipeline events. Some of the message types include
GST_MESSAGE_EOS
(end-of-stream),GST_MESSAGE_ERROR
, andGST_MESSAGE_WARNING
.
Pads - Pads are used to negotiate links and dataflow between elements in GStreamer. A pad is the “port” on an element where links can be made with other elements for data to flow through. When data flow from element to element in a pipeline, in reality it flows from the source pad of one element to the sink pad of another. Links are only allowed between two pads when the data types, or capabilities, are compatible.
Buffers and Events - All streams of data in GStreamer are chopped up into chunks and passed from a source pad of one element to a sink pad of another element as one of the two types of
GstMiniObject
: events (control) and buffers (content). A buffer is the basic unit of data transfer in GStreamer. Normally, it contains a chunk of video data that flow from one element to another. The DeepStream SDK attaches the DeepStream metadata object,NvDsBatchMeta
, to the buffer. An event, on the other hand, contains information on the state of the stream flowing between two linked pads. Events can be used to indicate the end of a media stream.Queries - Queries are used to get information about the stream.
For the most part, all data in GStreamer flow one way through a link between elements. When data flow from one DeepStream element to another, the buffers are not recreated. Instead, buffer pointers are passed to avoid unnecessary copies and achieve high-speed performance.
For more information, please refer to GStreamer Basics.
Anatomy of a DeepStream Pipeline#
The DeepStream SDK is a streaming analytics toolkit that can be used to build video AI applications or pipeline.
GStreamer and by extension DeepStream applications have a plugin-based architecture. One single plugin may contain the implementation of several elements, or just one. When building a pipeline, we can select from a catalogue of available GStreamer or DeepStream plugins, or create new ones. An application can be thought of as a pipeline consisting of individual components (plugins), each representing a functional block like video decoding/encoding, scaling, inferencing, and more.
The graph below shows the pipeline of a typical video analytics pipeline, starting from consuming input videos to outputting insights. All the individual blocks are various plugins that are used. At the bottom are the different hardware engines that are utilized throughout the pipeline. Where applicable, plugins are accelerated using the underlying hardware to deliver maximum performance.
Inspecting Plugins#
We can inspect plugins using gst-inspect-1.0
. It’s a tool that prints out information on available plugins, information about a particular plugin, or information about a particular element. When executed with no plugin or element argument, it will print a list of all plugins and elements together with a summary. When executed with a plugin or element argument, it will print information about that plugin or element.
!gst-inspect-1.0
adpcmdec: adpcmdec: ADPCM decoder
inter: interaudiosrc: Internal audio source
inter: interaudiosink: Internal audio sink
inter: intersubsrc: Internal subtitle source
inter: intersubsink: Internal subtitle sink
inter: intervideosrc: Internal video source
inter: intervideosink: Internal video sink
audiotestsrc: audiotestsrc: Audio test source
faceoverlay: faceoverlay: faceoverlay
taglib: id3v2mux: TagLib-based ID3v2 Muxer
taglib: apev2mux: TagLib-based APEv2 Muxer
autoconvert: autoconvert: Select convertor based on caps
autoconvert: autovideoconvert: Select color space convertor based on caps
speex: speexenc: Speex audio encoder
speex: speexdec: Speex audio decoder
fluidsynthmidi: fluiddec: Fluidsynth
wildmidi: wildmididec: WildMidi-based MIDI music decoder
gaudieffects: burn: Burn
gaudieffects: chromium: Chromium
gaudieffects: dilate: Dilate
gaudieffects: dodge: Dodge
gaudieffects: exclusion: Exclusion
gaudieffects: solarize: Solarize
gaudieffects: gaussianblur: GstGaussianBlur
cdparanoia: cdparanoiasrc: CD Audio (cdda) Source, Paranoia IV
voamrwbenc: voamrwbenc: AMR-WB audio encoder
modplug: modplug: ModPlug
teletext: teletextdec: Teletext decoder
asfmux: asfmux: ASF muxer
asfmux: rtpasfpay: RTP ASF payloader
asfmux: asfparse: ASF parser
icydemux: icydemux: ICY tag demuxer
interleave: interleave: Audio interleaver
interleave: deinterleave: Audio deinterleaver
mpeg2enc: mpeg2enc: mpeg2enc video encoder
amrwbdec: amrwbdec: AMR-WB audio decoder
shapewipe: shapewipe: Shape Wipe transition filter
accurip: accurip: AccurateRip(TM) CRC element
jp2kdecimator: jp2kdecimator: JPEG2000 decimator
voaacenc: voaacenc: AAC audio encoder
bz2: bz2enc: BZ2 encoder
bz2: bz2dec: BZ2 decoder
theora: theoradec: Theora video decoder
theora: theoraenc: Theora video encoder
theora: theoraparse: Theora video parser
navigationtest: navigationtest: Video navigation test
subparse: subparse_typefind: srt, sub, mpsub, mdvd, smi, txt, dks, vtt
subparse: subparse: Subtitle parser
subparse: ssaparse: SSA Subtitle Parser
webrtc: webrtcbin: WebRTC Bin
curl: curlhttpsink: Curl http sink
curl: curlfilesink: Curl file sink
curl: curlftpsink: Curl ftp sink
curl: curlsmtpsink: Curl smtp sink
curl: curlhttpsrc: HTTP Client Source using libcURL
aiff: aiffparse: AIFF audio demuxer
aiff: aiffmux: AIFF audio muxer
audiovisualizers: spacescope: Stereo visualizer
audiovisualizers: spectrascope: Frequency spectrum scope
audiovisualizers: synaescope: Synaescope
audiovisualizers: wavescope: Waveform oscilloscope
cdio: cdiocddasrc: CD audio source (CDDA)
kms: kmssink: KMS video sink
ivtc: ivtc: Inverse Telecine
ivtc: combdetect: Comb Detect
asf: asfdemux: ASF Demuxer
asf: rtspwms: WMS RTSP Extension
asf: rtpasfdepay: RTP ASF packet depayloader
sndfile: sfdec: Sndfile decoder
audioparsers: aacparse: AAC audio stream parser
audioparsers: amrparse: AMR audio stream parser
audioparsers: ac3parse: AC3 audio stream parser
audioparsers: dcaparse: DTS Coherent Acoustics audio stream parser
audioparsers: flacparse: FLAC audio parser
audioparsers: mpegaudioparse: MPEG1 Audio Parser
audioparsers: sbcparse: SBC audio parser
audioparsers: wavpackparse: Wavpack audio stream parser
geometrictransform: circle: circle
geometrictransform: diffuse: diffuse
geometrictransform: kaleidoscope: kaleidoscope
geometrictransform: marble: marble
geometrictransform: pinch: pinch
geometrictransform: rotate: rotate
geometrictransform: sphere: sphere
geometrictransform: twirl: twirl
geometrictransform: waterripple: waterripple
geometrictransform: stretch: stretch
geometrictransform: bulge: bulge
geometrictransform: tunnel: tunnel
geometrictransform: square: square
geometrictransform: mirror: mirror
geometrictransform: fisheye: fisheye
geometrictransform: perspective: perspective
1394: dv1394src: Firewire (1394) DV video source
1394: hdv1394src: Firewire (1394) HDV video source
lame: lamemp3enc: L.A.M.E. mp3 encoder
fbdevsink: fbdevsink: fbdev video sink
colormanagement: lcms: LCMS2 ICC correction
debug: breakmydata: Break my data
debug: capssetter: CapsSetter
debug: rndbuffersize: Random buffer size
debug: navseek: Seek based on left-right arrows
debug: pushfilesrc: Push File Source
debug: progressreport: Progress report
debug: taginject: TagInject
debug: testsink: Test plugin
debug: cpureport: CPU report
openjpeg: openjpegdec: OpenJPEG JPEG2000 decoder
openjpeg: openjpegenc: OpenJPEG JPEG2000 encoder
proxy: proxysrc: Proxy source
proxy: proxysink: Proxy Sink
rawparse: unalignedaudioparse: unalignedaudioparse
rawparse: unalignedvideoparse: unalignedvideoparse
rawparse: rawaudioparse: rawaudioparse
rawparse: rawvideoparse: rawvideoparse
ximagesink: ximagesink: Video sink
videofiltersbad: scenechange: Scene change detector
videofiltersbad: zebrastripe: Zebra stripe overlay
videofiltersbad: videodiff: Video Diff
rtmp: rtmpsrc: RTMP Source
rtmp: rtmpsink: RTMP output sink
pango: textoverlay: Text overlay
pango: timeoverlay: Time overlay
pango: clockoverlay: Clock overlay
pango: textrender: Text renderer
vmnc: vmncdec: VMnc video decoder
volume: volume: Volume
dtmf: dtmfsrc: DTMF tone generator
dtmf: rtpdtmfsrc: RTP DTMF packet generator
dtmf: rtpdtmfdepay: RTP DTMF packet depayloader
opengl: glimagesink: GL Sink Bin
opengl: glimagesinkelement: OpenGL video sink
opengl: glupload: OpenGL uploader
opengl: gldownload: OpenGL downloader
opengl: glcolorconvert: OpenGL color converter
opengl: glcolorbalance: Video balance
opengl: glfilterbin: GL Filter Bin
opengl: glsinkbin: GL Sink Bin
opengl: glsrcbin: GL Src Bin
opengl: glmixerbin: OpenGL video_mixer empty bin
opengl: glfiltercube: OpenGL cube filter
opengl: gltransformation: OpenGL transformation filter
opengl: glvideoflip: OpenGL video flip filter
opengl: gleffects: Gstreamer OpenGL Effects
opengl: gleffects_identity: Do nothing Effect
opengl: gleffects_mirror: Mirror Effect
opengl: gleffects_squeeze: Squeeze Effect
opengl: gleffects_stretch: Stretch Effect
opengl: gleffects_tunnel: Light Tunnel Effect
opengl: gleffects_fisheye: FishEye Effect
opengl: gleffects_twirl: Twirl Effect
opengl: gleffects_bulge: Bulge Effect
opengl: gleffects_square: Square Effect
opengl: gleffects_heat: Heat Signature Effect
opengl: gleffects_sepia: Sepia Toning Effect
opengl: gleffects_xpro: Cross Processing Effect
opengl: gleffects_lumaxpro: Luma Cross Processing Effect
opengl: gleffects_xray: Glowing negative effect
opengl: gleffects_sin: All Grey but Red Effect
opengl: gleffects_glow: Glow Lighting Effect
opengl: gleffects_sobel: Sobel edge detection Effect
opengl: gleffects_blur: Blur with 9x9 separable convolution Effect
opengl: gleffects_laplacian: Laplacian Convolution Demo Effect
opengl: glcolorscale: OpenGL color scale
opengl: glvideomixer: OpenGL video_mixer bin
opengl: glvideomixerelement: OpenGL video_mixer
opengl: glshader: OpenGL fragment shader filter
opengl: glfilterapp: OpenGL application filter
opengl: glviewconvert: OpenGL Multiview/3D conversion filter
opengl: glstereosplit: GLStereoSplit
opengl: glstereomix: OpenGL stereo video combiner
opengl: gltestsrc: Video test source
opengl: gldeinterlace: OpenGL deinterlacing filter
opengl: glalpha: OpenGL Alpha Filter
opengl: gloverlaycompositor: OpenGL overlaying filter
opengl: gloverlay: Gstreamer OpenGL Overlay
opengl: glfilterglass: OpenGL glass filter
opengl: glmosaic: OpenGL mosaic
opengl: gldifferencematte: Gstreamer OpenGL DifferenceMatte
ipcpipeline: ipcpipelinesrc: Inter-process Pipeline Source
ipcpipeline: ipcpipelinesink: Inter-process Pipeline Sink
ipcpipeline: ipcslavepipeline: Inter-process slave pipeline
videofilter: gamma: Video gamma correction
videofilter: videobalance: Video balance
videofilter: videoflip: Video flipper
videofilter: videomedian: Median effect
autodetect: autovideosink: Auto video sink
autodetect: autovideosrc: Auto video source
autodetect: autoaudiosink: Auto audio sink
autodetect: autoaudiosrc: Auto audio source
wavpack: wavpackdec: Wavpack audio decoder
wavpack: wavpackenc: Wavpack audio encoder
dtls: dtlsenc: DTLS Encoder
dtls: dtlsdec: DTLS Decoder
dtls: dtlssrtpdec: DTLS-SRTP Decoder
dtls: dtlssrtpenc: DTLS-SRTP Encoder
dtls: dtlssrtpdemux: DTLS SRTP Demultiplexer
bluez: a2dpsink: Bluetooth A2DP sink
bluez: avdtpsink: Bluetooth AVDTP sink
bluez: avdtpsrc: Bluetooth AVDTP Source
dvdspu: dvdspu: Sub-picture Overlay
id3tag: id3mux: ID3 v1 and v2 Muxer
spandsp: spanplc: SpanDSP PLC
spandsp: dtmfdetect: DTMF detector element
spandsp: tonegeneratesrc: Telephony Tone Generator source
multipart: multipartdemux: Multipart demuxer
multipart: multipartmux: Multipart muxer
vpx: vp8dec: On2 VP8 Decoder
vpx: vp8enc: On2 VP8 Encoder
vpx: vp9dec: On2 VP9 Decoder
vpx: vp9enc: On2 VP9 Encoder
videoconvert: videoconvert: Colorspace converter
timecode: timecodestamper: Timecode stamper
timecode: avwait: Timecode Wait
smoothstreaming: mssdemux: Smooth Streaming demuxer
flac: flacenc: FLAC audio encoder
flac: flacdec: FLAC audio decoder
flac: flactag: FLAC tagger
spectrum: spectrum: Spectrum analyzer
tcp: socketsrc: socket source
tcp: tcpclientsink: TCP client sink
tcp: tcpclientsrc: TCP client source
tcp: tcpserversink: TCP server sink
tcp: tcpserversrc: TCP server source
tcp: multifdsink: Multi filedescriptor sink
tcp: multisocketsink: Multi socket sink
ximagesrc: ximagesrc: Ximage video source
siren: sirendec: Siren Decoder element
siren: sirenenc: Siren Encoder element
x264: x264enc: x264enc
dvbsuboverlay: dvbsuboverlay: DVB Subtitles Overlay
camerabin: viewfinderbin: Viewfinder Bin
camerabin: wrappercamerabinsrc: Wrapper camera src element for camerabin2
camerabin: camerabin: Camera Bin
waylandsink: waylandsink: wayland video sink
bs2b: bs2b: Crossfeed effect
sctp: sctpenc: SCTP Encoder
sctp: sctpdec: SCTP Decoder
amrnb: amrnbdec: AMR-NB audio decoder
amrnb: amrnbenc: AMR-NB audio encoder
festival: festival: Festival Text-to-Speech synthesizer
videorate: videorate: Video rate adjuster
mpegpsdemux: mpegpsdemux: MPEG Program Stream Demuxer
adder: adder: Adder
dvdsub: dvdsubdec: DVD subtitle decoder
dvdsub: dvdsubparse: DVD subtitle parser
yadif: yadif: YADIF deinterlacer
freeverb: freeverb: Reverberation/room effect
openexr: openexrdec: OpenEXR decoder
cutter: cutter: Audio cutter
netsim: netsim: Network Simulator
level: level: Level
ivfparse: ivfparse: IVF parser
rtponvif: rtponviftimestamp: ONVIF NTP timestamps RTP extension
rtponvif: rtponvifparse: ONVIF NTP timestamps RTP extension
ofa: ofa: OFA
segmentclip: audiosegmentclip: Audio buffer segment clipper
segmentclip: videosegmentclip: Video buffer segment clipper
x265: x265enc: x265enc
wavenc: wavenc: WAV audio muxer
sbc: sbcdec: Bluetooth SBC audio decoder
sbc: sbcenc: Bluetooth SBC audio encoder
mxf: mxfdemux: MXF Demuxer
mxf: mxfmux: MXF muxer
alphacolor: alphacolor: Alpha color filter
de265: libde265dec: HEVC/H.265 decoder
videomixer: videomixer: Video mixer 2
mplex: mplex: mplex video multiplexer
deinterlace: deinterlace: Deinterlacer
flv: flvdemux: FLV Demuxer
flv: flvmux: FLV muxer
subenc: srtenc: Srt encoder
subenc: webvttenc: WebVTT encoder
audiobuffersplit: audiobuffersplit: Audio Buffer Split
replaygain: rganalysis: ReplayGain analysis
replaygain: rglimiter: ReplayGain limiter
replaygain: rgvolume: ReplayGain volume
dvdlpcmdec: dvdlpcmdec: DVD LPCM Audio decoder
zbar: zbar: Barcode detector
closedcaption: cccombiner: Closed Caption Combiner
closedcaption: ccconverter: Closed Caption Converter
closedcaption: ccextractor: Closed Caption Extractor
closedcaption: line21decoder: Line 21 CC Decoder
closedcaption: cc708overlay: Closed Caption overlay
closedcaption: line21encoder: Line 21 CC Encoder
chromaprint: chromaprint: Chromaprint fingerprinting element
realmedia: rmdemux: RealMedia Demuxer
realmedia: rademux: RealAudio Demuxer
realmedia: rdtdepay: RDT packet parser
realmedia: rdtmanager: RTP Decoder
realmedia: rtspreal: RealMedia RTSP Extension
realmedia: pnmsrc: PNM packet receiver
typefindfunctions: video/x-ms-asf: asf, wm, wma, wmv
typefindfunctions: audio/x-musepack: mpc, mpp, mp+
typefindfunctions: audio/x-au: au, snd
typefindfunctions: video/x-msvideo: avi
typefindfunctions: audio/qcelp: qcp
typefindfunctions: video/x-cdxa: dat
typefindfunctions: video/x-vcd: dat
typefindfunctions: audio/x-imelody: imy, ime, imelody
typefindfunctions: application/x-scc: scc
typefindfunctions: application/x-mcc: mcc
typefindfunctions: audio/midi: mid, midi
typefindfunctions: audio/riff-midi: mid, midi
typefindfunctions: audio/mobile-xmf: mxmf
typefindfunctions: video/x-fli: flc, fli
typefindfunctions: application/x-id3v2: mp3, mp2, mp1, mpga, ogg, flac, tta
typefindfunctions: application/x-id3v1: mp3, mp2, mp1, mpga, ogg, flac, tta
typefindfunctions: application/x-apetag: mp3, ape, mpc, wv
typefindfunctions: audio/x-ttafile: tta
typefindfunctions: audio/x-mod: 669, amf, ams, dbm, digi, dmf, dsm, gdm, far, imf, it, j2b, mdl, med, mod, mt2, mtm, okt, psm, ptm, sam, s3m, stm, stx, ult, umx, xm
typefindfunctions: audio/mpeg: mp3, mp2, mp1, mpga
typefindfunctions: audio/x-ac3: ac3, eac3
typefindfunctions: audio/x-dts: dts
typefindfunctions: audio/x-gsm: gsm
typefindfunctions: video/mpeg-sys: mpe, mpeg, mpg
typefindfunctions: video/mpegts: ts, mts
typefindfunctions: application/ogg: ogg, oga, ogv, ogm, ogx, spx, anx, axa, axv
typefindfunctions: video/mpeg-elementary: mpv, mpeg, mpg
typefindfunctions: video/mpeg4: m4v
typefindfunctions: video/x-h263: h263, 263
typefindfunctions: video/x-h264: h264, x264, 264
typefindfunctions: video/x-h265: h265, x265, 265
typefindfunctions: video/x-nuv: nuv
typefindfunctions: audio/x-m4a: m4a
typefindfunctions: application/x-3gp: 3gp
typefindfunctions: video/quicktime: mov, mp4
typefindfunctions: image/x-quicktime: qif, qtif, qti
typefindfunctions: image/jp2: jp2
typefindfunctions: image/x-jpc: jpc, j2k
typefindfunctions: video/mj2: mj2
typefindfunctions: text/html: htm, html
typefindfunctions: application/vnd.rn-realmedia: ra, ram, rm, rmvb
typefindfunctions: application/x-pn-realaudio: ra, ram, rm, rmvb
typefindfunctions: application/x-shockwave-flash: swf, swfl
typefindfunctions: application/xges: xges
typefindfunctions: application/dash+xml: mpd, MPD
typefindfunctions: application/vnd.ms-sstr+xml: no extensions
typefindfunctions: video/x-flv: flv
typefindfunctions: text/plain: txt
typefindfunctions: text/utf-16: txt
typefindfunctions: text/utf-32: txt
typefindfunctions: text/uri-list: ram
typefindfunctions: application/itc: itc
typefindfunctions: application/x-hls: m3u8
typefindfunctions: application/sdp: sdp
typefindfunctions: application/smil: smil
typefindfunctions: application/ttml+xml: ttml+xml
typefindfunctions: application/xml: xml
typefindfunctions: audio/x-wav: wav
typefindfunctions: audio/x-aiff: aiff, aif, aifc
typefindfunctions: audio/x-svx: iff, svx
typefindfunctions: audio/x-paris: paf
typefindfunctions: audio/x-nist: nist
typefindfunctions: audio/x-voc: voc
typefindfunctions: audio/x-sds: sds
typefindfunctions: audio/x-ircam: sf
typefindfunctions: audio/x-w64: w64
typefindfunctions: audio/x-rf64: rf64
typefindfunctions: audio/x-shorten: shn
typefindfunctions: application/x-ape: ape
typefindfunctions: image/jpeg: jpg, jpe, jpeg
typefindfunctions: image/gif: gif
typefindfunctions: image/png: png
typefindfunctions: image/bmp: bmp
typefindfunctions: image/tiff: tif, tiff
typefindfunctions: image/webp: webp
typefindfunctions: image/x-exr: exr
typefindfunctions: image/x-portable-pixmap: pnm, ppm, pgm, pbm
typefindfunctions: video/x-matroska: mkv, mka, mk3d, webm
typefindfunctions: application/mxf: mxf
typefindfunctions: video/x-mve: mve
typefindfunctions: video/x-dv: dv, dif
typefindfunctions: audio/x-amr-nb-sh: amr
typefindfunctions: audio/x-amr-wb-sh: amr
typefindfunctions: audio/iLBC-sh: ilbc
typefindfunctions: audio/x-sbc: sbc
typefindfunctions: audio/x-sid: sid
typefindfunctions: image/x-xcf: xcf
typefindfunctions: video/x-mng: mng
typefindfunctions: image/x-jng: jng
typefindfunctions: image/x-xpixmap: xpm
typefindfunctions: image/x-sun-raster: ras
typefindfunctions: application/x-bzip: bz2
typefindfunctions: application/x-gzip: gz
typefindfunctions: application/zip: zip
typefindfunctions: application/x-compress: Z
typefindfunctions: subtitle/x-kate: no extensions
typefindfunctions: application/x-subtitle-vtt: vtt
typefindfunctions: audio/x-flac: flac
typefindfunctions: audio/x-vorbis: no extensions
typefindfunctions: video/x-theora: no extensions
typefindfunctions: application/x-ogm-video: no extensions
typefindfunctions: application/x-ogm-audio: no extensions
typefindfunctions: application/x-ogm-text: no extensions
typefindfunctions: audio/x-speex: no extensions
typefindfunctions: audio/x-celt: no extensions
typefindfunctions: application/x-ogg-skeleton: no extensions
typefindfunctions: text/x-cmml: no extensions
typefindfunctions: application/x-executable: no extensions
typefindfunctions: audio/aac: aac, adts, adif, loas
typefindfunctions: audio/x-spc: spc
typefindfunctions: audio/x-wavpack: wv, wvp
typefindfunctions: audio/x-wavpack-correction: wvc
typefindfunctions: audio/x-caf: caf
typefindfunctions: application/postscript: ps
typefindfunctions: image/svg+xml: svg
typefindfunctions: application/x-rar: rar
typefindfunctions: application/x-tar: tar
typefindfunctions: application/x-ar: a
typefindfunctions: application/x-ms-dos-executable: dll, exe, ocx, sys, scr, msstyles, cpl
typefindfunctions: video/x-dirac: no extensions
typefindfunctions: multipart/x-mixed-replace: no extensions
typefindfunctions: application/x-mmsh: no extensions
typefindfunctions: video/vivo: viv
typefindfunctions: audio/x-nsf: nsf
typefindfunctions: audio/x-gym: gym
typefindfunctions: audio/x-ay: ay
typefindfunctions: audio/x-gbs: gbs
typefindfunctions: audio/x-vgm: vgm
typefindfunctions: audio/x-sap: sap
typefindfunctions: video/x-ivf: ivf
typefindfunctions: audio/x-kss: kss
typefindfunctions: application/pdf: pdf
typefindfunctions: application/msword: doc
typefindfunctions: image/vnd.adobe.photoshop: psd
typefindfunctions: image/vnd.wap.wbmp: no extensions
typefindfunctions: application/x-yuv4mpeg: no extensions
typefindfunctions: image/x-icon: no extensions
typefindfunctions: image/x-degas: no extensions
typefindfunctions: application/octet-stream: no extensions
typefindfunctions: application/x-ssa: ssa, ass
typefindfunctions: video/x-pva: pva
typefindfunctions: audio/x-xi: xi
typefindfunctions: audio/audible: aa, aax
typefindfunctions: audio/x-tap-tap: tap
typefindfunctions: audio/x-tap-dmp: dmp
openmpt: openmptdec: OpenMPT-based module music decoder
coloreffects: coloreffects: Color Look-up Table filter
coloreffects: chromahold: Chroma hold filter
rtsp: rtspsrc: RTSP packet receiver
rtsp: rtpdec: RTP Decoder
videobox: videobox: Video box filter
goom: goom: GOOM: what a GOOM!
videoscale: videoscale: Video scaler
interlace: interlace: Interlace filter
auparse: auparse: AU audio demuxer
shm: shmsrc: Shared Memory Source
shm: shmsink: Shared Memory Sink
aasink: aasink: ASCII art video sink
audiorate: audiorate: Audio rate adjuster
gio: giosink: GIO sink
gio: giosrc: GIO source
gio: giostreamsink: GIO stream sink
gio: giostreamsrc: GIO stream source
dvb: dvbsrc: DVB Source
dvb: dvbbasebin: DVB bin
gme: gmedec: Gaming console music file decoder
dtsdec: dtsdec: DTS audio decoder
mpegpsmux: mpegpsmux: MPEG Program Stream Muxer
midi: midiparse: MidiParse
jpeg: jpegenc: JPEG image encoder
jpeg: jpegdec: JPEG image decoder
bayer: bayer2rgb: Bayer to RGB decoder for cameras
bayer: rgb2bayer: RGB to Bayer converter
mms: mmssrc: MMS streaming source
dvdread: dvdreadsrc: DVD Source
videotestsrc: videotestsrc: Video test source
debugutilsbad: checksumsink: Checksum sink
debugutilsbad: fpsdisplaysink: Measure and show framerate on videosink
debugutilsbad: chopmydata: FIXME
debugutilsbad: compare: Compare buffers
debugutilsbad: debugspy: DebugSpy
debugutilsbad: watchdog: Watchdog
debugutilsbad: errorignore: Convert some GstFlowReturn types into others
debugutilsbad: fakevideosink: Fake Video Sink
debugutilsbad: testsrcbin: Generic bin
ossaudio: osssrc: Audio Source (OSS)
ossaudio: osssink: Audio Sink (OSS)
effectv: edgetv: EdgeTV effect
effectv: agingtv: AgingTV effect
effectv: dicetv: DiceTV effect
effectv: warptv: WarpTV effect
effectv: shagadelictv: ShagadelicTV
effectv: vertigotv: VertigoTV effect
effectv: revtv: RevTV effect
effectv: quarktv: QuarkTV effect
effectv: optv: OpTV effect
effectv: radioactv: RadioacTV effect
effectv: streaktv: StreakTV effect
effectv: rippletv: RippleTV effect
imagefreeze: imagefreeze: Still frame stream generator
legacyrawparse: videoparse: Video Parse
legacyrawparse: audioparse: Audio Parse
musepack: musepackdec: Musepack decoder
dashdemux: dashdemux: DASH Demuxer
rfbsrc: rfbsrc: Rfb source
aom: av1enc: AV1 Encoder
aom: av1dec: AV1 Decoder
xingmux: xingmux: MP3 Xing muxer
compositor: compositor: Compositor
xvimagesink: xvimagesink: Video sink
audiomixer: audiomixer: AudioMixer
audiomixer: liveadder: AudioMixer
audiomixer: audiointerleave: AudioInterleave
opusparse: opusparse: Opus audio parser
udp: udpsink: UDP packet sender
udp: multiudpsink: UDP packet sender
udp: dynudpsink: UDP packet sender
udp: udpsrc: UDP packet receiver
isomp4: qtdemux: QuickTime demuxer
isomp4: rtpxqtdepay: RTP packet depayloader
isomp4: qtmux: QuickTime Muxer
isomp4: mp4mux: MP4 Muxer
isomp4: ismlmux: ISML Muxer
isomp4: 3gppmux: 3GPP Muxer
isomp4: mj2mux: MJ2 Muxer
isomp4: qtmoovrecover: QT Moov Recover
speed: speed: Speed
rtp: rtpac3depay: RTP AC3 depayloader
rtp: rtpac3pay: RTP AC3 audio payloader
rtp: rtpbvdepay: RTP BroadcomVoice depayloader
rtp: rtpbvpay: RTP BV Payloader
rtp: rtpceltdepay: RTP CELT depayloader
rtp: rtpceltpay: RTP CELT payloader
rtp: rtpdvdepay: RTP DV Depayloader
rtp: rtpdvpay: RTP DV Payloader
rtp: rtpgstdepay: GStreamer depayloader
rtp: rtpgstpay: RTP GStreamer payloader
rtp: rtpilbcpay: RTP iLBC Payloader
rtp: rtpilbcdepay: RTP iLBC depayloader
rtp: rtpg722depay: RTP audio depayloader
rtp: rtpg722pay: RTP audio payloader
rtp: rtpg723depay: RTP G.723 depayloader
rtp: rtpg723pay: RTP G.723 payloader
rtp: rtpg726depay: RTP G.726 depayloader
rtp: rtpg726pay: RTP G.726 payloader
rtp: rtpg729depay: RTP G.729 depayloader
rtp: rtpg729pay: RTP G.729 payloader
rtp: rtpgsmdepay: RTP GSM depayloader
rtp: rtpgsmpay: RTP GSM payloader
rtp: rtpamrdepay: RTP AMR depayloader
rtp: rtpamrpay: RTP AMR payloader
rtp: rtppcmadepay: RTP PCMA depayloader
rtp: rtppcmudepay: RTP PCMU depayloader
rtp: rtppcmupay: RTP PCMU payloader
rtp: rtppcmapay: RTP PCMA payloader
rtp: rtpmpadepay: RTP MPEG audio depayloader
rtp: rtpmpapay: RTP MPEG audio payloader
rtp: rtpmparobustdepay: RTP MPEG audio depayloader
rtp: rtpmpvdepay: RTP MPEG video depayloader
rtp: rtpmpvpay: RTP MPEG2 ES video payloader
rtp: rtpopusdepay: RTP Opus packet depayloader
rtp: rtpopuspay: RTP Opus payloader
rtp: rtph261pay: RTP H261 packet payloader
rtp: rtph261depay: RTP H261 depayloader
rtp: rtph263ppay: RTP H263 payloader
rtp: rtph263pdepay: RTP H263 depayloader
rtp: rtph263depay: RTP H263 depayloader
rtp: rtph263pay: RTP H263 packet payloader
rtp: rtph264depay: RTP H264 depayloader
rtp: rtph264pay: RTP H264 payloader
rtp: rtph265depay: RTP H265 depayloader
rtp: rtph265pay: RTP H265 payloader
rtp: rtpj2kdepay: RTP JPEG 2000 depayloader
rtp: rtpj2kpay: RTP JPEG 2000 payloader
rtp: rtpjpegdepay: RTP JPEG depayloader
rtp: rtpjpegpay: RTP JPEG payloader
rtp: rtpklvdepay: RTP KLV Depayloader
rtp: rtpklvpay: RTP KLV Payloader
rtp: rtpL8pay: RTP audio payloader
rtp: rtpL8depay: RTP audio depayloader
rtp: rtpL16pay: RTP audio payloader
rtp: rtpL16depay: RTP audio depayloader
rtp: rtpL24pay: RTP audio payloader
rtp: rtpL24depay: RTP audio depayloader
rtp: asteriskh263: RTP Asterisk H263 depayloader
rtp: rtpmp1sdepay: RTP MPEG1 System Stream depayloader
rtp: rtpmp2tdepay: RTP MPEG Transport Stream depayloader
rtp: rtpmp2tpay: RTP MPEG2 Transport Stream payloader
rtp: rtpmp4vpay: RTP MPEG4 Video payloader
rtp: rtpmp4vdepay: RTP MPEG4 video depayloader
rtp: rtpmp4apay: RTP MPEG4 audio payloader
rtp: rtpmp4adepay: RTP MPEG4 audio depayloader
rtp: rtpmp4gdepay: RTP MPEG4 ES depayloader
rtp: rtpmp4gpay: RTP MPEG4 ES payloader
rtp: rtpqcelpdepay: RTP QCELP depayloader
rtp: rtpqdm2depay: RTP QDM2 depayloader
rtp: rtpsbcdepay: RTP SBC audio depayloader
rtp: rtpsbcpay: RTP packet payloader
rtp: rtpsirenpay: RTP Payloader for Siren Audio
rtp: rtpsirendepay: RTP Siren packet depayloader
rtp: rtpspeexpay: RTP Speex payloader
rtp: rtpspeexdepay: RTP Speex depayloader
rtp: rtpsv3vdepay: RTP SVQ3 depayloader
rtp: rtptheoradepay: RTP Theora depayloader
rtp: rtptheorapay: RTP Theora payloader
rtp: rtpvorbisdepay: RTP Vorbis depayloader
rtp: rtpvorbispay: RTP Vorbis payloader
rtp: rtpvp8depay: RTP VP8 depayloader
rtp: rtpvp8pay: RTP VP8 payloader
rtp: rtpvp9depay: RTP VP9 depayloader
rtp: rtpvp9pay: RTP VP9 payloader
rtp: rtpvrawdepay: RTP Raw Video depayloader
rtp: rtpvrawpay: RTP Raw Video payloader
rtp: rtpstreampay: RTP Stream Payloading
rtp: rtpstreamdepay: RTP Stream Depayloading
rtp: rtpredenc: Redundant Audio Data (RED) Encoder
rtp: rtpreddec: Redundant Audio Data (RED) Decoder
rtp: rtpulpfecdec: RTP FEC Decoder
rtp: rtpulpfecenc: RTP FEC Encoder
rtp: rtpstorage: RTP storage
sdpelem: sdpdemux: SDP session setup
sdpelem: sdpsrc: SDP Source
audiofx: audiopanorama: Stereo positioning
audiofx: audioinvert: Audio inversion
audiofx: audiokaraoke: AudioKaraoke
audiofx: audioamplify: Audio amplifier
audiofx: audiodynamic: Dynamic range controller
audiofx: audiocheblimit: Low pass & high pass filter
audiofx: audiochebband: Band pass & band reject filter
audiofx: audioiirfilter: Audio IIR filter
audiofx: audiowsinclimit: Low pass & high pass filter
audiofx: audiowsincband: Band pass & band reject filter
audiofx: audiofirfilter: Audio FIR filter
audiofx: audioecho: Audio echo
audiofx: scaletempo: Scaletempo
audiofx: stereo: Stereo effect
alaw: alawenc: A Law audio encoder
alaw: alawdec: A Law audio decoder
videoparsersbad: h263parse: H.263 parser
videoparsersbad: h264parse: H.264 parser
videoparsersbad: diracparse: Dirac parser
videoparsersbad: mpegvideoparse: MPEG video elementary stream parser
videoparsersbad: mpeg4videoparse: MPEG 4 video elementary stream parser
videoparsersbad: pngparse: PNG parser
videoparsersbad: jpeg2000parse: JPEG 2000 parser
videoparsersbad: h265parse: H.265 parser
videoparsersbad: vc1parse: VC1 parser
libav: avenc_comfortnoise: libav RFC 3389 comfort noise generator encoder
libav: avenc_s302m: libav SMPTE 302M encoder
libav: avenc_aac: libav AAC (Advanced Audio Coding) encoder
libav: avenc_ac3: libav ATSC A/52A (AC-3) encoder
libav: avenc_ac3_fixed: libav ATSC A/52A (AC-3) encoder
libav: avenc_alac: libav ALAC (Apple Lossless Audio Codec) encoder
libav: avenc_aptx: libav aptX (Audio Processing Technology for Bluetooth) encoder
libav: avenc_aptx_hd: libav aptX HD (Audio Processing Technology for Bluetooth) encoder
libav: avenc_dca: libav DCA (DTS Coherent Acoustics) encoder
libav: avenc_eac3: libav ATSC A/52 E-AC-3 encoder
libav: avenc_g723_1: libav G.723.1 encoder
libav: avenc_mlp: libav MLP (Meridian Lossless Packing) encoder
libav: avenc_mp2: libav MP2 (MPEG audio layer 2) encoder
libav: avenc_mp2fixed: libav MP2 fixed point (MPEG audio layer 2) encoder
libav: avenc_nellymoser: libav Nellymoser Asao encoder
libav: avenc_opus: libav Opus encoder
libav: avenc_real_144: libav RealAudio 1.0 (14.4K) encoder
libav: avenc_sbc: libav SBC (low-complexity subband codec) encoder
libav: avenc_sonic: libav Sonic encoder
libav: avenc_sonicls: libav Sonic lossless encoder
libav: avenc_truehd: libav TrueHD encoder
libav: avenc_tta: libav TTA (True Audio) encoder
libav: avenc_wavpack: libav WavPack encoder
libav: avenc_wmav1: libav Windows Media Audio 1 encoder
libav: avenc_wmav2: libav Windows Media Audio 2 encoder
libav: avenc_pcm_vidc: libav PCM Archimedes VIDC encoder
libav: avenc_roq_dpcm: libav id RoQ DPCM encoder
libav: avenc_adpcm_adx: libav SEGA CRI ADX ADPCM encoder
libav: avenc_g722: libav G.722 ADPCM encoder
libav: avenc_g726: libav G.726 ADPCM encoder
libav: avenc_g726le: libav G.726 little endian ADPCM ("right-justified") encoder
libav: avenc_adpcm_ima_qt: libav ADPCM IMA QuickTime encoder
libav: avenc_adpcm_ima_wav: libav ADPCM IMA WAV encoder
libav: avenc_adpcm_ms: libav ADPCM Microsoft encoder
libav: avenc_adpcm_swf: libav ADPCM Shockwave Flash encoder
libav: avenc_adpcm_yamaha: libav ADPCM Yamaha encoder
libav: avenc_a64multi: libav Multicolor charset for Commodore 64 encoder
libav: avenc_a64multi5: libav Multicolor charset for Commodore 64, extended with 5th color (colram) encoder
libav: avenc_alias_pix: libav Alias/Wavefront PIX image encoder
libav: avenc_amv: libav AMV Video encoder
libav: avenc_apng: libav APNG (Animated Portable Network Graphics) image encoder
libav: avenc_asv1: libav ASUS V1 encoder
libav: avenc_asv2: libav ASUS V2 encoder
libav: avenc_avrp: libav Avid 1:1 10-bit RGB Packer encoder
libav: avenc_avui: libav Avid Meridien Uncompressed encoder
libav: avenc_bmp: libav BMP (Windows and OS/2 bitmap) encoder
libav: avenc_cinepak: libav Cinepak encoder
libav: avenc_cljr: libav Cirrus Logic AccuPak encoder
libav: avenc_dnxhd: libav VC3/DNxHD encoder
libav: avenc_dpx: libav DPX (Digital Picture Exchange) image encoder
libav: avenc_dvvideo: libav DV (Digital Video) encoder
libav: avenc_ffv1: libav FFmpeg video codec #1 encoder
libav: avenc_ffvhuff: libav Huffyuv FFmpeg variant encoder
libav: avenc_fits: libav Flexible Image Transport System encoder
libav: avenc_flashsv: libav Flash Screen Video encoder
libav: avenc_flashsv2: libav Flash Screen Video Version 2 encoder
libav: avenc_flv: libav FLV / Sorenson Spark / Sorenson H.263 (Flash Video) encoder
libav: avenc_h261: libav H.261 encoder
libav: avenc_h263: libav H.263 / H.263-1996 encoder
libav: avenc_h263p: libav H.263+ / H.263-1998 / H.263 version 2 encoder
libav: avenc_hap: libav Vidvox Hap encoder
libav: avenc_huffyuv: libav Huffyuv / HuffYUV encoder
libav: avenc_jpeg2000: libav JPEG 2000 encoder
libav: avenc_jpegls: libav JPEG-LS encoder
libav: avenc_ljpeg: libav Lossless JPEG encoder
libav: avenc_magicyuv: libav MagicYUV video encoder
libav: avenc_mjpeg: libav MJPEG (Motion JPEG) encoder
libav: avenc_mpeg1video: libav MPEG-1 video encoder
libav: avenc_mpeg2video: libav MPEG-2 video encoder
libav: avenc_mpeg4: libav MPEG-4 part 2 encoder
libav: avenc_msmpeg4v2: libav MPEG-4 part 2 Microsoft variant version 2 encoder
libav: avenc_msmpeg4: libav MPEG-4 part 2 Microsoft variant version 3 encoder
libav: avenc_msvideo1: libav Microsoft Video-1 encoder
libav: avenc_pam: libav PAM (Portable AnyMap) image encoder
libav: avenc_pbm: libav PBM (Portable BitMap) image encoder
libav: avenc_pcx: libav PC Paintbrush PCX image encoder
libav: avenc_pgm: libav PGM (Portable GrayMap) image encoder
libav: avenc_pgmyuv: libav PGMYUV (Portable GrayMap YUV) image encoder
libav: avenc_png: libav PNG (Portable Network Graphics) image encoder
libav: avenc_ppm: libav PPM (Portable PixelMap) image encoder
libav: avenc_prores: libav Apple ProRes encoder
libav: avenc_prores_aw: libav Apple ProRes encoder
libav: avenc_prores_ks: libav Apple ProRes (iCodec Pro) encoder
libav: avenc_qtrle: libav QuickTime Animation (RLE) video encoder
libav: avenc_r10k: libav AJA Kona 10-bit RGB Codec encoder
libav: avenc_roqvideo: libav id RoQ video encoder
libav: avenc_rv10: libav RealVideo 1.0 encoder
libav: avenc_rv20: libav RealVideo 2.0 encoder
libav: avenc_sgi: libav SGI image encoder
libav: avenc_snow: libav Snow encoder
libav: avenc_sunrast: libav Sun Rasterfile image encoder
libav: avenc_svq1: libav Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1 encoder
libav: avenc_targa: libav Truevision Targa image encoder
libav: avenc_tiff: libav TIFF image encoder
libav: avenc_utvideo: libav Ut Video encoder
libav: avenc_vc2: libav SMPTE VC-2 encoder
libav: avenc_wmv1: libav Windows Media Video 7 encoder
libav: avenc_wmv2: libav Windows Media Video 8 encoder
libav: avenc_xbm: libav XBM (X BitMap) image encoder
libav: avenc_xface: libav X-face image encoder
libav: avenc_xwd: libav XWD (X Window Dump) image encoder
libav: avenc_zmbv: libav Zip Motion Blocks Video encoder
libav: avenc_h264_omx: libav OpenMAX IL H.264 video encoder encoder
libav: avdec_comfortnoise: libav RFC 3389 comfort noise generator decoder
libav: avdec_dvaudio: libav Ulead DV Audio decoder
libav: avdec_8svx_exp: libav 8SVX exponential decoder
libav: avdec_8svx_fib: libav 8SVX fibonacci decoder
libav: avdec_s302m: libav SMPTE 302M decoder
libav: avdec_sdx2_dpcm: libav DPCM Squareroot-Delta-Exact decoder
libav: avdec_aac: libav AAC (Advanced Audio Coding) decoder
libav: avdec_aac_fixed: libav AAC (Advanced Audio Coding) decoder
libav: avdec_aac_latm: libav AAC LATM (Advanced Audio Coding LATM syntax) decoder
libav: avdec_ac3: libav ATSC A/52A (AC-3) decoder
libav: avdec_ac3_fixed: libav ATSC A/52A (AC-3) decoder
libav: avdec_alac: libav ALAC (Apple Lossless Audio Codec) decoder
libav: avdec_als: libav MPEG-4 Audio Lossless Coding (ALS) decoder
libav: avdec_amrnb: libav AMR-NB (Adaptive Multi-Rate NarrowBand) decoder
libav: avdec_amrwb: libav AMR-WB (Adaptive Multi-Rate WideBand) decoder
libav: avdec_ape: libav Monkey's Audio decoder
libav: avdec_aptx: libav aptX (Audio Processing Technology for Bluetooth) decoder
libav: avdec_aptx_hd: libav aptX HD (Audio Processing Technology for Bluetooth) decoder
libav: avdec_atrac1: libav ATRAC1 (Adaptive TRansform Acoustic Coding) decoder
libav: avdec_atrac3: libav ATRAC3 (Adaptive TRansform Acoustic Coding 3) decoder
libav: avdec_atrac3al: libav ATRAC3 AL (Adaptive TRansform Acoustic Coding 3 Advanced Lossless) decoder
libav: avdec_atrac3plus: libav ATRAC3+ (Adaptive TRansform Acoustic Coding 3+) decoder
libav: avdec_atrac3plusal: libav ATRAC3+ AL (Adaptive TRansform Acoustic Coding 3+ Advanced Lossless) decoder
libav: avdec_atrac9: libav ATRAC9 (Adaptive TRansform Acoustic Coding 9) decoder
libav: avdec_binkaudio_dct: libav Bink Audio (DCT) decoder
libav: avdec_binkaudio_rdft: libav Bink Audio (RDFT) decoder
libav: avdec_bmv_audio: libav Discworld II BMV audio decoder
libav: avdec_cook: libav Cook / Cooker / Gecko (RealAudio G2) decoder
libav: avdec_dca: libav DCA (DTS Coherent Acoustics) decoder
libav: avdec_dolby_e: libav Dolby E decoder
libav: avdec_dsd_lsbf: libav DSD (Direct Stream Digital), least significant bit first decoder
libav: avdec_dsd_msbf: libav DSD (Direct Stream Digital), most significant bit first decoder
libav: avdec_dsd_lsbf_planar: libav DSD (Direct Stream Digital), least significant bit first, planar decoder
libav: avdec_dsd_msbf_planar: libav DSD (Direct Stream Digital), most significant bit first, planar decoder
libav: avdec_dsicinaudio: libav Delphine Software International CIN audio decoder
libav: avdec_dss_sp: libav Digital Speech Standard - Standard Play mode (DSS SP) decoder
libav: avdec_dst: libav DST (Digital Stream Transfer) decoder
libav: avdec_eac3: libav ATSC A/52B (AC-3, E-AC-3) decoder
libav: avdec_evrc: libav EVRC (Enhanced Variable Rate Codec) decoder
libav: avdec_wavesynth: libav Wave synthesis pseudo-codec decoder
libav: avdec_flac: libav FLAC (Free Lossless Audio Codec) decoder
libav: avdec_g723_1: libav G.723.1 decoder
libav: avdec_g729: libav G.729 decoder
libav: avdec_gsm: libav GSM decoder
libav: avdec_gsm_ms: libav GSM Microsoft variant decoder
libav: avdec_hcom: libav HCOM Audio decoder
libav: avdec_iac: libav IAC (Indeo Audio Coder) decoder
libav: avdec_ilbc: libav iLBC (Internet Low Bitrate Codec) decoder
libav: avdec_imc: libav IMC (Intel Music Coder) decoder
libav: avdec_interplayacm: libav Interplay ACM decoder
libav: avdec_mace3: libav MACE (Macintosh Audio Compression/Expansion) 3:1 decoder
libav: avdec_mace6: libav MACE (Macintosh Audio Compression/Expansion) 6:1 decoder
libav: avdec_metasound: libav Voxware MetaSound decoder
libav: avdec_mlp: libav MLP (Meridian Lossless Packing) decoder
libav: avdec_mp1float: libav MP1 (MPEG audio layer 1) decoder
libav: avdec_mp2float: libav MP2 (MPEG audio layer 2) decoder
libav: avdec_mp3float: libav MP3 (MPEG audio layer 3) decoder
libav: avdec_mp3: libav MP3 (MPEG audio layer 3) decoder
libav: avdec_mp3adufloat: libav ADU (Application Data Unit) MP3 (MPEG audio layer 3) decoder
libav: avdec_mp3adu: libav ADU (Application Data Unit) MP3 (MPEG audio layer 3) decoder
libav: avdec_mp3on4float: libav MP3onMP4 decoder
libav: avdec_mp3on4: libav MP3onMP4 decoder
libav: avdec_mpc7: libav Musepack SV7 decoder
libav: avdec_mpc8: libav Musepack SV8 decoder
libav: avdec_nellymoser: libav Nellymoser Asao decoder
libav: avdec_on2avc: libav On2 Audio for Video Codec decoder
libav: avdec_opus: libav Opus decoder
libav: avdec_paf_audio: libav Amazing Studio Packed Animation File Audio decoder
libav: avdec_qcelp: libav QCELP / PureVoice decoder
libav: avdec_qdm2: libav QDesign Music Codec 2 decoder
libav: avdec_qdmc: libav QDesign Music Codec 1 decoder
libav: avdec_real_144: libav RealAudio 1.0 (14.4K) decoder
libav: avdec_real_288: libav RealAudio 2.0 (28.8K) decoder
libav: avdec_ralf: libav RealAudio Lossless decoder
libav: avdec_sbc: libav SBC (low-complexity subband codec) decoder
libav: avdec_shorten: libav Shorten decoder
libav: avdec_sipr: libav RealAudio SIPR / ACELP.NET decoder
libav: avdec_smackaud: libav Smacker audio decoder
libav: avdec_sonic: libav Sonic decoder
libav: avdec_tak: libav TAK (Tom's lossless Audio Kompressor) decoder
libav: avdec_truehd: libav TrueHD decoder
libav: avdec_truespeech: libav DSP Group TrueSpeech decoder
libav: avdec_tta: libav TTA (True Audio) decoder
libav: avdec_twinvq: libav VQF TwinVQ decoder
libav: avdec_vmdaudio: libav Sierra VMD audio decoder
libav: avdec_wmalossless: libav Windows Media Audio Lossless decoder
libav: avdec_wmapro: libav Windows Media Audio 9 Professional decoder
libav: avdec_wmav1: libav Windows Media Audio 1 decoder
libav: avdec_wmav2: libav Windows Media Audio 2 decoder
libav: avdec_wmavoice: libav Windows Media Audio Voice decoder
libav: avdec_ws_snd1: libav Westwood Audio (SND1) decoder
libav: avdec_xma1: libav Xbox Media Audio 1 decoder
libav: avdec_xma2: libav Xbox Media Audio 2 decoder
libav: avdec_pcm_lxf: libav PCM signed 20-bit little-endian planar decoder
libav: avdec_pcm_vidc: libav PCM Archimedes VIDC decoder
libav: avdec_gremlin_dpcm: libav DPCM Gremlin decoder
libav: avdec_interplay_dpcm: libav DPCM Interplay decoder
libav: avdec_roq_dpcm: libav DPCM id RoQ decoder
libav: avdec_sol_dpcm: libav DPCM Sol decoder
libav: avdec_xan_dpcm: libav DPCM Xan decoder
libav: avdec_adpcm_4xm: libav ADPCM 4X Movie decoder
libav: avdec_adpcm_adx: libav SEGA CRI ADX ADPCM decoder
libav: avdec_adpcm_afc: libav ADPCM Nintendo Gamecube AFC decoder
libav: avdec_adpcm_agm: libav ADPCM AmuseGraphics Movie decoder
libav: avdec_adpcm_aica: libav ADPCM Yamaha AICA decoder
libav: avdec_adpcm_ct: libav ADPCM Creative Technology decoder
libav: avdec_adpcm_dtk: libav ADPCM Nintendo Gamecube DTK decoder
libav: avdec_adpcm_ea: libav ADPCM Electronic Arts decoder
libav: avdec_adpcm_ea_maxis_xa: libav ADPCM Electronic Arts Maxis CDROM XA decoder
libav: avdec_adpcm_ea_r1: libav ADPCM Electronic Arts R1 decoder
libav: avdec_adpcm_ea_r2: libav ADPCM Electronic Arts R2 decoder
libav: avdec_adpcm_ea_r3: libav ADPCM Electronic Arts R3 decoder
libav: avdec_adpcm_ea_xas: libav ADPCM Electronic Arts XAS decoder
libav: avdec_g722: libav G.722 ADPCM decoder
libav: avdec_g726: libav G.726 ADPCM decoder
libav: avdec_g726le: libav G.726 ADPCM little-endian decoder
libav: avdec_adpcm_ima_amv: libav ADPCM IMA AMV decoder
libav: avdec_adpcm_ima_apc: libav ADPCM IMA CRYO APC decoder
libav: avdec_adpcm_ima_dat4: libav ADPCM IMA Eurocom DAT4 decoder
libav: avdec_adpcm_ima_dk3: libav ADPCM IMA Duck DK3 decoder
libav: avdec_adpcm_ima_dk4: libav ADPCM IMA Duck DK4 decoder
libav: avdec_adpcm_ima_ea_eacs: libav ADPCM IMA Electronic Arts EACS decoder
libav: avdec_adpcm_ima_ea_sead: libav ADPCM IMA Electronic Arts SEAD decoder
libav: avdec_adpcm_ima_iss: libav ADPCM IMA Funcom ISS decoder
libav: avdec_adpcm_ima_oki: libav ADPCM IMA Dialogic OKI decoder
libav: avdec_adpcm_ima_qt: libav ADPCM IMA QuickTime decoder
libav: avdec_adpcm_ima_rad: libav ADPCM IMA Radical decoder
libav: avdec_adpcm_ima_smjpeg: libav ADPCM IMA Loki SDL MJPEG decoder
libav: avdec_adpcm_ima_wav: libav ADPCM IMA WAV decoder
libav: avdec_adpcm_ima_ws: libav ADPCM IMA Westwood decoder
libav: avdec_adpcm_ms: libav ADPCM Microsoft decoder
libav: avdec_adpcm_mtaf: libav ADPCM MTAF decoder
libav: avdec_adpcm_psx: libav ADPCM Playstation decoder
libav: avdec_adpcm_sbpro_2: libav ADPCM Sound Blaster Pro 2-bit decoder
libav: avdec_adpcm_sbpro_3: libav ADPCM Sound Blaster Pro 2.6-bit decoder
libav: avdec_adpcm_sbpro_4: libav ADPCM Sound Blaster Pro 4-bit decoder
libav: avdec_adpcm_swf: libav ADPCM Shockwave Flash decoder
libav: avdec_adpcm_thp: libav ADPCM Nintendo THP decoder
libav: avdec_adpcm_thp_le: libav ADPCM Nintendo THP (little-endian) decoder
libav: avdec_adpcm_vima: libav LucasArts VIMA audio decoder
libav: avdec_adpcm_xa: libav ADPCM CDROM XA decoder
libav: avdec_adpcm_yamaha: libav ADPCM Yamaha decoder
libav: avdec_aasc: libav Autodesk RLE decoder
libav: avdec_aic: libav Apple Intermediate Codec decoder
libav: avdec_alias_pix: libav Alias/Wavefront PIX image decoder
libav: avdec_agm: libav Amuse Graphics Movie decoder
libav: avdec_amv: libav AMV Video decoder
libav: avdec_anm: libav Deluxe Paint Animation decoder
libav: avdec_ansi: libav ASCII/ANSI art decoder
libav: avdec_apng: libav APNG (Animated Portable Network Graphics) image decoder
libav: avdec_arbc: libav Gryphon's Anim Compressor decoder
libav: avdec_asv1: libav ASUS V1 decoder
libav: avdec_asv2: libav ASUS V2 decoder
libav: avdec_aura: libav Auravision AURA decoder
libav: avdec_aura2: libav Auravision Aura 2 decoder
libav: avdec_avrp: libav Avid 1:1 10-bit RGB Packer decoder
libav: avdec_avrn: libav Avid AVI Codec decoder
libav: avdec_avs: libav AVS (Audio Video Standard) video decoder
libav: avdec_avui: libav Avid Meridien Uncompressed decoder
libav: avdec_bethsoftvid: libav Bethesda VID video decoder
libav: avdec_bfi: libav Brute Force & Ignorance decoder
libav: avdec_binkvideo: libav Bink video decoder
libav: avdec_bitpacked: libav Bitpacked decoder
libav: avdec_bmp: libav BMP (Windows and OS/2 bitmap) decoder
libav: avdec_bmv_video: libav Discworld II BMV video decoder
libav: avdec_brender_pix: libav BRender PIX image decoder
libav: avdec_c93: libav Interplay C93 decoder
libav: avdec_cavs: libav Chinese AVS (Audio Video Standard) (AVS1-P2, JiZhun profile) decoder
libav: avdec_cdgraphics: libav CD Graphics video decoder
libav: avdec_cdxl: libav Commodore CDXL video decoder
libav: avdec_cfhd: libav Cineform HD decoder
libav: avdec_cinepak: libav Cinepak decoder
libav: avdec_clearvideo: libav Iterated Systems ClearVideo decoder
libav: avdec_cljr: libav Cirrus Logic AccuPak decoder
libav: avdec_cllc: libav Canopus Lossless Codec decoder
libav: avdec_cpia: libav CPiA video format decoder
libav: avdec_camstudio: libav CamStudio decoder
libav: avdec_cyuv: libav Creative YUV (CYUV) decoder
libav: avdec_dds: libav DirectDraw Surface image decoder decoder
libav: avdec_dfa: libav Chronomaster DFA decoder
libav: avdec_dirac: libav BBC Dirac VC-2 decoder
libav: avdec_dnxhd: libav VC3/DNxHD decoder
libav: avdec_dpx: libav DPX (Digital Picture Exchange) image decoder
libav: avdec_dsicinvideo: libav Delphine Software International CIN video decoder
libav: avdec_dvvideo: libav DV (Digital Video) decoder
libav: avdec_dxa: libav Feeble Files/ScummVM DXA decoder
libav: avdec_dxtory: libav Dxtory decoder
libav: avdec_dxv: libav Resolume DXV decoder
libav: avdec_eacmv: libav Electronic Arts CMV video decoder
libav: avdec_eamad: libav Electronic Arts Madcow Video decoder
libav: avdec_eatgq: libav Electronic Arts TGQ video decoder
libav: avdec_eatgv: libav Electronic Arts TGV video decoder
libav: avdec_eatqi: libav Electronic Arts TQI Video decoder
libav: avdec_8bps: libav QuickTime 8BPS video decoder
libav: avdec_escape124: libav Escape 124 decoder
libav: avdec_escape130: libav Escape 130 decoder
libav: avdec_exr: libav OpenEXR image decoder
libav: avdec_ffv1: libav FFmpeg video codec #1 decoder
libav: avdec_ffvhuff: libav Huffyuv FFmpeg variant decoder
libav: avdec_fic: libav Mirillis FIC decoder
libav: avdec_fits: libav Flexible Image Transport System decoder
libav: avdec_flashsv: libav Flash Screen Video v1 decoder
libav: avdec_flashsv2: libav Flash Screen Video v2 decoder
libav: avdec_flic: libav Autodesk Animator Flic video decoder
libav: avdec_flv: libav FLV / Sorenson Spark / Sorenson H.263 (Flash Video) decoder
libav: avdec_fmvc: libav FM Screen Capture Codec decoder
libav: avdec_4xm: libav 4X Movie decoder
libav: avdec_fraps: libav Fraps decoder
libav: avdec_frwu: libav Forward Uncompressed decoder
libav: avdec_g2m: libav Go2Meeting decoder
libav: avdec_gdv: libav Gremlin Digital Video decoder
libav: avdec_gif: libav GIF (Graphics Interchange Format) decoder
libav: avdec_h261: libav H.261 decoder
libav: avdec_h263: libav H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2 decoder
libav: avdec_h263i: libav Intel H.263 decoder
libav: avdec_h263p: libav H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2 decoder
libav: avdec_h264: libav H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 decoder
libav: avdec_hap: libav Vidvox Hap decoder
libav: avdec_h265: libav HEVC (High Efficiency Video Coding) decoder
libav: avdec_hnm4video: libav HNM 4 video decoder
libav: avdec_hq_hqa: libav Canopus HQ/HQA decoder
libav: avdec_hqx: libav Canopus HQX decoder
libav: avdec_huffyuv: libav Huffyuv / HuffYUV decoder
libav: avdec_hymt: libav HuffYUV MT decoder
libav: avdec_idcinvideo: libav id Quake II CIN video decoder
libav: avdec_iff: libav IFF ACBM/ANIM/DEEP/ILBM/PBM/RGB8/RGBN decoder
libav: avdec_imm4: libav Infinity IMM4 decoder
libav: avdec_indeo2: libav Intel Indeo 2 decoder
libav: avdec_indeo3: libav Intel Indeo 3 decoder
libav: avdec_indeo4: libav Intel Indeo Video Interactive 4 decoder
libav: avdec_indeo5: libav Intel Indeo Video Interactive 5 decoder
libav: avdec_interplayvideo: libav Interplay MVE video decoder
libav: avdec_jpeg2000: libav JPEG 2000 decoder
libav: avdec_jpegls: libav JPEG-LS decoder
libav: avdec_jv: libav Bitmap Brothers JV video decoder
libav: avdec_kgv1: libav Kega Game Video decoder
libav: avdec_kmvc: libav Karl Morton's video codec decoder
libav: avdec_lagarith: libav Lagarith lossless decoder
libav: avdec_loco: libav LOCO decoder
libav: avdec_lscr: libav LEAD Screen Capture decoder
libav: avdec_m101: libav Matrox Uncompressed SD decoder
libav: avdec_magicyuv: libav MagicYUV video decoder
libav: avdec_mdec: libav Sony PlayStation MDEC (Motion DECoder) decoder
libav: avdec_mimic: libav Mimic decoder
libav: avdec_mjpeg: libav MJPEG (Motion JPEG) decoder
libav: avdec_mjpegb: libav Apple MJPEG-B decoder
libav: avdec_mmvideo: libav American Laser Games MM Video decoder
libav: avdec_motionpixels: libav Motion Pixels video decoder
libav: avdec_mpeg2video: libav MPEG-2 video decoder
libav: avdec_mpeg4: libav MPEG-4 part 2 decoder
libav: avdec_mpegvideo: libav MPEG-1 video decoder
libav: avdec_msa1: libav MS ATC Screen decoder
libav: avdec_mscc: libav Mandsoft Screen Capture Codec decoder
libav: avdec_msmpeg4v1: libav MPEG-4 part 2 Microsoft variant version 1 decoder
libav: avdec_msmpeg4v2: libav MPEG-4 part 2 Microsoft variant version 2 decoder
libav: avdec_msmpeg4: libav MPEG-4 part 2 Microsoft variant version 3 decoder
libav: avdec_msrle: libav Microsoft RLE decoder
libav: avdec_mss1: libav MS Screen 1 decoder
libav: avdec_mss2: libav MS Windows Media Video V9 Screen decoder
libav: avdec_msvideo1: libav Microsoft Video 1 decoder
libav: avdec_mszh: libav LCL (LossLess Codec Library) MSZH decoder
libav: avdec_mts2: libav MS Expression Encoder Screen decoder
libav: avdec_mvc1: libav Silicon Graphics Motion Video Compressor 1 decoder
libav: avdec_mvc2: libav Silicon Graphics Motion Video Compressor 2 decoder
libav: avdec_mwsc: libav MatchWare Screen Capture Codec decoder
libav: avdec_mxpeg: libav Mobotix MxPEG video decoder
libav: avdec_nuv: libav NuppelVideo/RTJPEG decoder
libav: avdec_paf_video: libav Amazing Studio Packed Animation File Video decoder
libav: avdec_pam: libav PAM (Portable AnyMap) image decoder
libav: avdec_pbm: libav PBM (Portable BitMap) image decoder
libav: avdec_pcx: libav PC Paintbrush PCX image decoder
libav: avdec_pgm: libav PGM (Portable GrayMap) image decoder
libav: avdec_pgmyuv: libav PGMYUV (Portable GrayMap YUV) image decoder
libav: avdec_pictor: libav Pictor/PC Paint decoder
libav: avdec_pixlet: libav Apple Pixlet decoder
libav: avdec_png: libav PNG (Portable Network Graphics) image decoder
libav: avdec_ppm: libav PPM (Portable PixelMap) image decoder
libav: avdec_prores: libav ProRes (iCodec Pro) decoder
libav: avdec_prosumer: libav Brooktree ProSumer Video decoder
libav: avdec_psd: libav Photoshop PSD file decoder
libav: avdec_ptx: libav V.Flash PTX image decoder
libav: avdec_qdraw: libav Apple QuickDraw decoder
libav: avdec_qpeg: libav Q-team QPEG decoder
libav: avdec_qtrle: libav QuickTime Animation (RLE) video decoder
libav: avdec_r10k: libav AJA Kona 10-bit RGB Codec decoder
libav: avdec_rasc: libav RemotelyAnywhere Screen Capture decoder
libav: avdec_rl2: libav RL2 video decoder
libav: avdec_roqvideo: libav id RoQ video decoder
libav: avdec_rpza: libav QuickTime video (RPZA) decoder
libav: avdec_rscc: libav innoHeim/Rsupport Screen Capture Codec decoder
libav: avdec_rv10: libav RealVideo 1.0 decoder
libav: avdec_rv20: libav RealVideo 2.0 decoder
libav: avdec_rv30: libav RealVideo 3.0 decoder
libav: avdec_rv40: libav RealVideo 4.0 decoder
libav: avdec_sanm: libav LucasArts SANM/Smush video decoder
libav: avdec_scpr: libav ScreenPressor decoder
libav: avdec_screenpresso: libav Screenpresso decoder
libav: avdec_sgi: libav SGI image decoder
libav: avdec_sgirle: libav Silicon Graphics RLE 8-bit video decoder
libav: avdec_sheervideo: libav BitJazz SheerVideo decoder
libav: avdec_smackvid: libav Smacker video decoder
libav: avdec_smc: libav QuickTime Graphics (SMC) decoder
libav: avdec_smvjpeg: libav SMV JPEG decoder
libav: avdec_snow: libav Snow decoder
libav: avdec_sp5x: libav Sunplus JPEG (SP5X) decoder
libav: avdec_speedhq: libav NewTek SpeedHQ decoder
libav: avdec_srgc: libav Screen Recorder Gold Codec decoder
libav: avdec_sunrast: libav Sun Rasterfile image decoder
libav: avdec_svq1: libav Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1 decoder
libav: avdec_svq3: libav Sorenson Vector Quantizer 3 / Sorenson Video 3 / SVQ3 decoder
libav: avdec_targa: libav Truevision Targa image decoder
libav: avdec_targa_y216: libav Pinnacle TARGA CineWave YUV16 decoder
libav: avdec_tdsc: libav TDSC decoder
libav: avdec_thp: libav Nintendo Gamecube THP video decoder
libav: avdec_tiertexseqvideo: libav Tiertex Limited SEQ video decoder
libav: avdec_tiff: libav TIFF image decoder
libav: avdec_tmv: libav 8088flex TMV decoder
libav: avdec_truemotion1: libav Duck TrueMotion 1.0 decoder
libav: avdec_truemotion2: libav Duck TrueMotion 2.0 decoder
libav: avdec_truemotion2rt: libav Duck TrueMotion 2.0 Real Time decoder
libav: avdec_camtasia: libav TechSmith Screen Capture Codec decoder
libav: avdec_tscc2: libav TechSmith Screen Codec 2 decoder
libav: avdec_txd: libav Renderware TXD (TeXture Dictionary) image decoder
libav: avdec_ultimotion: libav IBM UltiMotion decoder
libav: avdec_utvideo: libav Ut Video decoder
libav: avdec_vb: libav Beam Software VB decoder
libav: avdec_vble: libav VBLE Lossless Codec decoder
libav: avdec_vc1: libav SMPTE VC-1 decoder
libav: avdec_vc1image: libav Windows Media Video 9 Image v2 decoder
libav: avdec_vcr1: libav ATI VCR1 decoder
libav: avdec_vmdvideo: libav Sierra VMD video decoder
libav: avdec_vmnc: libav VMware Screen Codec / VMware Video decoder
libav: avdec_vp3: libav On2 VP3 decoder
libav: avdec_vp4: libav On2 VP4 decoder
libav: avdec_vp5: libav On2 VP5 decoder
libav: avdec_vp6: libav On2 VP6 decoder
libav: avdec_vp6a: libav On2 VP6 (Flash version, with alpha channel) decoder
libav: avdec_vp6f: libav On2 VP6 (Flash version) decoder
libav: avdec_vp7: libav On2 VP7 decoder
libav: avdec_vp8: libav On2 VP8 decoder
libav: avdec_vp9: libav Google VP9 decoder
libav: avdec_vqavideo: libav Westwood Studios VQA (Vector Quantized Animation) video decoder
libav: avdec_webp: libav WebP image decoder
libav: avdec_wcmv: libav WinCAM Motion Video decoder
libav: avdec_wmv1: libav Windows Media Video 7 decoder
libav: avdec_wmv2: libav Windows Media Video 8 decoder
libav: avdec_wmv3: libav Windows Media Video 9 decoder
libav: avdec_wmv3image: libav Windows Media Video 9 Image decoder
libav: avdec_wnv1: libav Winnov WNV1 decoder
libav: avdec_xan_wc3: libav Wing Commander III / Xan decoder
libav: avdec_xan_wc4: libav Wing Commander IV / Xxan decoder
libav: avdec_xbm: libav XBM (X BitMap) image decoder
libav: avdec_xface: libav X-face image decoder
libav: avdec_xl: libav Miro VideoXL decoder
libav: avdec_xpm: libav XPM (X PixMap) image decoder
libav: avdec_xwd: libav XWD (X Window Dump) image decoder
libav: avdec_ylc: libav YUY2 Lossless Codec decoder
libav: avdec_yop: libav Psygnosis YOP Video decoder
libav: avdec_zerocodec: libav ZeroCodec Lossless Video decoder
libav: avdec_zmbv: libav Zip Motion Blocks Video decoder
libav: avdec_bintext: libav Binary text decoder
libav: avdec_xbin: libav eXtended BINary text decoder
libav: avdec_idf: libav iCEDraw text decoder
libav: avdemux_aiff: libav Audio IFF demuxer
libav: avdemux_ape: libav Monkey's Audio demuxer
libav: avdemux_avs: libav Argonaut Games Creature Shock demuxer
libav: avtype_avs: no extensions
libav: avdemux_bfstm: libav BFSTM (Binary Cafe Stream) demuxer
libav: avtype_bfstm: bfstm, bcstm
libav: avdemux_brstm: libav BRSTM (Binary Revolution Stream) demuxer
libav: avtype_brstm: brstm
libav: avdemux_daud: libav D-Cinema audio demuxer
libav: avtype_daud: 302, daud
libav: avdemux_dsf: libav DSD Stream File (DSF) demuxer
libav: avtype_dsf: no extensions
libav: avdemux_ea: libav Electronic Arts Multimedia demuxer
libav: avtype_ea: no extensions
libav: avdemux_4xm: libav 4X Technologies demuxer
libav: avtype_4xm: no extensions
libav: avdemux_gif: libav CompuServe Graphics Interchange Format (GIF) demuxer
libav: avdemux_gxf: libav GXF (General eXchange Format) demuxer
libav: avtype_gxf: no extensions
libav: avdemux_idcin: libav id Cinematic demuxer
libav: avtype_idcin: no extensions
libav: avdemux_iff: libav IFF (Interchange File Format) demuxer
libav: avtype_iff: no extensions
libav: avdemux_ipmovie: libav Interplay MVE demuxer
libav: avtype_ipmovie: no extensions
libav: avdemux_ivf: libav On2 IVF demuxer
libav: avdemux_mm: libav American Laser Games MM demuxer
libav: avtype_mm: no extensions
libav: avdemux_mmf: libav Yamaha SMAF demuxer
libav: avtype_mmf: no extensions
libav: avdemux_mpc: libav Musepack demuxer
libav: avdemux_mpc8: libav Musepack SV8 demuxer
libav: avdemux_mxf: libav MXF (Material eXchange Format) demuxer
libav: avdemux_nsv: libav Nullsoft Streaming Video demuxer
libav: avtype_nsv: no extensions
libav: avdemux_nut: libav NUT demuxer
libav: avtype_nut: nut
libav: avdemux_nuv: libav NuppelVideo demuxer
libav: avdemux_pva: libav TechnoTrend PVA demuxer
libav: avdemux_film_cpk: libav Sega FILM / CPK demuxer
libav: avtype_film_cpk: no extensions
libav: avdemux_smk: libav Smacker demuxer
libav: avtype_smk: no extensions
libav: avdemux_sol: libav Sierra SOL demuxer
libav: avtype_sol: no extensions
libav: avdemux_psxstr: libav Sony Playstation STR demuxer
libav: avtype_psxstr: no extensions
libav: avdemux_tta: libav TTA (True Audio) demuxer
libav: avdemux_vmd: libav Sierra VMD demuxer
libav: avtype_vmd: no extensions
libav: avdemux_voc: libav Creative Voice demuxer
libav: avdemux_wc3movie: libav Wing Commander III movie demuxer
libav: avtype_wc3movie: no extensions
libav: avdemux_wsaud: libav Westwood Studios audio demuxer
libav: avtype_wsaud: no extensions
libav: avdemux_wsvqa: libav Westwood Studios VQA demuxer
libav: avtype_wsvqa: no extensions
libav: avdemux_yuv4mpegpipe: libav YUV4MPEG pipe demuxer
libav: avtype_yuv4mpegpipe: y4m
libav: avmux_a64: libav a64 - video for Commodore 64 muxer
libav: avmux_adts: libav ADTS AAC (Advanced Audio Coding) muxer (not recommended, use aacparse instead)
libav: avmux_adx: libav CRI ADX muxer
libav: avmux_aiff: libav Audio IFF muxer (not recommended, use aiffmux instead)
libav: avmux_amr: libav 3GPP AMR muxer
libav: avmux_apng: libav Animated Portable Network Graphics muxer
libav: avmux_asf: libav ASF (Advanced / Active Streaming Format) muxer (not recommended, use asfmux instead)
libav: avmux_ast: libav AST (Audio Stream) muxer
libav: avmux_asf_stream: libav ASF (Advanced / Active Streaming Format) muxer (not recommended, use asfmux instead)
libav: avmux_au: libav Sun AU muxer
libav: avmux_avi: libav AVI (Audio Video Interleaved) muxer (not recommended, use avimux instead)
libav: avmux_avm2: libav SWF (ShockWave Flash) (AVM2) muxer
libav: avmux_bit: libav G.729 BIT file format muxer
libav: avmux_caf: libav Apple CAF (Core Audio Format) muxer
libav: avmux_codec2: libav codec2 .c2 muxer muxer
libav: avmux_dash: libav DASH Muxer muxer
libav: avmux_daud: libav D-Cinema audio muxer
libav: avmux_dv: libav DV (Digital Video) muxer
libav: avmux_f4v: libav F4V Adobe Flash Video muxer
libav: avmux_filmstrip: libav Adobe Filmstrip muxer
libav: avmux_fits: libav Flexible Image Transport System muxer
libav: avmux_flv: libav FLV (Flash Video) muxer (not recommended, use flvmux instead)
libav: avmux_gxf: libav GXF (General eXchange Format) muxer
libav: avmux_hash: libav Hash testing muxer
libav: avmux_hds: libav HDS Muxer muxer
libav: avmux_hls: libav Apple HTTP Live Streaming muxer
libav: avmux_ico: libav Microsoft Windows ICO muxer
libav: avmux_ilbc: libav iLBC storage muxer
libav: avmux_ipod: libav iPod H.264 MP4 (MPEG-4 Part 14) muxer
libav: avmux_ircam: libav Berkeley/IRCAM/CARL Sound Format muxer
libav: avmux_ismv: libav ISMV/ISMA (Smooth Streaming) muxer
libav: avmux_ivf: libav On2 IVF muxer
libav: avmux_latm: libav LOAS/LATM muxer
libav: avmux_md5: libav MD5 testing muxer
libav: avmux_matroska: libav Matroska muxer (not recommended, use matroskamux instead)
libav: avmux_mmf: libav Yamaha SMAF muxer
libav: avmux_mov: libav QuickTime / MOV muxer (not recommended, use qtmux instead)
libav: avmux_mp2: libav MP2 (MPEG audio layer 2) formatter (not recommended, use id3v2mux instead)
libav: avmux_mp3: libav MP3 (MPEG audio layer 3) formatter (not recommended, use id3v2mux instead)
libav: avmux_mp4: libav MP4 (MPEG-4 Part 14) muxer (not recommended, use mp4mux instead)
libav: avmux_mpeg: libav MPEG-1 Systems / MPEG program stream muxer
libav: avmux_vcd: libav MPEG-1 Systems / MPEG program stream (VCD) muxer
libav: avmux_dvd: libav MPEG-2 PS (DVD VOB) muxer
libav: avmux_svcd: libav MPEG-2 PS (SVCD) muxer
libav: avmux_vob: libav MPEG-2 PS (VOB) muxer
libav: avmux_mpegts: libav MPEG-TS (MPEG-2 Transport Stream) muxer (not recommended, use mpegtsmux instead)
libav: avmux_mpjpeg: libav MIME multipart JPEG muxer (not recommended, use multipartmux instead)
libav: avmux_mxf: libav MXF (Material eXchange Format) muxer (not recommended, use mxfmux instead)
libav: avmux_mxf_d10: libav MXF (Material eXchange Format) D-10 Mapping muxer
libav: avmux_mxf_opatom: libav MXF (Material eXchange Format) Operational Pattern Atom muxer
libav: avmux_nut: libav NUT muxer
libav: avmux_oga: libav Ogg Audio muxer
libav: avmux_ogg: libav Ogg muxer (not recommended, use oggmux instead)
libav: avmux_ogv: libav Ogg Video muxer
libav: avmux_oma: libav Sony OpenMG audio muxer
libav: avmux_opus: libav Ogg Opus muxer
libav: avmux_vidc: libav PCM Archimedes VIDC muxer
libav: avmux_psp: libav PSP MP4 (MPEG-4 Part 14) muxer
libav: avmux_rm: libav RealMedia muxer
libav: avmux_rso: libav Lego Mindstorms RSO muxer
libav: avmux_rtsp: libav RTSP output muxer
libav: avmux_sap: libav SAP output muxer
libav: avmux_film_cpk: libav Sega FILM / CPK muxer
libav: avmux_singlejpeg: libav JPEG single image muxer
libav: avmux_smjpeg: libav Loki SDL MJPEG muxer
libav: avmux_smoothstreaming: libav Smooth Streaming Muxer muxer
libav: avmux_sox: libav SoX native muxer
libav: avmux_spx: libav Ogg Speex muxer
libav: avmux_spdif: libav IEC 61937 (used on S/PDIF - IEC958) muxer
libav: avmux_swf: libav SWF (ShockWave Flash) muxer
libav: avmux_3g2: libav 3GP2 (3GPP2 file format) muxer
libav: avmux_3gp: libav 3GP (3GPP file format) muxer (not recommended, use gppmux instead)
libav: avmux_mkvtimestamp_v2: libav extract pts as timecode v2 format, as defined by mkvtoolnix muxer
libav: avmux_tta: libav TTA (True Audio) muxer
libav: avmux_uncodedframecrc: libav uncoded framecrc testing muxer
libav: avmux_vc1test: libav VC-1 test bitstream muxer
libav: avmux_voc: libav Creative Voice muxer
libav: avmux_w64: libav Sony Wave64 muxer
libav: avmux_wav: libav WAV / WAVE (Waveform Audio) muxer (not recommended, use wavenc instead)
libav: avmux_webp: libav WebP muxer
libav: avmux_wtv: libav Windows Television (WTV) muxer
libav: avmux_yuv4mpegpipe: libav YUV4MPEG pipe muxer (not recommended, use y4menc instead)
libav: avmux_chromaprint: libav Chromaprint muxer
libav: avdeinterlace: libav Deinterlace element
matroska: matroskademux: Matroska demuxer
matroska: matroskaparse: Matroska parser
matroska: matroskamux: Matroska muxer
matroska: webmmux: WebM muxer
mpeg2dec: mpeg2dec: mpeg1 and mpeg2 video decoder
gdp: gdpdepay: GDP Depayloader
gdp: gdppay: GDP Payloader
videoframe_audiolevel: videoframe-audiolevel: Video-frame audio level
avi: avidemux: Avi demuxer
avi: avimux: Avi muxer
avi: avisubtitle: Avi subtitle parser
pnm: pnmdec: PNM image decoder
pnm: pnmenc: PNM image encoder
a52dec: a52dec: ATSC A/52 audio decoder
assrender: assrender: ASS/SSA Render
sid: siddec: Sid decoder
shout2: shout2send: Icecast network sink
audioresample: audioresample: Audio resampler
flxdec: flxdec: FLX video decoder
pbtypes: GstVideoMultiviewFlagsSet (GstDynamicTypeFactory)
webp: webpdec: WebP image decoder
webp: webpenc: WEBP image encoder
encoding: encodebin: Encoder Bin
app: appsrc: AppSrc
app: appsink: AppSink
twolame: twolamemp2enc: TwoLAME mp2 encoder
kate: katedec: Kate stream text decoder
kate: kateenc: Kate stream encoder
kate: kateparse: Kate stream parser
kate: katetag: Kate stream tagger
uvch264: uvch264mjpgdemux: UVC H264 MJPG Demuxer
uvch264: uvch264src: UVC H264 Source
id3demux: id3demux: ID3 tag demuxer
flite: flitetestsrc: Flite speech test source
webrtcdsp: webrtcdsp: Voice Processor (AGC, AEC, filters, etc.)
webrtcdsp: webrtcechoprobe: Accoustic Echo Canceller probe
soup: souphttpsrc: HTTP client source
soup: souphttpclientsink: HTTP client sink
oss4: oss4sink: OSS v4 Audio Sink
oss4: oss4src: OSS v4 Audio Source
removesilence: removesilence: RemoveSilence
monoscope: monoscope: Monoscope
wavparse: wavparse: WAV audio demuxer
dc1394: dc1394src: 1394 IIDC Video Source
dv: dvdemux: DV system stream demuxer
dv: dvdec: DV video decoder
ogg: oggdemux: Ogg demuxer
ogg: oggmux: Ogg muxer
ogg: ogmaudioparse: OGM audio stream parser
ogg: ogmvideoparse: OGM video stream parser
ogg: ogmtextparse: OGM text stream parser
ogg: oggparse: Ogg parser
ogg: oggaviparse: Ogg AVI parser
pcapparse: pcapparse: PCapParse
pcapparse: irtspparse: IRTSPParse
multifile: multifilesrc: Multi-File Source
multifile: multifilesink: Multi-File Sink
multifile: splitfilesrc: Split-File Source
multifile: splitmuxsink: Split Muxing Bin
multifile: splitmuxsrc: Split File Demuxing Bin
video4linux2: v4l2src: Video (video4linux2) Source
video4linux2: v4l2sink: Video (video4linux2) Sink
video4linux2: v4l2radio: Radio (video4linux2) Tuner
video4linux2: v4l2deviceprovider (GstDeviceProviderFactory)
audioconvert: audioconvert: Audio converter
cacasink: cacasink: A colored ASCII art video sink
playback: playbin: Player Bin 2
playback: playbin3: Player Bin 3
playback: playsink: Player Sink
playback: subtitleoverlay: Subtitle Overlay
playback: streamsynchronizer: Stream Synchronizer
playback: decodebin: Decoder Bin
playback: decodebin3: Decoder Bin 3
playback: uridecodebin: URI Decoder
playback: uridecodebin3: URI Decoder
playback: urisourcebin: URI reader
playback: parsebin: Parse Bin
png: pngdec: PNG image decoder
png: pngenc: PNG image encoder
mpg123: mpg123audiodec: mpg123 mp3 decoder
equalizer: equalizer-nbands: N Band Equalizer
equalizer: equalizer-3bands: 3 Band Equalizer
equalizer: equalizer-10bands: 10 Band Equalizer
y4mdec: y4mdec: YUV4MPEG demuxer/decoder
opus: opusenc: Opus audio encoder
opus: opusdec: Opus audio decoder
videosignal: videoanalyse: Video analyser
videosignal: simplevideomarkdetect: Video detecter
videosignal: simplevideomark: Video marker
rtpmanager: rtpbin: RTP Bin
rtpmanager: rtpjitterbuffer: RTP packet jitter-buffer
rtpmanager: rtpptdemux: RTP Demux
rtpmanager: rtpsession: RTP Session
rtpmanager: rtprtxqueue: RTP Retransmission Queue
rtpmanager: rtprtxreceive: RTP Retransmission receiver
rtpmanager: rtprtxsend: RTP Retransmission Sender
rtpmanager: rtpssrcdemux: RTP SSRC Demux
rtpmanager: rtpmux: RTP muxer
rtpmanager: rtpdtmfmux: RTP muxer
rtpmanager: rtpfunnel: RTP funnel
y4menc: y4menc: YUV4MPEG video encoder
fieldanalysis: fieldanalysis: Video field analysis
gdkpixbuf: gdkpixbufdec: GdkPixbuf image decoder
gdkpixbuf: gdkpixbufoverlay: GdkPixbuf Overlay
gdkpixbuf: gdkpixbufsink: GdkPixbuf sink
vorbis: vorbisenc: Vorbis audio encoder
vorbis: vorbisdec: Vorbis audio decoder
vorbis: vorbisparse: VorbisParse
vorbis: vorbistag: VorbisTag
gsm: gsmenc: GSM audio encoder
gsm: gsmdec: GSM audio decoder
jack: jackaudiosrc: Audio Source (Jack)
jack: jackaudiosink: Audio Sink (Jack)
ttmlsubs: ttmlparse: TTML subtitle parser
ttmlsubs: ttmlrender: TTML subtitle renderer
srt: srtsrc: SRT source
srt: srtsink: SRT sink
srt: srtclientsrc: SRT source
srt: srtserversrc: SRT source
srt: srtclientsink: SRT sink
srt: srtserversink: SRT sink
resindvd: rsndvdbin: rsndvdbin
soundtouch: pitch: Pitch controller
soundtouch: bpmdetect: BPM Detector
audiofxbad: audiochannelmix: Simple stereo audio mixer
mpegtsdemux: tsparse: MPEG transport stream parser
mpegtsdemux: tsdemux: MPEG transport stream demuxer
openal: openalsink: OpenAL Audio Sink
openal: openalsrc: OpenAL Audio Source
vulkan: vulkansink: Vulkan video sink
vulkan: vulkanupload: Vulkan Uploader
adpcmenc: adpcmenc: ADPCM encoder
decklink: decklinkaudiosink: Decklink Audio Sink
decklink: decklinkvideosink: Decklink Video Sink
decklink: decklinkaudiosrc: Decklink Audio Source
decklink: decklinkvideosrc: Decklink Video Source
alpha: alpha: Alpha filter
apetag: apedemux: APE tag demuxer
audiomixmatrix: audiomixmatrix: Matrix audio mix
faad: faad: AAC audio decoder
mpegtsmux: mpegtsmux: MPEG Transport Stream Muxer
videocrop: videocrop: Crop
videocrop: aspectratiocrop: aspectratiocrop
srtp: srtpenc: SRTP encoder
srtp: srtpdec: SRTP decoder
cairo: cairooverlay: Cairo overlay
goom2k1: goom2k1: GOOM: what a GOOM! 2k1 edition
smpte: smpte: SMPTE transitions
smpte: smptealpha: SMPTE transitions
jpegformat: jpegparse: JPEG stream parser
jpegformat: jifmux: JPEG stream muxer
rsvg: rsvgoverlay: RSVG overlay
rsvg: rsvgdec: SVG image decoder
smooth: smooth: Smooth effect
mulaw: mulawenc: Mu Law audio encoder
mulaw: mulawdec: Mu Law audio decoder
overlaycomposition: overlaycomposition: Overlay Composition
audiolatency: audiolatency: AudioLatency
hls: hlsdemux: HLS Demuxer
hls: hlssink: HTTP Live Streaming sink
hls: hlssink2: HTTP Live Streaming sink
nvdsgst_postprocess: nvdspostprocess: NvDsPostProcess plugin for Transform/In-Place use-cases
nvdsgst_3dbridge: nvds3dbridge: DS 3D bridge custom plugin
nvdsgst_nvblender: nvblender: Compositor
nvdsgst_text_to_speech: nvds_text_to_speech: DS Text To Speech Plugin for Conversational AI use cases
nvdsgst_osd: nvdsosd: NvDsOsd plugin
nvdsgst_ucx: nvdsucxserversink: UCX server sink
nvdsgst_ucx: nvdsucxclientsrc: UCX client source
nvdsgst_ucx: nvdsucxclientsink: UCX client sink
nvdsgst_ucx: nvdsucxserversrc: UCX server source
nvdsgst_3dmixer: nvds3dmixer: Stream multiplexer
nvdsgst_tracker: nvtracker: NvTracker plugin
nvdsgst_msgbroker: nvmsgbroker: Message Broker
nvdsgst_multistream: nvstreammux: Stream multiplexer
nvdsgst_multistream: nvstreamdemux: Stream demultiplexer
nvvideo4linux2: nvv4l2decoder: NVIDIA v4l2 video decoder
nvvideo4linux2: nvv4l2h264enc: V4L2 H.264 Encoder
nvvideo4linux2: nvv4l2h265enc: V4L2 H.265 Encoder
nvdsgst_nvmultiurisrcbin: nvmultiurisrcbin: NvMultiUri Bin
nvdsgst_ofvisual: nvofvisual: nvofvisual
nvdsgst_speech: nvdsasr: DS ASR Plugin for speech use-cases
nvdsgst_dewarper: nvdewarper: nvdewarper
nvdsgst_3dfilter: nvds3dfilter: DS 3D filter custom plugin
nvdsgst_segvisual: nvsegvisual: nvsegvisual
nvdsgst_of: nvof: nvof
nvdsgst_inferaudio: nvinferaudio: NvInfer Audio plugin
nvdsgst_dsexample: dsexample: DsExample plugin
nvdsgst_dsanalytics: nvdsanalytics: DsAnalytics plugin
nvdsgst_eglglessink: nveglglessink: EGL/GLES vout Sink
nvdsgst_videotestsrc: nvvideotestsrc: NVIDIA GPU Video Test Source
nvdsgst_jpeg: nvjpegenc: JPEG image encoder
nvdsgst_jpeg: nvjpegdec: JPEG image decoder
nvdsgst_multistreamtiler: nvmultistreamtiler: Stream Tiler DS
nvdsgst_metautils: nvdsmetainsert: nvdsmetainsert
nvdsgst_metautils: nvdsmetaextract: nvdsmetaextract
nvdsgst_msgconv: nvmsgconv: Message Converter
nvdsgst_logger: nvdslogger: Nvdslogger
nvdsgst_xfer: nvdsxfer: NvDsXfer plugin
nvdsgst_metamux: nvdsmetamux: meta muxer
nvdsgst_infer: nvinfer: NvInfer plugin
nvdsgst_videotemplate: nvdsvideotemplate: NvDsVideoTemplate plugin for Transform/In-Place use-cases
nvvideoconvert: nvvideoconvert: NvVidConv Plugin
nvdsgst_preprocess: nvdspreprocess: gst-nvdspreprocess plugin
nvdsgst_audiotemplate: nvdsaudiotemplate: DS AUDIO template Plugin for Transform IP use-cases
nvdsgst_deepstream_bins: nvinferbin: NvInfer Bin
nvdsgst_deepstream_bins: nvinferserverbin: NvInferServer Bin
nvdsgst_deepstream_bins: nvosdbin: NvOsd Bin
nvdsgst_deepstream_bins: nvdewarperbin: NvDewarper Bin
nvdsgst_deepstream_bins: nvtilerbin: NvTiler Bin
nvdsgst_deepstream_bins: nvtrackerbin: NvTracker Bin
nvdsgst_deepstream_bins: nvurisrcbin: NvUriSrc Bin
nvdsgst_deepstream_bins: nvcamerasrcbin: NvCameraSrc Bin
nvdsgst_deepstream_bins: nvanalyticsbin: NvAnalytics Bin
nvdsgst_deepstream_bins: nvvideorenderersinkbin: NvVideoRenderer Bin
nvdsgst_deepstream_bins: nvvideoencfilesinkbin: NvVideoEncFilesink Bin
nvdsgst_deepstream_bins: nvrtspoutsinkbin: NvRtspOut Bin
nvdsgst_deepstream_bins: nvmsgbrokersinkbin: NvMsgBroker Bin
nvdsgst_deepstream_bins: nvdsbuffersyncbin: NvBufferSync Bin
coreelements: capsfilter: CapsFilter
coreelements: concat: Concat
coreelements: dataurisrc: data: URI source element
coreelements: downloadbuffer: DownloadBuffer
coreelements: fakesrc: Fake Source
coreelements: fakesink: Fake Sink
coreelements: fdsrc: Filedescriptor Source
coreelements: fdsink: Filedescriptor Sink
coreelements: filesrc: File Source
coreelements: funnel: Funnel pipe fitting
coreelements: identity: Identity
coreelements: input-selector: Input selector
coreelements: output-selector: Output selector
coreelements: queue: Queue
coreelements: queue2: Queue 2
coreelements: filesink: File Sink
coreelements: tee: Tee pipe fitting
coreelements: typefind: TypeFind
coreelements: multiqueue: MultiQueue
coreelements: valve: Valve element
coreelements: streamiddemux: Streamid Demux
coretracers: latency (GstTracerFactory)
coretracers: log (GstTracerFactory)
coretracers: rusage (GstTracerFactory)
coretracers: stats (GstTracerFactory)
coretracers: leaks (GstTracerFactory)
staticelements: bin: Generic bin
staticelements: pipeline: Pipeline object
Total count: 281 plugins (3 blacklist entries not shown), 1494 features
There are numerous plugins available for developers to use. You can learn more about them in the documentations for GStreamer Plugins and DeepStream Plugins. Let’s now inspect a specific plugin to learn more about it.
!gst-inspect-1.0 h264parse
Factory Details:
Rank primary + 1 (257)
Long-name H.264 parser
Klass Codec/Parser/Converter/Video
Description Parses H.264 streams
Author Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
Plugin Details:
Name videoparsersbad
Description videoparsers
Filename /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoparsersbad.so
Version 1.16.3
License LGPL
Source module gst-plugins-bad
Source release date 2020-10-21
Binary package GStreamer Bad Plugins (Ubuntu)
Origin URL https://launchpad.net/distros/ubuntu/+source/gst-plugins-bad1.0
GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstBaseParse
+----GstH264Parse
Pad Templates:
SRC template: 'src'
Availability: Always
Capabilities:
video/x-h264
parsed: true
stream-format: { (string)avc, (string)avc3, (string)byte-stream }
alignment: { (string)au, (string)nal }
SINK template: 'sink'
Availability: Always
Capabilities:
video/x-h264
Element has no clocking capabilities.
Element has no URI handling capabilities.
Pads:
SINK: 'sink'
Pad Template: 'sink'
SRC: 'src'
Pad Template: 'src'
Element Properties:
config-interval : Send SPS and PPS Insertion Interval in seconds (sprop parameter sets will be multiplexed in the data stream when detected.) (0 = disabled, -1 = send with every IDR frame)
flags: readable, writable
Integer. Range: -1 - 3600 Default: 0
disable-passthrough : Force processing (disables passthrough)
flags: readable, writable
Boolean. Default: false
name : The name of the object
flags: readable, writable
String. Default: "h264parse0"
parent : The parent of the object
flags: readable, writable
Object of type "GstObject"
Let’s inspect a DeepStream-specific plugin: nvinfer
.
!gst-inspect-1.0 nvinfer
Factory Details:
Rank primary (256)
Long-name NvInfer plugin
Klass NvInfer Plugin
Description Nvidia DeepStreamSDK TensorRT plugin
Author NVIDIA Corporation. Deepstream for Tesla forum: https://devtalk.nvidia.com/default/board/209
Plugin Details:
Name nvdsgst_infer
Description NVIDIA DeepStreamSDK TensorRT plugin
Filename /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_infer.so
Version 6.3.0
License Proprietary
Source module nvinfer
Binary package NVIDIA DeepStreamSDK TensorRT plugin
Origin URL http://nvidia.com/
GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstBaseTransform
+----GstNvInfer
Pad Templates:
SRC template: 'src'
Availability: Always
Capabilities:
video/x-raw(memory:NVMM)
format: { (string)NV12, (string)RGBA }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
SINK template: 'sink'
Availability: Always
Capabilities:
video/x-raw(memory:NVMM)
format: { (string)NV12, (string)RGBA }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
Element has no clocking capabilities.
Element has no URI handling capabilities.
Pads:
SINK: 'sink'
Pad Template: 'sink'
SRC: 'src'
Pad Template: 'src'
Element Properties:
batch-size : Maximum batch size for inference
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 1 - 1024 Default: 1
clip-object-outside-roi: Clip the object bounding-box which lies outside the roi specified by nvdspreprosess plugin
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: true
config-file-path : Path to the configuration file for this instance of nvinfer
flags: readable, writable, changeable in NULL, READY, PAUSED or PLAYING state
String. Default: ""
crop-objects-to-roi-boundary: Clip the object bounding-box which lies outside the roi boundary
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: false
filter-out-class-ids: Ignore metadata for objects of specified class ids
Use string with values of class ids in ClassID (int) to set the property.
e.g. 0;2;3
flags: readable, writable, changeable only in NULL or READY state
String. Default: ""
gpu-id : Set GPU Device ID
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 4294967295 Default: 0
infer-on-class-ids : Operate on objects with specified class ids
Use string with values of class ids in ClassID (int) to set the property.
e.g. 0:2:3
flags: readable, writable, changeable only in NULL or READY state
String. Default: ""
infer-on-gie-id : Infer on metadata generated by GIE with this unique ID.
Set to -1 to infer on all metadata.
flags: readable, writable, changeable only in NULL or READY state
Integer. Range: -1 - 2147483647 Default: -1
input-tensor-meta : Use preprocessed input tensors attached as metadata instead of preprocessing inside the plugin
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: false
interval : Specifies number of consecutive batches to be skipped for inference
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 2147483647 Default: 0
model-engine-file : Absolute path to the pre-generated serialized engine file for the model
flags: readable, writable, changeable in NULL, READY, PAUSED or PLAYING state
String. Default: ""
name : The name of the object
flags: readable, writable
String. Default: "nvinfer0"
output-instance-mask: Instance mask expected in network output and attach it to metadata
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: false
output-tensor-meta : Attach inference tensor outputs as buffer metadata
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: false
parent : The parent of the object
flags: readable, writable
Object of type "GstObject"
process-mode : Infer processing mode
flags: readable, writable, changeable only in NULL or READY state
Enum "GstNvInferProcessModeType" Default: 1, "primary"
(1): primary - Primary (Full Frame)
(2): secondary - Secondary (Objects)
qos : Handle Quality-of-Service events
flags: readable, writable
Boolean. Default: false
raw-output-file-write: Write raw inference output to file
flags: readable, writable, changeable only in NULL or READY state
Boolean. Default: false
raw-output-generated-callback: Pointer to the raw output generated callback funtion
(type: gst_nvinfer_raw_output_generated_callback in 'gstnvdsinfer.h')
flags: readable, writable, changeable only in NULL or READY state
Pointer.
raw-output-generated-userdata: Pointer to the userdata to be supplied with raw output generated callback
flags: readable, writable, changeable only in NULL or READY state
Pointer.
unique-id : Unique ID for the element. Can be used to identify output of the element
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 4294967295 Default: 15
Element Signals:
"model-updated" : void user_function (GstElement* object,
gint arg0,
gchararray arg1,
gpointer user_data);
!gst-inspect-1.0 nvv4l2decoder
Factory Details:
Rank primary + 11 (267)
Long-name NVIDIA v4l2 video decoder
Klass Codec/Decoder/Video
Description Decode video streams via V4L2 API
Author Nicolas Dufresne <nicolas.dufresne@collabora.com>, Viranjan Pagar <vpagar@nvidia.com>
Plugin Details:
Name nvvideo4linux2
Description Nvidia elements for Video 4 Linux
Filename /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libgstnvvideo4linux2.so
Version 1.14.0
License LGPL
Source module nvvideo4linux2
Binary package nvvideo4linux2
Origin URL http://nvidia.com/
GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstVideoDecoder
+----GstNvV4l2VideoDec
+----nvv4l2decoder
Pad Templates:
SINK template: 'sink'
Availability: Always
Capabilities:
image/jpeg
video/x-h264
stream-format: { (string)byte-stream }
alignment: { (string)au }
video/x-h265
stream-format: { (string)byte-stream }
alignment: { (string)au }
video/mpeg
mpegversion: 4
systemstream: false
parsed: true
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
video/mpeg
mpegversion: [ 1, 2 ]
systemstream: false
parsed: true
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
video/x-divx
divxversion: [ 4, 5 ]
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
video/x-av1
video/x-vp8
video/x-vp9
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
SRC template: 'src'
Availability: Always
Capabilities:
video/x-raw(memory:NVMM)
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
Element has no clocking capabilities.
Element has no URI handling capabilities.
Pads:
SINK: 'sink'
Pad Template: 'sink'
SRC: 'src'
Pad Template: 'src'
Element Properties:
capture-io-mode : Capture I/O mode (matches src pad)
flags: readable, writable
Enum "GstNvV4l2IOMode" Default: 0, "auto"
(0): auto - GST_V4L2_IO_AUTO
(2): mmap - GST_V4L2_IO_MMAP
(5): dmabuf-import - GST_V4L2_IO_DMABUF_IMPORT
cudadec-memtype : Set to specify memory type for cuda decoder buffers
flags: readable, writable, changeable only in NULL or READY state
Enum "CudaDecMemType" Default: 0, "memtype_device"
(0): memtype_device - Memory type Device
(1): memtype_pinned - Memory type Host Pinned
(2): memtype_unified - Memory type Unified
device : Device location
flags: readable
String. Default: "/dev/nvidia0"
device-fd : File descriptor of the device
flags: readable
Integer. Range: -1 - 2147483647 Default: -1
device-name : Name of the device
flags: readable
String. Default: ""
drop-frame-interval : Interval to drop the frames,ex: value of 5 means every 5th frame will be given by decoder, rest all dropped
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 30 Default: 0
extra-controls : Extra v4l2 controls (CIDs) for the device
flags: readable, writable
Boxed pointer of type "GstStructure"
extract-sei-type5-data: Set to extract and attach SEI type5 unregistered data on output buffer
flags: readable, writable
Boolean. Default: false
gpu-id : Set to GPU Device ID for decoder
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 4294967295 Default: 0
low-latency-mode : Set low latency mode for bitstreams having I and IPPP frames
flags: readable, writable
Boolean. Default: false
name : The name of the object
flags: readable, writable
String. Default: "nvv4l2decoder0"
num-extra-surfaces : Additional number of surfaces in addition to min decode surfaces given by the v4l2 driver
flags: readable, writable, changeable only in NULL or READY state
Unsigned Integer. Range: 0 - 55 Default: 0
output-io-mode : Output side I/O mode (matches sink pad)
flags: readable, writable
Enum "GstNvV4l2IOMode" Default: 0, "auto"
(0): auto - GST_V4L2_IO_AUTO
(2): mmap - GST_V4L2_IO_MMAP
(5): dmabuf-import - GST_V4L2_IO_DMABUF_IMPORT
parent : The parent of the object
flags: readable, writable
Object of type "GstObject"
sei-uuid : Set 16 bytes UUID string for SEI Parsing, extract-sei-type5-data should be TRUE
flags: readable, writable
String. Default: null
skip-frames : Type of frames to skip during decoding
flags: readable, writable, changeable in NULL, READY, PAUSED or PLAYING state
Enum "SkipFrame" Default: 0, "decode_all"
(0): decode_all - Decode all frames
(1): decode_non_ref - Decode non-ref frames
(2): decode_key - decode key frames
The nvinfer
plugin does inferencing on input data using NVIDIA TensorRT. It can perform AI inference on (batched) images for classification, object detection, and segmentation tasks based on the trained model we provide. There are several properties that can be set related to the inference engine, including the model-engine-file
property. We recommend setting properties via a configuration file through the config-file-path
property. More information about DeepStream plugins can be found in the DeepStream Plugin Guide.
Accessing DeepStream MetaData#
GstBuffer
is the basic unit of data transfer in GStreamer. As it’s passing through the pipeline, metadata received by each component is attached to the buffer. Similarly, the DeepStream SDK attaches the DeepStream metadata object, NvDsBatchMeta
to it. DeepStream metadata contains inference results from Gst-nvinfer
and information from other plugins in the pipeline. DeepStream uses an extensible standard structure for metadata, starting with the batch level metadata (NvDsBatchMeta
) created inside the Gst-nvstreammux
plugin. Subsidiary metadata structures hold frame, object, classifier, and display data. The metadata format is described in detail in the SDK MetaData Documentation and API Guide. Having some familiarity with the metadata structure will help us extract the desired information.
Probe#
We use probes to access this metadata. Probing is best envisioned as having access to a pad listener. We can use them to access metadata at various points in the pipeline. Technically, a probe is a callback function that can be attached to a pad. While attached, the probe notifies when there is data passing on a pad. It allows us to easily interact with the data flowing through our pipeline. For more information on GstPad
and probes, please visit GStreamer’s API Reference on GstPad.
Since the video AI application will rely heavily on the metadata generated from the deep learning models, the probe callback function might be the most important piece when constructing a DeepStream pipeline.