Full Code of GStreamer/gst-plugins-bad for AI

master ca8068c6d793 cached
2775 files
49.4 MB
13.1M tokens
28358 symbols
1 requests
Copy disabled (too large) Download .txt
Showing preview only (52,352K chars total). Download the full file to get everything.
Repository: GStreamer/gst-plugins-bad
Branch: master
Commit: ca8068c6d793
Files: 2775
Total size: 49.4 MB

Directory structure:
gitextract_5dm82u6t/

├── .gitignore
├── .gitlab-ci.yml
├── .indentignore
├── AUTHORS
├── COPYING
├── ChangeLog
├── MAINTAINERS
├── NEWS
├── README
├── README.static-linking
├── RELEASE
├── REQUIREMENTS
├── data/
│   ├── meson.build
│   └── targets/
│       ├── device/
│       │   └── dvd.gep
│       ├── file-extension/
│       │   ├── avi.gep
│       │   ├── flv.gep
│       │   ├── mkv.gep
│       │   ├── mp3.gep
│       │   ├── mp4.gep
│       │   ├── oga.gep
│       │   ├── ogv.gep
│       │   ├── ts.gep
│       │   └── webm.gep
│       └── online-service/
│           └── youtube.gep
├── docs/
│   ├── gst_api_version.in
│   ├── index.md
│   ├── libs/
│   │   ├── adaptivedemux/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── audio/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── base/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── basecamerabinsrc/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── codecparsers/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── codecs/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── insertbin/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── mpegts/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── opencv/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── play/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── player/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── tools/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── transcoder/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── video/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── vulkan/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── vulkan-wayland/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── vulkan-xcb/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   └── webrtc/
│   │       ├── index.md
│   │       └── sitemap.txt
│   ├── meson.build
│   ├── plugins/
│   │   ├── gst_plugins_cache.json
│   │   ├── index.md
│   │   ├── inspect/
│   │   │   ├── plugin-rist.xml
│   │   │   └── plugin-sctp.xml
│   │   └── sitemap.txt
│   ├── random/
│   │   ├── ChangeLog-0.8
│   │   ├── LICENSE
│   │   └── PORTED_09
│   └── sitemap.txt
├── ext/
│   ├── aes/
│   │   ├── gstaes.c
│   │   ├── gstaesdec.c
│   │   ├── gstaesdec.h
│   │   ├── gstaesenc.c
│   │   ├── gstaesenc.h
│   │   ├── gstaeshelper.c
│   │   ├── gstaeshelper.h
│   │   └── meson.build
│   ├── aom/
│   │   ├── gstaom.c
│   │   ├── gstaom.h
│   │   ├── gstav1dec.c
│   │   ├── gstav1dec.h
│   │   ├── gstav1enc.c
│   │   ├── gstav1enc.h
│   │   ├── gstav1utils.c
│   │   ├── gstav1utils.h
│   │   └── meson.build
│   ├── assrender/
│   │   ├── gstassrender.c
│   │   ├── gstassrender.h
│   │   └── meson.build
│   ├── avtp/
│   │   ├── gstavtp.c
│   │   ├── gstavtpaafdepay.c
│   │   ├── gstavtpaafdepay.h
│   │   ├── gstavtpaafpay.c
│   │   ├── gstavtpaafpay.h
│   │   ├── gstavtpbasedepayload.c
│   │   ├── gstavtpbasedepayload.h
│   │   ├── gstavtpbasepayload.c
│   │   ├── gstavtpbasepayload.h
│   │   ├── gstavtpcrfbase.c
│   │   ├── gstavtpcrfbase.h
│   │   ├── gstavtpcrfcheck.c
│   │   ├── gstavtpcrfcheck.h
│   │   ├── gstavtpcrfsync.c
│   │   ├── gstavtpcrfsync.h
│   │   ├── gstavtpcrfutil.c
│   │   ├── gstavtpcrfutil.h
│   │   ├── gstavtpcvfdepay.c
│   │   ├── gstavtpcvfdepay.h
│   │   ├── gstavtpcvfpay.c
│   │   ├── gstavtpcvfpay.h
│   │   ├── gstavtpsink.c
│   │   ├── gstavtpsink.h
│   │   ├── gstavtpsrc.c
│   │   ├── gstavtpsrc.h
│   │   └── meson.build
│   ├── bs2b/
│   │   ├── gstbs2b.c
│   │   ├── gstbs2b.h
│   │   └── meson.build
│   ├── bz2/
│   │   ├── gstbz2.c
│   │   ├── gstbz2dec.c
│   │   ├── gstbz2dec.h
│   │   ├── gstbz2enc.c
│   │   ├── gstbz2enc.h
│   │   └── meson.build
│   ├── chromaprint/
│   │   ├── gstchromaprint.c
│   │   ├── gstchromaprint.h
│   │   └── meson.build
│   ├── closedcaption/
│   │   ├── bcd.h
│   │   ├── bit_slicer.c
│   │   ├── bit_slicer.h
│   │   ├── decoder.c
│   │   ├── decoder.h
│   │   ├── gstcccombiner.c
│   │   ├── gstcccombiner.h
│   │   ├── gstccconverter.c
│   │   ├── gstccconverter.h
│   │   ├── gstccextractor.c
│   │   ├── gstccextractor.h
│   │   ├── gstcea708decoder.c
│   │   ├── gstcea708decoder.h
│   │   ├── gstceaccoverlay.c
│   │   ├── gstceaccoverlay.h
│   │   ├── gstclosedcaption.c
│   │   ├── gstline21dec.c
│   │   ├── gstline21dec.h
│   │   ├── gstline21enc.c
│   │   ├── gstline21enc.h
│   │   ├── hamm.h
│   │   ├── io-sim.c
│   │   ├── io-sim.h
│   │   ├── macros.h
│   │   ├── meson.build
│   │   ├── misc.h
│   │   ├── raw_decoder.c
│   │   ├── raw_decoder.h
│   │   ├── sampling_par.c
│   │   ├── sampling_par.h
│   │   └── sliced.h
│   ├── colormanagement/
│   │   ├── gstcolormanagement.c
│   │   ├── gstlcms.c
│   │   ├── gstlcms.h
│   │   └── meson.build
│   ├── curl/
│   │   ├── curltask.h
│   │   ├── gstcurl.c
│   │   ├── gstcurlbasesink.c
│   │   ├── gstcurlbasesink.h
│   │   ├── gstcurldefaults.h
│   │   ├── gstcurlelement.c
│   │   ├── gstcurlelements.h
│   │   ├── gstcurlfilesink.c
│   │   ├── gstcurlfilesink.h
│   │   ├── gstcurlftpsink.c
│   │   ├── gstcurlftpsink.h
│   │   ├── gstcurlhttpsink.c
│   │   ├── gstcurlhttpsink.h
│   │   ├── gstcurlhttpsrc.c
│   │   ├── gstcurlhttpsrc.h
│   │   ├── gstcurlqueue.c
│   │   ├── gstcurlqueue.h
│   │   ├── gstcurlsftpsink.c
│   │   ├── gstcurlsftpsink.h
│   │   ├── gstcurlsmtpsink.c
│   │   ├── gstcurlsmtpsink.h
│   │   ├── gstcurlsshsink.c
│   │   ├── gstcurlsshsink.h
│   │   ├── gstcurltlssink.c
│   │   ├── gstcurltlssink.h
│   │   └── meson.build
│   ├── dash/
│   │   ├── gstdash_debug.h
│   │   ├── gstdashdemux.c
│   │   ├── gstdashdemux.h
│   │   ├── gstdashsink.c
│   │   ├── gstdashsink.h
│   │   ├── gstmpdadaptationsetnode.c
│   │   ├── gstmpdadaptationsetnode.h
│   │   ├── gstmpdbaseurlnode.c
│   │   ├── gstmpdbaseurlnode.h
│   │   ├── gstmpdclient.c
│   │   ├── gstmpdclient.h
│   │   ├── gstmpdcontentcomponentnode.c
│   │   ├── gstmpdcontentcomponentnode.h
│   │   ├── gstmpddescriptortypenode.c
│   │   ├── gstmpddescriptortypenode.h
│   │   ├── gstmpdhelper.c
│   │   ├── gstmpdhelper.h
│   │   ├── gstmpdlocationnode.c
│   │   ├── gstmpdlocationnode.h
│   │   ├── gstmpdmetricsnode.c
│   │   ├── gstmpdmetricsnode.h
│   │   ├── gstmpdmetricsrangenode.c
│   │   ├── gstmpdmetricsrangenode.h
│   │   ├── gstmpdmultsegmentbasenode.c
│   │   ├── gstmpdmultsegmentbasenode.h
│   │   ├── gstmpdnode.c
│   │   ├── gstmpdnode.h
│   │   ├── gstmpdparser.c
│   │   ├── gstmpdparser.h
│   │   ├── gstmpdperiodnode.c
│   │   ├── gstmpdperiodnode.h
│   │   ├── gstmpdprograminformationnode.c
│   │   ├── gstmpdprograminformationnode.h
│   │   ├── gstmpdreportingnode.c
│   │   ├── gstmpdreportingnode.h
│   │   ├── gstmpdrepresentationbasenode.c
│   │   ├── gstmpdrepresentationbasenode.h
│   │   ├── gstmpdrepresentationnode.c
│   │   ├── gstmpdrepresentationnode.h
│   │   ├── gstmpdrootnode.c
│   │   ├── gstmpdrootnode.h
│   │   ├── gstmpdsegmentbasenode.c
│   │   ├── gstmpdsegmentbasenode.h
│   │   ├── gstmpdsegmentlistnode.c
│   │   ├── gstmpdsegmentlistnode.h
│   │   ├── gstmpdsegmenttemplatenode.c
│   │   ├── gstmpdsegmenttemplatenode.h
│   │   ├── gstmpdsegmenttimelinenode.c
│   │   ├── gstmpdsegmenttimelinenode.h
│   │   ├── gstmpdsegmenturlnode.c
│   │   ├── gstmpdsegmenturlnode.h
│   │   ├── gstmpdsnode.c
│   │   ├── gstmpdsnode.h
│   │   ├── gstmpdsubrepresentationnode.c
│   │   ├── gstmpdsubrepresentationnode.h
│   │   ├── gstmpdsubsetnode.c
│   │   ├── gstmpdsubsetnode.h
│   │   ├── gstmpdurltypenode.c
│   │   ├── gstmpdurltypenode.h
│   │   ├── gstmpdutctimingnode.c
│   │   ├── gstmpdutctimingnode.h
│   │   ├── gstplugin.c
│   │   ├── gstxmlhelper.c
│   │   ├── gstxmlhelper.h
│   │   └── meson.build
│   ├── dc1394/
│   │   ├── gstdc1394src.c
│   │   ├── gstdc1394src.h
│   │   └── meson.build
│   ├── directfb/
│   │   ├── dfb-example.c
│   │   ├── dfbvideosink.c
│   │   ├── dfbvideosink.h
│   │   └── meson.build
│   ├── dtls/
│   │   ├── README
│   │   ├── gstdtlsagent.c
│   │   ├── gstdtlsagent.h
│   │   ├── gstdtlscertificate.c
│   │   ├── gstdtlscertificate.h
│   │   ├── gstdtlsconnection.c
│   │   ├── gstdtlsconnection.h
│   │   ├── gstdtlsdec.c
│   │   ├── gstdtlsdec.h
│   │   ├── gstdtlselement.c
│   │   ├── gstdtlselements.h
│   │   ├── gstdtlsenc.c
│   │   ├── gstdtlsenc.h
│   │   ├── gstdtlssrtpbin.c
│   │   ├── gstdtlssrtpbin.h
│   │   ├── gstdtlssrtpdec.c
│   │   ├── gstdtlssrtpdec.h
│   │   ├── gstdtlssrtpdemux.c
│   │   ├── gstdtlssrtpdemux.h
│   │   ├── gstdtlssrtpenc.c
│   │   ├── gstdtlssrtpenc.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── dts/
│   │   ├── gstdtsdec.c
│   │   ├── gstdtsdec.h
│   │   └── meson.build
│   ├── faac/
│   │   ├── gstfaac.c
│   │   ├── gstfaac.h
│   │   └── meson.build
│   ├── faad/
│   │   ├── gstfaad.c
│   │   ├── gstfaad.h
│   │   └── meson.build
│   ├── fdkaac/
│   │   ├── gstfdkaac.c
│   │   ├── gstfdkaac.h
│   │   ├── gstfdkaacdec.c
│   │   ├── gstfdkaacdec.h
│   │   ├── gstfdkaacenc.c
│   │   ├── gstfdkaacenc.h
│   │   ├── gstfdkaacplugin.c
│   │   └── meson.build
│   ├── flite/
│   │   ├── gstflite.c
│   │   ├── gstflitetestsrc.c
│   │   └── meson.build
│   ├── fluidsynth/
│   │   ├── gstfluiddec.c
│   │   ├── gstfluiddec.h
│   │   └── meson.build
│   ├── gme/
│   │   ├── gstgme.c
│   │   ├── gstgme.h
│   │   └── meson.build
│   ├── gs/
│   │   ├── .clang-format
│   │   ├── README.md
│   │   ├── gstgs.cpp
│   │   ├── gstgscommon.cpp
│   │   ├── gstgscommon.h
│   │   ├── gstgssink.cpp
│   │   ├── gstgssink.h
│   │   ├── gstgssrc.cpp
│   │   ├── gstgssrc.h
│   │   └── meson.build
│   ├── gsm/
│   │   ├── gstgsm.c
│   │   ├── gstgsmdec.c
│   │   ├── gstgsmdec.h
│   │   ├── gstgsmenc.c
│   │   ├── gstgsmenc.h
│   │   └── meson.build
│   ├── hls/
│   │   ├── gsthlsdemux-util.c
│   │   ├── gsthlsdemux.c
│   │   ├── gsthlsdemux.h
│   │   ├── gsthlselement.c
│   │   ├── gsthlselements.h
│   │   ├── gsthlsplugin.c
│   │   ├── gsthlssink.c
│   │   ├── gsthlssink.h
│   │   ├── gsthlssink2.c
│   │   ├── gsthlssink2.h
│   │   ├── gstm3u8playlist.c
│   │   ├── gstm3u8playlist.h
│   │   ├── m3u8.c
│   │   ├── m3u8.h
│   │   └── meson.build
│   ├── iqa/
│   │   ├── iqa.c
│   │   ├── iqa.h
│   │   └── meson.build
│   ├── isac/
│   │   ├── gstisac.c
│   │   ├── gstisacdec.c
│   │   ├── gstisacdec.h
│   │   ├── gstisacenc.c
│   │   ├── gstisacenc.h
│   │   ├── gstisacutils.c
│   │   ├── gstisacutils.h
│   │   └── meson.build
│   ├── kate/
│   │   ├── README
│   │   ├── gstkate.c
│   │   ├── gstkatedec.c
│   │   ├── gstkatedec.h
│   │   ├── gstkateelement.c
│   │   ├── gstkateelements.h
│   │   ├── gstkateenc.c
│   │   ├── gstkateenc.h
│   │   ├── gstkateparse.c
│   │   ├── gstkateparse.h
│   │   ├── gstkatespu.c
│   │   ├── gstkatespu.h
│   │   ├── gstkatetag.c
│   │   ├── gstkatetag.h
│   │   ├── gstkatetiger.c
│   │   ├── gstkatetiger.h
│   │   ├── gstkateutil.c
│   │   ├── gstkateutil.h
│   │   └── meson.build
│   ├── ladspa/
│   │   ├── gstladspa.c
│   │   ├── gstladspa.h
│   │   ├── gstladspafilter.c
│   │   ├── gstladspafilter.h
│   │   ├── gstladspasink.c
│   │   ├── gstladspasink.h
│   │   ├── gstladspasource.c
│   │   ├── gstladspasource.h
│   │   ├── gstladspautils.c
│   │   ├── gstladspautils.h
│   │   └── meson.build
│   ├── ldac/
│   │   ├── gstldacenc.c
│   │   ├── gstldacenc.h
│   │   ├── ldac-plugin.c
│   │   └── meson.build
│   ├── libde265/
│   │   ├── gstlibde265.c
│   │   ├── libde265-dec.c
│   │   ├── libde265-dec.h
│   │   └── meson.build
│   ├── libmms/
│   │   ├── gstmms.c
│   │   ├── gstmms.h
│   │   └── meson.build
│   ├── lv2/
│   │   ├── README
│   │   ├── calf-lv2-port-groups.patch
│   │   ├── gstlv2.c
│   │   ├── gstlv2.h
│   │   ├── gstlv2filter.c
│   │   ├── gstlv2source.c
│   │   ├── gstlv2utils.c
│   │   ├── gstlv2utils.h
│   │   ├── meson.build
│   │   └── swh-lv2-port-groups.patch
│   ├── mdns/
│   │   ├── gstmicrodns.c
│   │   ├── gstmicrodnsdevice.c
│   │   ├── gstmicrodnsdevice.h
│   │   └── meson.build
│   ├── meson.build
│   ├── modplug/
│   │   ├── gstmodplug.cc
│   │   ├── gstmodplug.h
│   │   └── meson.build
│   ├── mpeg2enc/
│   │   ├── gstmpeg2enc.cc
│   │   ├── gstmpeg2enc.hh
│   │   ├── gstmpeg2encoder.cc
│   │   ├── gstmpeg2encoder.hh
│   │   ├── gstmpeg2encoptions.cc
│   │   ├── gstmpeg2encoptions.hh
│   │   ├── gstmpeg2encpicturereader.cc
│   │   ├── gstmpeg2encpicturereader.hh
│   │   ├── gstmpeg2encstreamwriter.cc
│   │   ├── gstmpeg2encstreamwriter.hh
│   │   └── meson.build
│   ├── mplex/
│   │   ├── gstmplex.cc
│   │   ├── gstmplex.hh
│   │   ├── gstmplexibitstream.cc
│   │   ├── gstmplexibitstream.hh
│   │   ├── gstmplexjob.cc
│   │   ├── gstmplexjob.hh
│   │   ├── gstmplexoutputstream.cc
│   │   ├── gstmplexoutputstream.hh
│   │   └── meson.build
│   ├── musepack/
│   │   ├── gstmusepackdec.c
│   │   ├── gstmusepackdec.h
│   │   ├── gstmusepackreader.c
│   │   ├── gstmusepackreader.h
│   │   └── meson.build
│   ├── neon/
│   │   ├── gstneonhttpsrc.c
│   │   ├── gstneonhttpsrc.h
│   │   └── meson.build
│   ├── ofa/
│   │   ├── gstofa.c
│   │   ├── gstofa.h
│   │   └── meson.build
│   ├── onnx/
│   │   ├── gstonnx.c
│   │   ├── gstonnxclient.cpp
│   │   ├── gstonnxclient.h
│   │   ├── gstonnxelement.c
│   │   ├── gstonnxelement.h
│   │   ├── gstonnxobjectdetector.cpp
│   │   ├── gstonnxobjectdetector.h
│   │   └── meson.build
│   ├── openal/
│   │   ├── gstopenal.c
│   │   ├── gstopenalelement.c
│   │   ├── gstopenalelements.h
│   │   ├── gstopenalsink.c
│   │   ├── gstopenalsink.h
│   │   ├── gstopenalsrc.c
│   │   ├── gstopenalsrc.h
│   │   └── meson.build
│   ├── openaptx/
│   │   ├── gstopenaptxdec.c
│   │   ├── gstopenaptxdec.h
│   │   ├── gstopenaptxenc.c
│   │   ├── gstopenaptxenc.h
│   │   ├── meson.build
│   │   ├── openaptx-plugin.c
│   │   └── openaptx-plugin.h
│   ├── opencv/
│   │   ├── MotionCells.cpp
│   │   ├── MotionCells.h
│   │   ├── cameraevent.cpp
│   │   ├── cameraevent.hpp
│   │   ├── camerautils.cpp
│   │   ├── camerautils.hpp
│   │   ├── fist.xml
│   │   ├── gstcameracalibrate.cpp
│   │   ├── gstcameracalibrate.h
│   │   ├── gstcameraundistort.cpp
│   │   ├── gstcameraundistort.h
│   │   ├── gstcvdilate.cpp
│   │   ├── gstcvdilate.h
│   │   ├── gstcvdilateerode.cpp
│   │   ├── gstcvdilateerode.h
│   │   ├── gstcvequalizehist.cpp
│   │   ├── gstcvequalizehist.h
│   │   ├── gstcverode.cpp
│   │   ├── gstcverode.h
│   │   ├── gstcvlaplace.cpp
│   │   ├── gstcvlaplace.h
│   │   ├── gstcvsmooth.cpp
│   │   ├── gstcvsmooth.h
│   │   ├── gstcvsobel.cpp
│   │   ├── gstcvsobel.h
│   │   ├── gstcvtracker.cpp
│   │   ├── gstcvtracker.h
│   │   ├── gstdewarp.cpp
│   │   ├── gstdewarp.h
│   │   ├── gstdisparity.cpp
│   │   ├── gstdisparity.h
│   │   ├── gstedgedetect.cpp
│   │   ├── gstedgedetect.h
│   │   ├── gstfaceblur.cpp
│   │   ├── gstfaceblur.h
│   │   ├── gstfacedetect.cpp
│   │   ├── gstfacedetect.h
│   │   ├── gstgrabcut.cpp
│   │   ├── gstgrabcut.h
│   │   ├── gsthanddetect.cpp
│   │   ├── gsthanddetect.h
│   │   ├── gstmotioncells.cpp
│   │   ├── gstmotioncells.h
│   │   ├── gstopencv.cpp
│   │   ├── gstretinex.cpp
│   │   ├── gstretinex.h
│   │   ├── gstsegmentation.cpp
│   │   ├── gstsegmentation.h
│   │   ├── gstskindetect.cpp
│   │   ├── gstskindetect.h
│   │   ├── gsttemplatematch.cpp
│   │   ├── gsttemplatematch.h
│   │   ├── gsttextoverlay.cpp
│   │   ├── gsttextoverlay.h
│   │   ├── meson.build
│   │   ├── motioncells_wrapper.cpp
│   │   ├── motioncells_wrapper.h
│   │   └── palm.xml
│   ├── openexr/
│   │   ├── gstopenexr.c
│   │   ├── gstopenexr.h
│   │   ├── gstopenexrdec.cpp
│   │   ├── gstopenexrdec.h
│   │   └── meson.build
│   ├── openh264/
│   │   ├── gstopenh264dec.cpp
│   │   ├── gstopenh264dec.h
│   │   ├── gstopenh264element.c
│   │   ├── gstopenh264elements.h
│   │   ├── gstopenh264enc.cpp
│   │   ├── gstopenh264enc.h
│   │   ├── gstopenh264plugin.c
│   │   └── meson.build
│   ├── openjpeg/
│   │   ├── gstopenjpeg.c
│   │   ├── gstopenjpeg.h
│   │   ├── gstopenjpegdec.c
│   │   ├── gstopenjpegdec.h
│   │   ├── gstopenjpegenc.c
│   │   ├── gstopenjpegenc.h
│   │   └── meson.build
│   ├── openmpt/
│   │   ├── gstopenmptdec.c
│   │   ├── gstopenmptdec.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── openni2/
│   │   ├── gstopenni2.cpp
│   │   ├── gstopenni2src.cpp
│   │   ├── gstopenni2src.h
│   │   └── meson.build
│   ├── opus/
│   │   ├── gstopus.c
│   │   ├── gstopusheader.c
│   │   ├── gstopusheader.h
│   │   ├── gstopusparse.c
│   │   ├── gstopusparse.h
│   │   └── meson.build
│   ├── qroverlay/
│   │   ├── gstbaseqroverlay.c
│   │   ├── gstbaseqroverlay.h
│   │   ├── gstdebugqroverlay.c
│   │   ├── gstdebugqroverlay.h
│   │   ├── gstqroverlay.c
│   │   ├── gstqroverlay.h
│   │   ├── gstqroverlayelement.c
│   │   ├── gstqroverlayelements.h
│   │   ├── gstqroverlayplugin.c
│   │   └── meson.build
│   ├── resindvd/
│   │   ├── gstmpegdefs.h
│   │   ├── gstmpegdemux.c
│   │   ├── gstmpegdemux.h
│   │   ├── gstmpegdesc.c
│   │   ├── gstmpegdesc.h
│   │   ├── gstpesfilter.c
│   │   ├── gstpesfilter.h
│   │   ├── meson.build
│   │   ├── plugin.c
│   │   ├── resin-play
│   │   ├── resin-play2
│   │   ├── resindvdbin.c
│   │   ├── resindvdbin.h
│   │   ├── resindvdsrc.c
│   │   ├── resindvdsrc.h
│   │   ├── rsndec.c
│   │   ├── rsndec.h
│   │   ├── rsninputselector.c
│   │   ├── rsninputselector.h
│   │   ├── rsnparsetter.c
│   │   └── rsnparsetter.h
│   ├── rsvg/
│   │   ├── gstrsvg.c
│   │   ├── gstrsvgdec.c
│   │   ├── gstrsvgdec.h
│   │   ├── gstrsvgoverlay.c
│   │   ├── gstrsvgoverlay.h
│   │   └── meson.build
│   ├── rtmp/
│   │   ├── README
│   │   ├── gstrtmp.c
│   │   ├── gstrtmpelement.c
│   │   ├── gstrtmpelements.h
│   │   ├── gstrtmpsink.c
│   │   ├── gstrtmpsink.h
│   │   ├── gstrtmpsrc.c
│   │   ├── gstrtmpsrc.h
│   │   └── meson.build
│   ├── sbc/
│   │   ├── gstsbcdec.c
│   │   ├── gstsbcdec.h
│   │   ├── gstsbcenc.c
│   │   ├── gstsbcenc.h
│   │   ├── meson.build
│   │   └── sbc-plugin.c
│   ├── sctp/
│   │   ├── gstsctpdec.c
│   │   ├── gstsctpdec.h
│   │   ├── gstsctpenc.c
│   │   ├── gstsctpenc.h
│   │   ├── gstsctpplugin.c
│   │   ├── meson.build
│   │   ├── sctpassociation.c
│   │   ├── sctpassociation.h
│   │   └── usrsctp/
│   │       ├── .gitignore
│   │       ├── LICENSE.md
│   │       ├── meson.build
│   │       ├── meson_options.txt
│   │       └── usrsctplib/
│   │           ├── Makefile.am
│   │           ├── meson.build
│   │           ├── netinet/
│   │           │   ├── meson.build
│   │           │   ├── sctp.h
│   │           │   ├── sctp_asconf.c
│   │           │   ├── sctp_asconf.h
│   │           │   ├── sctp_auth.c
│   │           │   ├── sctp_auth.h
│   │           │   ├── sctp_bsd_addr.c
│   │           │   ├── sctp_bsd_addr.h
│   │           │   ├── sctp_callout.c
│   │           │   ├── sctp_callout.h
│   │           │   ├── sctp_cc_functions.c
│   │           │   ├── sctp_constants.h
│   │           │   ├── sctp_crc32.c
│   │           │   ├── sctp_crc32.h
│   │           │   ├── sctp_header.h
│   │           │   ├── sctp_indata.c
│   │           │   ├── sctp_indata.h
│   │           │   ├── sctp_input.c
│   │           │   ├── sctp_input.h
│   │           │   ├── sctp_lock_userspace.h
│   │           │   ├── sctp_os.h
│   │           │   ├── sctp_os_userspace.h
│   │           │   ├── sctp_output.c
│   │           │   ├── sctp_output.h
│   │           │   ├── sctp_pcb.c
│   │           │   ├── sctp_pcb.h
│   │           │   ├── sctp_peeloff.c
│   │           │   ├── sctp_peeloff.h
│   │           │   ├── sctp_process_lock.h
│   │           │   ├── sctp_sha1.c
│   │           │   ├── sctp_sha1.h
│   │           │   ├── sctp_ss_functions.c
│   │           │   ├── sctp_structs.h
│   │           │   ├── sctp_sysctl.c
│   │           │   ├── sctp_sysctl.h
│   │           │   ├── sctp_timer.c
│   │           │   ├── sctp_timer.h
│   │           │   ├── sctp_uio.h
│   │           │   ├── sctp_userspace.c
│   │           │   ├── sctp_usrreq.c
│   │           │   ├── sctp_var.h
│   │           │   ├── sctputil.c
│   │           │   └── sctputil.h
│   │           ├── netinet6/
│   │           │   ├── meson.build
│   │           │   ├── sctp6_usrreq.c
│   │           │   └── sctp6_var.h
│   │           ├── user_atomic.h
│   │           ├── user_environment.c
│   │           ├── user_environment.h
│   │           ├── user_inpcb.h
│   │           ├── user_ip6_var.h
│   │           ├── user_ip_icmp.h
│   │           ├── user_malloc.h
│   │           ├── user_mbuf.c
│   │           ├── user_mbuf.h
│   │           ├── user_queue.h
│   │           ├── user_recv_thread.c
│   │           ├── user_recv_thread.h
│   │           ├── user_route.h
│   │           ├── user_socket.c
│   │           ├── user_socketvar.h
│   │           ├── user_uma.h
│   │           └── usrsctp.h
│   ├── smoothstreaming/
│   │   ├── gstmssdemux.c
│   │   ├── gstmssdemux.h
│   │   ├── gstmssfragmentparser.c
│   │   ├── gstmssfragmentparser.h
│   │   ├── gstmssmanifest.c
│   │   ├── gstmssmanifest.h
│   │   ├── gstsmoothstreaming-plugin.c
│   │   └── meson.build
│   ├── sndfile/
│   │   ├── gstsf.c
│   │   ├── gstsfdec.c
│   │   ├── gstsfdec.h
│   │   ├── gstsfelement.c
│   │   ├── gstsfelements.h
│   │   ├── gstsfsink.c
│   │   ├── gstsfsink.h
│   │   ├── gstsfsrc.c
│   │   ├── gstsfsrc.h
│   │   └── meson.build
│   ├── soundtouch/
│   │   ├── gstbpmdetect.cc
│   │   ├── gstbpmdetect.hh
│   │   ├── gstpitch.cc
│   │   ├── gstpitch.hh
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── spandsp/
│   │   ├── gstdtmfdetect.c
│   │   ├── gstdtmfdetect.h
│   │   ├── gstspandsp.c
│   │   ├── gstspanplc.c
│   │   ├── gstspanplc.h
│   │   ├── gsttonegeneratesrc.c
│   │   ├── gsttonegeneratesrc.h
│   │   └── meson.build
│   ├── srt/
│   │   ├── gstsrt-enums.h
│   │   ├── gstsrt.c
│   │   ├── gstsrtelement.c
│   │   ├── gstsrtelements.h
│   │   ├── gstsrtobject.c
│   │   ├── gstsrtobject.h
│   │   ├── gstsrtplugin.c
│   │   ├── gstsrtsink.c
│   │   ├── gstsrtsink.h
│   │   ├── gstsrtsrc.c
│   │   ├── gstsrtsrc.h
│   │   └── meson.build
│   ├── srtp/
│   │   ├── gstsrtp.c
│   │   ├── gstsrtp.h
│   │   ├── gstsrtpdec.c
│   │   ├── gstsrtpdec.h
│   │   ├── gstsrtpelement.c
│   │   ├── gstsrtpelements.h
│   │   ├── gstsrtpenc.c
│   │   ├── gstsrtpenc.h
│   │   ├── gstsrtpenums.h
│   │   ├── gstsrtpplugin.c
│   │   └── meson.build
│   ├── svthevcenc/
│   │   ├── gstsvthevcenc.c
│   │   ├── gstsvthevcenc.h
│   │   └── meson.build
│   ├── teletextdec/
│   │   ├── gstteletextdec.c
│   │   ├── gstteletextdec.h
│   │   └── meson.build
│   ├── ttml/
│   │   ├── gstttmlelement.c
│   │   ├── gstttmlelements.h
│   │   ├── gstttmlparse.c
│   │   ├── gstttmlparse.h
│   │   ├── gstttmlplugin.c
│   │   ├── gstttmlrender.c
│   │   ├── gstttmlrender.h
│   │   ├── meson.build
│   │   ├── subtitle.c
│   │   ├── subtitle.h
│   │   ├── subtitlemeta.c
│   │   ├── subtitlemeta.h
│   │   ├── ttmlparse.c
│   │   └── ttmlparse.h
│   ├── voaacenc/
│   │   ├── gstvoaac.c
│   │   ├── gstvoaacenc.c
│   │   ├── gstvoaacenc.h
│   │   └── meson.build
│   ├── voamrwbenc/
│   │   ├── GstVoAmrwbEnc.prs
│   │   ├── gstvoamrwb.c
│   │   ├── gstvoamrwbenc.c
│   │   ├── gstvoamrwbenc.h
│   │   └── meson.build
│   ├── vulkan/
│   │   ├── gstvulkan.c
│   │   ├── gstvulkanelement.c
│   │   ├── gstvulkanelements.h
│   │   ├── meson.build
│   │   ├── shaders/
│   │   │   ├── ayuv_to_rgb.frag
│   │   │   ├── bin2array.py
│   │   │   ├── color_convert_generic.glsl
│   │   │   ├── identity.frag
│   │   │   ├── identity.vert
│   │   │   ├── meson.build
│   │   │   ├── nv12_to_rgb.frag
│   │   │   ├── rgb_to_ayuv.frag
│   │   │   ├── rgb_to_nv12.frag
│   │   │   ├── rgb_to_yuy2.frag
│   │   │   ├── swizzle.frag
│   │   │   ├── swizzle.glsl
│   │   │   ├── swizzle_and_clobber_alpha.frag
│   │   │   ├── upsample_ayuv.glsl
│   │   │   ├── upsample_nv12.glsl
│   │   │   ├── upsample_yuy2.glsl
│   │   │   ├── view_convert.frag
│   │   │   ├── view_defines.h
│   │   │   └── yuy2_to_rgb.frag
│   │   ├── vkcolorconvert.c
│   │   ├── vkcolorconvert.h
│   │   ├── vkdeviceprovider.c
│   │   ├── vkdeviceprovider.h
│   │   ├── vkdownload.c
│   │   ├── vkdownload.h
│   │   ├── vkimageidentity.c
│   │   ├── vkimageidentity.h
│   │   ├── vksink.c
│   │   ├── vksink.h
│   │   ├── vkupload.c
│   │   ├── vkupload.h
│   │   ├── vkviewconvert.c
│   │   └── vkviewconvert.h
│   ├── wayland/
│   │   ├── gstwaylandsink.c
│   │   ├── gstwaylandsink.h
│   │   ├── meson.build
│   │   ├── wlbuffer.c
│   │   ├── wlbuffer.h
│   │   ├── wldisplay.c
│   │   ├── wldisplay.h
│   │   ├── wllinuxdmabuf.c
│   │   ├── wllinuxdmabuf.h
│   │   ├── wlshmallocator.c
│   │   ├── wlshmallocator.h
│   │   ├── wlvideoformat.c
│   │   ├── wlvideoformat.h
│   │   ├── wlwindow.c
│   │   └── wlwindow.h
│   ├── webp/
│   │   ├── gstwebp.c
│   │   ├── gstwebpdec.c
│   │   ├── gstwebpdec.h
│   │   ├── gstwebpenc.c
│   │   ├── gstwebpenc.h
│   │   └── meson.build
│   ├── webrtc/
│   │   ├── fwd.h
│   │   ├── gstwebrtc.c
│   │   ├── gstwebrtcbin.c
│   │   ├── gstwebrtcbin.h
│   │   ├── gstwebrtcice.c
│   │   ├── gstwebrtcice.h
│   │   ├── gstwebrtcstats.c
│   │   ├── gstwebrtcstats.h
│   │   ├── icestream.c
│   │   ├── icestream.h
│   │   ├── meson.build
│   │   ├── nicetransport.c
│   │   ├── nicetransport.h
│   │   ├── transportreceivebin.c
│   │   ├── transportreceivebin.h
│   │   ├── transportsendbin.c
│   │   ├── transportsendbin.h
│   │   ├── transportstream.c
│   │   ├── transportstream.h
│   │   ├── utils.c
│   │   ├── utils.h
│   │   ├── webrtcdatachannel.c
│   │   ├── webrtcdatachannel.h
│   │   ├── webrtcsctptransport.c
│   │   ├── webrtcsctptransport.h
│   │   ├── webrtcsdp.c
│   │   ├── webrtcsdp.h
│   │   ├── webrtctransceiver.c
│   │   └── webrtctransceiver.h
│   ├── webrtcdsp/
│   │   ├── gstwebrtcdsp.cpp
│   │   ├── gstwebrtcdsp.h
│   │   ├── gstwebrtcdspplugin.cpp
│   │   ├── gstwebrtcechoprobe.cpp
│   │   ├── gstwebrtcechoprobe.h
│   │   └── meson.build
│   ├── wildmidi/
│   │   ├── README
│   │   ├── gstwildmididec.c
│   │   ├── gstwildmididec.h
│   │   └── meson.build
│   ├── wpe/
│   │   ├── WPEThreadedView.cpp
│   │   ├── WPEThreadedView.h
│   │   ├── gstwpe.cpp
│   │   ├── gstwpe.h
│   │   ├── gstwpesrcbin.cpp
│   │   ├── gstwpesrcbin.h
│   │   ├── gstwpevideosrc.cpp
│   │   ├── gstwpevideosrc.h
│   │   ├── meson.build
│   │   └── wpe-extension/
│   │       ├── gstwpeaudiosink.c
│   │       ├── gstwpebusmsgforwarder.c
│   │       ├── gstwpeextension.c
│   │       ├── gstwpeextension.h
│   │       └── meson.build
│   ├── x265/
│   │   ├── gstx265enc.c
│   │   ├── gstx265enc.h
│   │   └── meson.build
│   ├── zbar/
│   │   ├── gstzbar.c
│   │   ├── gstzbar.h
│   │   └── meson.build
│   └── zxing/
│       ├── gstzxing.cpp
│       ├── gstzxing.h
│       ├── gstzxingplugin.c
│       └── meson.build
├── gst/
│   ├── accurip/
│   │   ├── gstaccurip.c
│   │   ├── gstaccurip.h
│   │   └── meson.build
│   ├── adpcmdec/
│   │   ├── adpcmdec.c
│   │   └── meson.build
│   ├── adpcmenc/
│   │   ├── adpcmenc.c
│   │   └── meson.build
│   ├── aiff/
│   │   ├── aiff.c
│   │   ├── aiffelements.h
│   │   ├── aiffmux.c
│   │   ├── aiffmux.h
│   │   ├── aiffparse.c
│   │   ├── aiffparse.h
│   │   ├── gstaiffelement.c
│   │   └── meson.build
│   ├── asfmux/
│   │   ├── gstasf.c
│   │   ├── gstasfmux.c
│   │   ├── gstasfmux.h
│   │   ├── gstasfobjects.c
│   │   ├── gstasfobjects.h
│   │   ├── gstasfparse.c
│   │   ├── gstasfparse.h
│   │   ├── gstrtpasfpay.c
│   │   ├── gstrtpasfpay.h
│   │   └── meson.build
│   ├── audiobuffersplit/
│   │   ├── gstaudiobuffersplit.c
│   │   ├── gstaudiobuffersplit.h
│   │   └── meson.build
│   ├── audiofxbad/
│   │   ├── gstaudiochannelmix.c
│   │   ├── gstaudiochannelmix.h
│   │   ├── gstaudiofxbad.c
│   │   └── meson.build
│   ├── audiolatency/
│   │   ├── gstaudiolatency.c
│   │   ├── gstaudiolatency.h
│   │   └── meson.build
│   ├── audiomixmatrix/
│   │   ├── gstaudiomixmatrix.c
│   │   ├── gstaudiomixmatrix.h
│   │   └── meson.build
│   ├── audiovisualizers/
│   │   ├── README
│   │   ├── gstdrawhelpers.h
│   │   ├── gstspacescope.c
│   │   ├── gstspacescope.h
│   │   ├── gstspectrascope.c
│   │   ├── gstspectrascope.h
│   │   ├── gstsynaescope.c
│   │   ├── gstsynaescope.h
│   │   ├── gstwavescope.c
│   │   ├── gstwavescope.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── autoconvert/
│   │   ├── gstautoconvert.c
│   │   ├── gstautoconvert.h
│   │   ├── gstautovideoconvert.c
│   │   ├── gstautovideoconvert.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── bayer/
│   │   ├── gstbayer.c
│   │   ├── gstbayer2rgb.c
│   │   ├── gstbayerelements.h
│   │   ├── gstbayerorc-dist.c
│   │   ├── gstbayerorc-dist.h
│   │   ├── gstbayerorc.orc
│   │   ├── gstrgb2bayer.c
│   │   ├── gstrgb2bayer.h
│   │   └── meson.build
│   ├── camerabin2/
│   │   ├── PORTING
│   │   ├── camerabin2-src.txt
│   │   ├── camerabingeneral.c
│   │   ├── camerabingeneral.h
│   │   ├── gstcamerabin2.c
│   │   ├── gstcamerabin2.h
│   │   ├── gstdigitalzoom.c
│   │   ├── gstdigitalzoom.h
│   │   ├── gstplugin.c
│   │   ├── gstviewfinderbin.c
│   │   ├── gstviewfinderbin.h
│   │   ├── gstwrappercamerabinsrc.c
│   │   ├── gstwrappercamerabinsrc.h
│   │   └── meson.build
│   ├── codecalpha/
│   │   ├── gstalphacombine.c
│   │   ├── gstalphacombine.h
│   │   ├── gstalphadecodebin.c
│   │   ├── gstalphadecodebin.h
│   │   ├── gstcodecalphademux.c
│   │   ├── gstcodecalphademux.h
│   │   ├── gstplugin.c
│   │   ├── gstvp8alphadecodebin.c
│   │   ├── gstvp8alphadecodebin.h
│   │   ├── gstvp9alphadecodebin.c
│   │   ├── gstvp9alphadecodebin.h
│   │   └── meson.build
│   ├── coloreffects/
│   │   ├── gstchromahold.c
│   │   ├── gstchromahold.h
│   │   ├── gstcoloreffects.c
│   │   ├── gstcoloreffects.h
│   │   ├── gstplugin.c
│   │   └── meson.build
│   ├── debugutils/
│   │   ├── debugutilsbad.c
│   │   ├── fpsdisplaysink.c
│   │   ├── fpsdisplaysink.h
│   │   ├── gstchecksumsink.c
│   │   ├── gstchecksumsink.h
│   │   ├── gstchopmydata.c
│   │   ├── gstchopmydata.h
│   │   ├── gstclockselect.c
│   │   ├── gstclockselect.h
│   │   ├── gstcompare.c
│   │   ├── gstcompare.h
│   │   ├── gstdebugspy.c
│   │   ├── gstdebugspy.h
│   │   ├── gstdebugutilsbadelements.h
│   │   ├── gsterrorignore.c
│   │   ├── gsterrorignore.h
│   │   ├── gstfakeaudiosink.c
│   │   ├── gstfakeaudiosink.h
│   │   ├── gstfakesinkutils.c
│   │   ├── gstfakesinkutils.h
│   │   ├── gstfakevideosink.c
│   │   ├── gstfakevideosink.h
│   │   ├── gsttestsrcbin.c
│   │   ├── gstvideocodectestsink.c
│   │   ├── gstvideocodectestsink.h
│   │   ├── gstwatchdog.c
│   │   ├── gstwatchdog.h
│   │   └── meson.build
│   ├── dvbsubenc/
│   │   ├── gstdvbsubenc-util.c
│   │   ├── gstdvbsubenc.c
│   │   ├── gstdvbsubenc.h
│   │   ├── libimagequant/
│   │   │   ├── CHANGELOG
│   │   │   ├── COPYRIGHT
│   │   │   ├── README.md
│   │   │   ├── blur.c
│   │   │   ├── blur.h
│   │   │   ├── libimagequant.c
│   │   │   ├── libimagequant.h
│   │   │   ├── mediancut.c
│   │   │   ├── mediancut.h
│   │   │   ├── mempool.c
│   │   │   ├── mempool.h
│   │   │   ├── nearest.c
│   │   │   ├── nearest.h
│   │   │   ├── pam.c
│   │   │   ├── pam.h
│   │   │   ├── viter.c
│   │   │   └── viter.h
│   │   └── meson.build
│   ├── dvbsuboverlay/
│   │   ├── TODO
│   │   ├── dvb-sub.c
│   │   ├── dvb-sub.h
│   │   ├── gstdvbsuboverlay.c
│   │   ├── gstdvbsuboverlay.h
│   │   └── meson.build
│   ├── dvdspu/
│   │   ├── Notes.txt
│   │   ├── gstdvdspu-render.c
│   │   ├── gstdvdspu.c
│   │   ├── gstdvdspu.h
│   │   ├── gstspu-common.h
│   │   ├── gstspu-pgs.c
│   │   ├── gstspu-pgs.h
│   │   ├── gstspu-vobsub-render.c
│   │   ├── gstspu-vobsub.c
│   │   ├── gstspu-vobsub.h
│   │   └── meson.build
│   ├── faceoverlay/
│   │   ├── gstfaceoverlay.c
│   │   ├── gstfaceoverlay.h
│   │   └── meson.build
│   ├── festival/
│   │   ├── gstfestival.c
│   │   ├── gstfestival.h
│   │   └── meson.build
│   ├── fieldanalysis/
│   │   ├── gstfieldanalysis.c
│   │   ├── gstfieldanalysis.h
│   │   ├── gstfieldanalysisorc-dist.c
│   │   ├── gstfieldanalysisorc-dist.h
│   │   ├── gstfieldanalysisorc.orc
│   │   └── meson.build
│   ├── freeverb/
│   │   ├── GstFreeverb.prs
│   │   ├── gstfreeverb.c
│   │   ├── gstfreeverb.h
│   │   └── meson.build
│   ├── frei0r/
│   │   ├── frei0r.h
│   │   ├── gstfrei0r.c
│   │   ├── gstfrei0r.h
│   │   ├── gstfrei0rfilter.c
│   │   ├── gstfrei0rfilter.h
│   │   ├── gstfrei0rmixer.c
│   │   ├── gstfrei0rmixer.h
│   │   ├── gstfrei0rsrc.c
│   │   ├── gstfrei0rsrc.h
│   │   └── meson.build
│   ├── gaudieffects/
│   │   ├── blur-example.py
│   │   ├── burn-example.py
│   │   ├── gstburn.c
│   │   ├── gstburn.h
│   │   ├── gstchromium.c
│   │   ├── gstchromium.h
│   │   ├── gstdilate.c
│   │   ├── gstdilate.h
│   │   ├── gstdodge.c
│   │   ├── gstdodge.h
│   │   ├── gstexclusion.c
│   │   ├── gstexclusion.h
│   │   ├── gstgaudieffectsorc-dist.c
│   │   ├── gstgaudieffectsorc-dist.h
│   │   ├── gstgaudieffectsorc.orc
│   │   ├── gstgaussblur.c
│   │   ├── gstgaussblur.h
│   │   ├── gstplugin.c
│   │   ├── gstsolarize.c
│   │   ├── gstsolarize.h
│   │   └── meson.build
│   ├── gdp/
│   │   ├── README
│   │   ├── dataprotocol.c
│   │   ├── dataprotocol.h
│   │   ├── dp-private.h
│   │   ├── gstgdp.c
│   │   ├── gstgdpdepay.c
│   │   ├── gstgdpdepay.h
│   │   ├── gstgdpelement.c
│   │   ├── gstgdpelements.h
│   │   ├── gstgdppay.c
│   │   ├── gstgdppay.h
│   │   └── meson.build
│   ├── geometrictransform/
│   │   ├── geometricmath.c
│   │   ├── geometricmath.h
│   │   ├── gstbulge.c
│   │   ├── gstbulge.h
│   │   ├── gstcircle.c
│   │   ├── gstcircle.h
│   │   ├── gstcirclegeometrictransform.c
│   │   ├── gstcirclegeometrictransform.h
│   │   ├── gstdiffuse.c
│   │   ├── gstdiffuse.h
│   │   ├── gstfisheye.c
│   │   ├── gstfisheye.h
│   │   ├── gstgeometrictransform.c
│   │   ├── gstgeometrictransform.h
│   │   ├── gstkaleidoscope.c
│   │   ├── gstkaleidoscope.h
│   │   ├── gstmarble.c
│   │   ├── gstmarble.h
│   │   ├── gstmirror.c
│   │   ├── gstmirror.h
│   │   ├── gstperspective.c
│   │   ├── gstperspective.h
│   │   ├── gstpinch.c
│   │   ├── gstpinch.h
│   │   ├── gstrotate.c
│   │   ├── gstrotate.h
│   │   ├── gstsphere.c
│   │   ├── gstsphere.h
│   │   ├── gstsquare.c
│   │   ├── gstsquare.h
│   │   ├── gststretch.c
│   │   ├── gststretch.h
│   │   ├── gsttunnel.c
│   │   ├── gsttunnel.h
│   │   ├── gsttwirl.c
│   │   ├── gsttwirl.h
│   │   ├── gstwaterripple.c
│   │   ├── gstwaterripple.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── id3tag/
│   │   ├── gstid3mux.c
│   │   ├── gstid3mux.h
│   │   ├── id3tag.c
│   │   ├── id3tag.h
│   │   └── meson.build
│   ├── inter/
│   │   ├── gstinter.c
│   │   ├── gstinteraudiosink.c
│   │   ├── gstinteraudiosink.h
│   │   ├── gstinteraudiosrc.c
│   │   ├── gstinteraudiosrc.h
│   │   ├── gstintersubsink.c
│   │   ├── gstintersubsink.h
│   │   ├── gstintersubsrc.c
│   │   ├── gstintersubsrc.h
│   │   ├── gstintersurface.c
│   │   ├── gstintersurface.h
│   │   ├── gstintertest.c
│   │   ├── gstintervideosink.c
│   │   ├── gstintervideosink.h
│   │   ├── gstintervideosrc.c
│   │   ├── gstintervideosrc.h
│   │   └── meson.build
│   ├── interlace/
│   │   ├── gstinterlace.c
│   │   └── meson.build
│   ├── ivfparse/
│   │   ├── gstivfparse.c
│   │   ├── gstivfparse.h
│   │   └── meson.build
│   ├── ivtc/
│   │   ├── gstcombdetect.c
│   │   ├── gstcombdetect.h
│   │   ├── gstivtc.c
│   │   ├── gstivtc.h
│   │   └── meson.build
│   ├── jp2kdecimator/
│   │   ├── gstjp2kdecimator.c
│   │   ├── gstjp2kdecimator.h
│   │   ├── jp2kcodestream.c
│   │   ├── jp2kcodestream.h
│   │   └── meson.build
│   ├── jpegformat/
│   │   ├── gstjifmux.c
│   │   ├── gstjifmux.h
│   │   ├── gstjpegformat.c
│   │   ├── gstjpegformat.h
│   │   ├── gstjpegparse.c
│   │   ├── gstjpegparse.h
│   │   └── meson.build
│   ├── librfb/
│   │   ├── d3des.c
│   │   ├── d3des.h
│   │   ├── gstrfbsrc.c
│   │   ├── gstrfbsrc.h
│   │   ├── meson.build
│   │   ├── rfbdecoder.c
│   │   └── rfbdecoder.h
│   ├── meson.build
│   ├── midi/
│   │   ├── meson.build
│   │   ├── midi.c
│   │   ├── midiparse.c
│   │   └── midiparse.h
│   ├── mpegdemux/
│   │   ├── gstmpegdefs.h
│   │   ├── gstmpegdemux.c
│   │   ├── gstmpegdemux.h
│   │   ├── gstpesfilter.c
│   │   ├── gstpesfilter.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── mpegpsmux/
│   │   ├── bits.h
│   │   ├── crc.h
│   │   ├── meson.build
│   │   ├── mpegpsmux.c
│   │   ├── mpegpsmux.h
│   │   ├── mpegpsmux_aac.c
│   │   ├── mpegpsmux_aac.h
│   │   ├── mpegpsmux_h264.c
│   │   ├── mpegpsmux_h264.h
│   │   ├── psmux.c
│   │   ├── psmux.h
│   │   ├── psmuxcommon.h
│   │   ├── psmuxstream.c
│   │   └── psmuxstream.h
│   ├── mpegtsdemux/
│   │   ├── TODO
│   │   ├── gstmpegdefs.h
│   │   ├── gstmpegdesc.h
│   │   ├── gsttsdemux.c
│   │   ├── meson.build
│   │   ├── mpegtsbase.c
│   │   ├── mpegtsbase.h
│   │   ├── mpegtspacketizer.c
│   │   ├── mpegtspacketizer.h
│   │   ├── mpegtsparse.c
│   │   ├── mpegtsparse.h
│   │   ├── pesparse.c
│   │   ├── pesparse.h
│   │   ├── tsdemux.c
│   │   └── tsdemux.h
│   ├── mpegtsmux/
│   │   ├── gstatscmux.c
│   │   ├── gstatscmux.h
│   │   ├── gstbasetsmux.c
│   │   ├── gstbasetsmux.h
│   │   ├── gstbasetsmuxaac.c
│   │   ├── gstbasetsmuxaac.h
│   │   ├── gstbasetsmuxjpeg2000.c
│   │   ├── gstbasetsmuxjpeg2000.h
│   │   ├── gstbasetsmuxopus.c
│   │   ├── gstbasetsmuxopus.h
│   │   ├── gstbasetsmuxttxt.c
│   │   ├── gstbasetsmuxttxt.h
│   │   ├── gstmpegtsmux.c
│   │   ├── gstmpegtsmux.h
│   │   ├── gstmpegtsmuxplugin.c
│   │   ├── meson.build
│   │   └── tsmux/
│   │       ├── tsmux.c
│   │       ├── tsmux.h
│   │       ├── tsmuxcommon.h
│   │       ├── tsmuxstream.c
│   │       └── tsmuxstream.h
│   ├── mxf/
│   │   ├── gstmxfelement.c
│   │   ├── gstmxfelements.h
│   │   ├── meson.build
│   │   ├── mxf.c
│   │   ├── mxfaes-bwf.c
│   │   ├── mxfaes-bwf.h
│   │   ├── mxfalaw.c
│   │   ├── mxfalaw.h
│   │   ├── mxfd10.c
│   │   ├── mxfd10.h
│   │   ├── mxfdemux.c
│   │   ├── mxfdemux.h
│   │   ├── mxfdms1.c
│   │   ├── mxfdms1.h
│   │   ├── mxfdv-dif.c
│   │   ├── mxfdv-dif.h
│   │   ├── mxfessence.c
│   │   ├── mxfessence.h
│   │   ├── mxfjpeg2000.c
│   │   ├── mxfjpeg2000.h
│   │   ├── mxfmetadata.c
│   │   ├── mxfmetadata.h
│   │   ├── mxfmpeg.c
│   │   ├── mxfmpeg.h
│   │   ├── mxfmux.c
│   │   ├── mxfmux.h
│   │   ├── mxfprores.c
│   │   ├── mxfprores.h
│   │   ├── mxfquark.c
│   │   ├── mxfquark.h
│   │   ├── mxftypes.c
│   │   ├── mxftypes.h
│   │   ├── mxful.c
│   │   ├── mxful.h
│   │   ├── mxfup.c
│   │   ├── mxfup.h
│   │   ├── mxfvanc.c
│   │   ├── mxfvanc.h
│   │   ├── mxfvc3.c
│   │   └── mxfvc3.h
│   ├── netsim/
│   │   ├── gstnetsim.c
│   │   ├── gstnetsim.h
│   │   └── meson.build
│   ├── onvif/
│   │   ├── gstrtponvif.c
│   │   ├── gstrtponvifparse.c
│   │   ├── gstrtponvifparse.h
│   │   ├── gstrtponviftimestamp.c
│   │   ├── gstrtponviftimestamp.h
│   │   └── meson.build
│   ├── pcapparse/
│   │   ├── gstirtspparse.c
│   │   ├── gstirtspparse.h
│   │   ├── gstpcapparse.c
│   │   ├── gstpcapparse.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── pnm/
│   │   ├── gstpnm.c
│   │   ├── gstpnmdec.c
│   │   ├── gstpnmdec.h
│   │   ├── gstpnmenc.c
│   │   ├── gstpnmenc.h
│   │   ├── gstpnmutils.c
│   │   ├── gstpnmutils.h
│   │   └── meson.build
│   ├── proxy/
│   │   ├── gstproxy-priv.h
│   │   ├── gstproxy.c
│   │   ├── gstproxysink.c
│   │   ├── gstproxysink.h
│   │   ├── gstproxysrc.c
│   │   ├── gstproxysrc.h
│   │   └── meson.build
│   ├── rawparse/
│   │   ├── README
│   │   ├── gstaudioparse.c
│   │   ├── gstaudioparse.h
│   │   ├── gstvideoparse.c
│   │   ├── gstvideoparse.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── removesilence/
│   │   ├── gstremovesilence.c
│   │   ├── gstremovesilence.h
│   │   ├── meson.build
│   │   ├── vad_private.c
│   │   └── vad_private.h
│   ├── rist/
│   │   ├── gstrist.c
│   │   ├── gstrist.h
│   │   ├── gstristplugin.c
│   │   ├── gstristrtpdeext.c
│   │   ├── gstristrtpext.c
│   │   ├── gstristrtxreceive.c
│   │   ├── gstristrtxsend.c
│   │   ├── gstristsink.c
│   │   ├── gstristsrc.c
│   │   ├── gstroundrobin.c
│   │   ├── gstroundrobin.h
│   │   └── meson.build
│   ├── rtmp2/
│   │   ├── TODO
│   │   ├── gstrtmp2.c
│   │   ├── gstrtmp2element.c
│   │   ├── gstrtmp2elements.h
│   │   ├── gstrtmp2locationhandler.c
│   │   ├── gstrtmp2locationhandler.h
│   │   ├── gstrtmp2sink.c
│   │   ├── gstrtmp2sink.h
│   │   ├── gstrtmp2src.c
│   │   ├── gstrtmp2src.h
│   │   ├── meson.build
│   │   └── rtmp/
│   │       ├── amf.c
│   │       ├── amf.h
│   │       ├── rtmpchunkstream.c
│   │       ├── rtmpchunkstream.h
│   │       ├── rtmpclient.c
│   │       ├── rtmpclient.h
│   │       ├── rtmpconnection.c
│   │       ├── rtmpconnection.h
│   │       ├── rtmphandshake.c
│   │       ├── rtmphandshake.h
│   │       ├── rtmpmessage.c
│   │       ├── rtmpmessage.h
│   │       ├── rtmputils.c
│   │       └── rtmputils.h
│   ├── rtp/
│   │   ├── gstrtp-utils.c
│   │   ├── gstrtp-utils.h
│   │   ├── gstrtpsink.c
│   │   ├── gstrtpsink.h
│   │   ├── gstrtpsrc.c
│   │   ├── gstrtpsrc.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── sdp/
│   │   ├── gstsdpdemux.c
│   │   ├── gstsdpdemux.h
│   │   ├── gstsdpelem.c
│   │   ├── gstsdpsrc.c
│   │   ├── gstsdpsrc.h
│   │   └── meson.build
│   ├── segmentclip/
│   │   ├── gstaudiosegmentclip.c
│   │   ├── gstaudiosegmentclip.h
│   │   ├── gstsegmentclip.c
│   │   ├── gstsegmentclip.h
│   │   ├── gstvideosegmentclip.c
│   │   ├── gstvideosegmentclip.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── siren/
│   │   ├── common.c
│   │   ├── common.h
│   │   ├── dct4.c
│   │   ├── dct4.h
│   │   ├── decoder.c
│   │   ├── decoder.h
│   │   ├── encoder.c
│   │   ├── encoder.h
│   │   ├── gstsiren.c
│   │   ├── gstsiren.h
│   │   ├── gstsirendec.c
│   │   ├── gstsirendec.h
│   │   ├── gstsirenenc.c
│   │   ├── gstsirenenc.h
│   │   ├── huffman.c
│   │   ├── huffman.h
│   │   ├── huffman_consts.h
│   │   ├── meson.build
│   │   ├── rmlt.c
│   │   ├── rmlt.h
│   │   └── siren7.h
│   ├── smooth/
│   │   ├── gstsmooth.c
│   │   ├── gstsmooth.h
│   │   └── meson.build
│   ├── speed/
│   │   ├── gstspeed.c
│   │   ├── gstspeed.h
│   │   └── meson.build
│   ├── subenc/
│   │   ├── gstsrtenc.c
│   │   ├── gstsrtenc.h
│   │   ├── gstsubenc.c
│   │   ├── gstwebvttenc.c
│   │   ├── gstwebvttenc.h
│   │   └── meson.build
│   ├── switchbin/
│   │   ├── gstswitchbin.c
│   │   ├── gstswitchbin.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── timecode/
│   │   ├── gstavwait.c
│   │   ├── gstavwait.h
│   │   ├── gsttimecodestamper.c
│   │   ├── gsttimecodestamper.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── transcode/
│   │   ├── gst-cpu-throttling-clock.c
│   │   ├── gst-cpu-throttling-clock.h
│   │   ├── gsttranscodebin.c
│   │   ├── gsttranscodeelement.c
│   │   ├── gsttranscodeelements.h
│   │   ├── gsttranscodeplugin.c
│   │   ├── gsttranscoding.h
│   │   ├── gsturitranscodebin.c
│   │   └── meson.build
│   ├── videofilters/
│   │   ├── gstscenechange.c
│   │   ├── gstscenechange.h
│   │   ├── gstscenechangeorc-dist.c
│   │   ├── gstscenechangeorc-dist.h
│   │   ├── gstscenechangeorc.orc
│   │   ├── gstvideodiff.c
│   │   ├── gstvideodiff.h
│   │   ├── gstvideofiltersbad.c
│   │   ├── gstzebrastripe.c
│   │   ├── gstzebrastripe.h
│   │   └── meson.build
│   ├── videoframe_audiolevel/
│   │   ├── gstvideoframe-audiolevel.c
│   │   ├── gstvideoframe-audiolevel.h
│   │   └── meson.build
│   ├── videoparsers/
│   │   ├── dirac_parse.c
│   │   ├── dirac_parse.h
│   │   ├── gstav1parse.c
│   │   ├── gstav1parse.h
│   │   ├── gstdiracparse.c
│   │   ├── gstdiracparse.h
│   │   ├── gsth263parse.c
│   │   ├── gsth263parse.h
│   │   ├── gsth264parse.c
│   │   ├── gsth264parse.h
│   │   ├── gsth265parse.c
│   │   ├── gsth265parse.h
│   │   ├── gstjpeg2000parse.c
│   │   ├── gstjpeg2000parse.h
│   │   ├── gstmpeg4videoparse.c
│   │   ├── gstmpeg4videoparse.h
│   │   ├── gstmpegvideoparse.c
│   │   ├── gstmpegvideoparse.h
│   │   ├── gstpngparse.c
│   │   ├── gstpngparse.h
│   │   ├── gstvc1parse.c
│   │   ├── gstvc1parse.h
│   │   ├── gstvideoparserselement.c
│   │   ├── gstvideoparserselements.h
│   │   ├── gstvideoparseutils.c
│   │   ├── gstvideoparseutils.h
│   │   ├── gstvp9parse.c
│   │   ├── gstvp9parse.h
│   │   ├── h263parse.c
│   │   ├── h263parse.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── videosignal/
│   │   ├── gstsimplevideomark.c
│   │   ├── gstsimplevideomark.h
│   │   ├── gstsimplevideomarkdetect.c
│   │   ├── gstsimplevideomarkdetect.h
│   │   ├── gstvideoanalyse.c
│   │   ├── gstvideoanalyse.h
│   │   ├── gstvideosignal.c
│   │   ├── gstvideosignal.h
│   │   └── meson.build
│   ├── vmnc/
│   │   ├── meson.build
│   │   ├── vmncdec.c
│   │   └── vmncdec.h
│   └── y4m/
│       ├── gsty4mdec.c
│       ├── gsty4mdec.h
│       └── meson.build
├── gst-libs/
│   ├── gst/
│   │   ├── adaptivedemux/
│   │   │   ├── adaptive-demux-prelude.h
│   │   │   ├── gstadaptivedemux.c
│   │   │   ├── gstadaptivedemux.h
│   │   │   └── meson.build
│   │   ├── audio/
│   │   │   ├── audio-bad-prelude.h
│   │   │   ├── gstnonstreamaudiodecoder.c
│   │   │   ├── gstnonstreamaudiodecoder.h
│   │   │   ├── gstplanaraudioadapter.c
│   │   │   ├── gstplanaraudioadapter.h
│   │   │   └── meson.build
│   │   ├── basecamerabinsrc/
│   │   │   ├── basecamerabinsrc-prelude.h
│   │   │   ├── gstbasecamerasrc.c
│   │   │   ├── gstbasecamerasrc.h
│   │   │   ├── gstcamerabin-enum.c
│   │   │   ├── gstcamerabin-enum.h
│   │   │   ├── gstcamerabinpreview.c
│   │   │   ├── gstcamerabinpreview.h
│   │   │   └── meson.build
│   │   ├── codecparsers/
│   │   │   ├── codecparsers-prelude.h
│   │   │   ├── dboolhuff.AUTHORS
│   │   │   ├── dboolhuff.LICENSE
│   │   │   ├── dboolhuff.PATENTS
│   │   │   ├── dboolhuff.c
│   │   │   ├── dboolhuff.h
│   │   │   ├── gstav1parser.c
│   │   │   ├── gstav1parser.h
│   │   │   ├── gsth264parser.c
│   │   │   ├── gsth264parser.h
│   │   │   ├── gsth265parser.c
│   │   │   ├── gsth265parser.h
│   │   │   ├── gstjpeg2000sampling.c
│   │   │   ├── gstjpeg2000sampling.h
│   │   │   ├── gstjpegparser.c
│   │   │   ├── gstjpegparser.h
│   │   │   ├── gstmpeg4parser.c
│   │   │   ├── gstmpeg4parser.h
│   │   │   ├── gstmpegvideometa.c
│   │   │   ├── gstmpegvideometa.h
│   │   │   ├── gstmpegvideoparser.c
│   │   │   ├── gstmpegvideoparser.h
│   │   │   ├── gstvc1parser.c
│   │   │   ├── gstvc1parser.h
│   │   │   ├── gstvp8parser.c
│   │   │   ├── gstvp8parser.h
│   │   │   ├── gstvp8rangedecoder.c
│   │   │   ├── gstvp8rangedecoder.h
│   │   │   ├── gstvp9parser.c
│   │   │   ├── gstvp9parser.h
│   │   │   ├── meson.build
│   │   │   ├── nalutils.c
│   │   │   ├── nalutils.h
│   │   │   ├── parserutils.c
│   │   │   ├── parserutils.h
│   │   │   ├── vp8utils.c
│   │   │   ├── vp8utils.h
│   │   │   ├── vp9utils.c
│   │   │   └── vp9utils.h
│   │   ├── codecs/
│   │   │   ├── codecs-prelude.h
│   │   │   ├── gstav1decoder.c
│   │   │   ├── gstav1decoder.h
│   │   │   ├── gstav1picture.c
│   │   │   ├── gstav1picture.h
│   │   │   ├── gsth264decoder.c
│   │   │   ├── gsth264decoder.h
│   │   │   ├── gsth264picture.c
│   │   │   ├── gsth264picture.h
│   │   │   ├── gsth265decoder.c
│   │   │   ├── gsth265decoder.h
│   │   │   ├── gsth265picture.c
│   │   │   ├── gsth265picture.h
│   │   │   ├── gstmpeg2decoder.c
│   │   │   ├── gstmpeg2decoder.h
│   │   │   ├── gstmpeg2picture.c
│   │   │   ├── gstmpeg2picture.h
│   │   │   ├── gstvp8decoder.c
│   │   │   ├── gstvp8decoder.h
│   │   │   ├── gstvp8picture.c
│   │   │   ├── gstvp8picture.h
│   │   │   ├── gstvp9decoder.c
│   │   │   ├── gstvp9decoder.h
│   │   │   ├── gstvp9picture.c
│   │   │   ├── gstvp9picture.h
│   │   │   ├── gstvp9statefulparser.c
│   │   │   ├── gstvp9statefulparser.h
│   │   │   └── meson.build
│   │   ├── d3d11/
│   │   │   ├── d3d11-prelude.h
│   │   │   ├── gstd3d11.h
│   │   │   ├── gstd3d11_fwd.h
│   │   │   ├── gstd3d11_private.h
│   │   │   ├── gstd3d11bufferpool.cpp
│   │   │   ├── gstd3d11bufferpool.h
│   │   │   ├── gstd3d11config.h.meson
│   │   │   ├── gstd3d11device.cpp
│   │   │   ├── gstd3d11device.h
│   │   │   ├── gstd3d11format.cpp
│   │   │   ├── gstd3d11format.h
│   │   │   ├── gstd3d11memory.cpp
│   │   │   ├── gstd3d11memory.h
│   │   │   ├── gstd3d11utils.cpp
│   │   │   ├── gstd3d11utils.h
│   │   │   └── meson.build
│   │   ├── gettext.h
│   │   ├── glib-compat-private.h
│   │   ├── gst-i18n-plugin.h
│   │   ├── insertbin/
│   │   │   ├── gstinsertbin.c
│   │   │   ├── gstinsertbin.h
│   │   │   └── meson.build
│   │   ├── interfaces/
│   │   │   ├── meson.build
│   │   │   ├── photography-prelude.h
│   │   │   ├── photography.c
│   │   │   └── photography.h
│   │   ├── isoff/
│   │   │   ├── gstisoff.c
│   │   │   ├── gstisoff.h
│   │   │   └── meson.build
│   │   ├── meson.build
│   │   ├── mpegts/
│   │   │   ├── gst-atsc-descriptor.h
│   │   │   ├── gst-atsc-section.c
│   │   │   ├── gst-atsc-section.h
│   │   │   ├── gst-dvb-descriptor.c
│   │   │   ├── gst-dvb-descriptor.h
│   │   │   ├── gst-dvb-section.c
│   │   │   ├── gst-dvb-section.h
│   │   │   ├── gst-hdmv-section.h
│   │   │   ├── gst-isdb-descriptor.h
│   │   │   ├── gst-scte-section.c
│   │   │   ├── gst-scte-section.h
│   │   │   ├── gstmpegts-private.h
│   │   │   ├── gstmpegtsdescriptor.c
│   │   │   ├── gstmpegtsdescriptor.h
│   │   │   ├── gstmpegtssection.c
│   │   │   ├── gstmpegtssection.h
│   │   │   ├── meson.build
│   │   │   ├── mpegts-prelude.h
│   │   │   ├── mpegts.c
│   │   │   └── mpegts.h
│   │   ├── opencv/
│   │   │   ├── gstopencvutils.cpp
│   │   │   ├── gstopencvutils.h
│   │   │   ├── gstopencvvideofilter.cpp
│   │   │   ├── gstopencvvideofilter.h
│   │   │   ├── meson.build
│   │   │   └── opencv-prelude.h
│   │   ├── play/
│   │   │   ├── gstplay-media-info-private.h
│   │   │   ├── gstplay-media-info.c
│   │   │   ├── gstplay-media-info.h
│   │   │   ├── gstplay-message-private.h
│   │   │   ├── gstplay-signal-adapter.c
│   │   │   ├── gstplay-signal-adapter.h
│   │   │   ├── gstplay-types.h
│   │   │   ├── gstplay-video-overlay-video-renderer.c
│   │   │   ├── gstplay-video-overlay-video-renderer.h
│   │   │   ├── gstplay-video-renderer-private.h
│   │   │   ├── gstplay-video-renderer.c
│   │   │   ├── gstplay-video-renderer.h
│   │   │   ├── gstplay-visualization.c
│   │   │   ├── gstplay-visualization.h
│   │   │   ├── gstplay.c
│   │   │   ├── gstplay.h
│   │   │   ├── meson.build
│   │   │   ├── play-prelude.h
│   │   │   └── play.h
│   │   ├── player/
│   │   │   ├── gstplayer-g-main-context-signal-dispatcher.c
│   │   │   ├── gstplayer-g-main-context-signal-dispatcher.h
│   │   │   ├── gstplayer-media-info-private.h
│   │   │   ├── gstplayer-media-info.c
│   │   │   ├── gstplayer-media-info.h
│   │   │   ├── gstplayer-signal-dispatcher-private.h
│   │   │   ├── gstplayer-signal-dispatcher.c
│   │   │   ├── gstplayer-signal-dispatcher.h
│   │   │   ├── gstplayer-types.h
│   │   │   ├── gstplayer-video-overlay-video-renderer.c
│   │   │   ├── gstplayer-video-overlay-video-renderer.h
│   │   │   ├── gstplayer-video-renderer-private.h
│   │   │   ├── gstplayer-video-renderer.c
│   │   │   ├── gstplayer-video-renderer.h
│   │   │   ├── gstplayer-visualization.c
│   │   │   ├── gstplayer-visualization.h
│   │   │   ├── gstplayer-wrapped-video-renderer-private.h
│   │   │   ├── gstplayer-wrapped-video-renderer.c
│   │   │   ├── gstplayer.c
│   │   │   ├── gstplayer.h
│   │   │   ├── meson.build
│   │   │   ├── player-prelude.h
│   │   │   └── player.h
│   │   ├── sctp/
│   │   │   ├── meson.build
│   │   │   ├── sctp-prelude.h
│   │   │   ├── sctpreceivemeta.c
│   │   │   ├── sctpreceivemeta.h
│   │   │   ├── sctpsendmeta.c
│   │   │   └── sctpsendmeta.h
│   │   ├── transcoder/
│   │   │   ├── gsttranscoder-private.h
│   │   │   ├── gsttranscoder-signal-adapter.c
│   │   │   ├── gsttranscoder-signal-adapter.h
│   │   │   ├── gsttranscoder.c
│   │   │   ├── gsttranscoder.h
│   │   │   ├── meson.build
│   │   │   └── transcoder-prelude.h
│   │   ├── uridownloader/
│   │   │   ├── gstfragment.c
│   │   │   ├── gstfragment.h
│   │   │   ├── gsturidownloader.c
│   │   │   ├── gsturidownloader.h
│   │   │   ├── gsturidownloader_debug.h
│   │   │   ├── meson.build
│   │   │   └── uridownloader-prelude.h
│   │   ├── va/
│   │   │   ├── gstvadisplay.c
│   │   │   ├── gstvadisplay.h
│   │   │   ├── gstvadisplay_drm.c
│   │   │   ├── gstvadisplay_drm.h
│   │   │   ├── gstvadisplay_wrapped.c
│   │   │   ├── gstvadisplay_wrapped.h
│   │   │   ├── meson.build
│   │   │   ├── va-prelude.h
│   │   │   └── va_fwd.h
│   │   ├── vulkan/
│   │   │   ├── android/
│   │   │   │   ├── gstvkdisplay_android.c
│   │   │   │   ├── gstvkdisplay_android.h
│   │   │   │   ├── gstvkwindow_android.c
│   │   │   │   └── gstvkwindow_android.h
│   │   │   ├── cocoa/
│   │   │   │   ├── gstvkcocoa_utils.h
│   │   │   │   ├── gstvkdisplay_cocoa.h
│   │   │   │   ├── gstvkdisplay_cocoa.m
│   │   │   │   ├── gstvkwindow_cocoa.h
│   │   │   │   └── gstvkwindow_cocoa.m
│   │   │   ├── gstvkapi.h
│   │   │   ├── gstvkbarrier.h
│   │   │   ├── gstvkbuffermemory.c
│   │   │   ├── gstvkbuffermemory.h
│   │   │   ├── gstvkbufferpool.c
│   │   │   ├── gstvkbufferpool.h
│   │   │   ├── gstvkcommandbuffer.c
│   │   │   ├── gstvkcommandbuffer.h
│   │   │   ├── gstvkcommandpool-private.h
│   │   │   ├── gstvkcommandpool.c
│   │   │   ├── gstvkcommandpool.h
│   │   │   ├── gstvkconfig.h.meson
│   │   │   ├── gstvkdebug-private.h
│   │   │   ├── gstvkdebug.c
│   │   │   ├── gstvkdebug.h
│   │   │   ├── gstvkdescriptorcache.c
│   │   │   ├── gstvkdescriptorcache.h
│   │   │   ├── gstvkdescriptorpool.c
│   │   │   ├── gstvkdescriptorpool.h
│   │   │   ├── gstvkdescriptorset.c
│   │   │   ├── gstvkdescriptorset.h
│   │   │   ├── gstvkdevice.c
│   │   │   ├── gstvkdevice.h
│   │   │   ├── gstvkdisplay.c
│   │   │   ├── gstvkdisplay.h
│   │   │   ├── gstvkerror.c
│   │   │   ├── gstvkerror.h
│   │   │   ├── gstvkfence.c
│   │   │   ├── gstvkfence.h
│   │   │   ├── gstvkformat.c
│   │   │   ├── gstvkformat.h
│   │   │   ├── gstvkfullscreenquad.c
│   │   │   ├── gstvkfullscreenquad.h
│   │   │   ├── gstvkhandle.c
│   │   │   ├── gstvkhandle.h
│   │   │   ├── gstvkhandlepool.c
│   │   │   ├── gstvkhandlepool.h
│   │   │   ├── gstvkimagebufferpool.c
│   │   │   ├── gstvkimagebufferpool.h
│   │   │   ├── gstvkimagememory.c
│   │   │   ├── gstvkimagememory.h
│   │   │   ├── gstvkimageview.c
│   │   │   ├── gstvkimageview.h
│   │   │   ├── gstvkinstance.c
│   │   │   ├── gstvkinstance.h
│   │   │   ├── gstvkmemory.c
│   │   │   ├── gstvkmemory.h
│   │   │   ├── gstvkphysicaldevice.c
│   │   │   ├── gstvkphysicaldevice.h
│   │   │   ├── gstvkqueue.c
│   │   │   ├── gstvkqueue.h
│   │   │   ├── gstvkswapper.c
│   │   │   ├── gstvkswapper.h
│   │   │   ├── gstvktrash.c
│   │   │   ├── gstvktrash.h
│   │   │   ├── gstvkutils.c
│   │   │   ├── gstvkutils.h
│   │   │   ├── gstvkvideofilter.c
│   │   │   ├── gstvkvideofilter.h
│   │   │   ├── gstvkwindow.c
│   │   │   ├── gstvkwindow.h
│   │   │   ├── ios/
│   │   │   │   ├── gstvkdisplay_ios.h
│   │   │   │   ├── gstvkdisplay_ios.m
│   │   │   │   ├── gstvkios_utils.h
│   │   │   │   ├── gstvkwindow_ios.h
│   │   │   │   └── gstvkwindow_ios.m
│   │   │   ├── meson.build
│   │   │   ├── vulkan-prelude.h
│   │   │   ├── vulkan.h
│   │   │   ├── vulkan_fwd.h
│   │   │   ├── vulkan_mkenum.py
│   │   │   ├── wayland/
│   │   │   │   ├── gstvkdisplay_wayland.c
│   │   │   │   ├── gstvkdisplay_wayland.h
│   │   │   │   ├── gstvkwindow_wayland.c
│   │   │   │   ├── gstvkwindow_wayland.h
│   │   │   │   ├── wayland.h
│   │   │   │   ├── wayland_event_source.c
│   │   │   │   └── wayland_event_source.h
│   │   │   ├── win32/
│   │   │   │   ├── gstvkwindow_win32.c
│   │   │   │   └── gstvkwindow_win32.h
│   │   │   └── xcb/
│   │   │       ├── gstvkdisplay_xcb.c
│   │   │       ├── gstvkdisplay_xcb.h
│   │   │       ├── gstvkwindow_xcb.c
│   │   │       ├── gstvkwindow_xcb.h
│   │   │       ├── xcb.h
│   │   │       ├── xcb_event_source.c
│   │   │       └── xcb_event_source.h
│   │   ├── wayland/
│   │   │   ├── meson.build
│   │   │   ├── wayland.c
│   │   │   └── wayland.h
│   │   └── webrtc/
│   │       ├── datachannel.c
│   │       ├── datachannel.h
│   │       ├── dtlstransport.c
│   │       ├── dtlstransport.h
│   │       ├── icetransport.c
│   │       ├── icetransport.h
│   │       ├── meson.build
│   │       ├── rtcsessiondescription.c
│   │       ├── rtcsessiondescription.h
│   │       ├── rtpreceiver.c
│   │       ├── rtpreceiver.h
│   │       ├── rtpsender.c
│   │       ├── rtpsender.h
│   │       ├── rtptransceiver.c
│   │       ├── rtptransceiver.h
│   │       ├── sctptransport.c
│   │       ├── sctptransport.h
│   │       ├── webrtc-priv.h
│   │       ├── webrtc.h
│   │       └── webrtc_fwd.h
│   └── meson.build
├── gst-plugins-bad.doap
├── hooks/
│   └── pre-commit.hook
├── meson.build
├── meson_options.txt
├── po/
│   ├── LINGUAS
│   ├── POTFILES
│   ├── POTFILES.skip
│   ├── af.po
│   ├── ast.po
│   ├── az.po
│   ├── bg.po
│   ├── ca.po
│   ├── cs.po
│   ├── da.po
│   ├── de.po
│   ├── el.po
│   ├── en_GB.po
│   ├── eo.po
│   ├── es.po
│   ├── eu.po
│   ├── fi.po
│   ├── fr.po
│   ├── fur.po
│   ├── gl.po
│   ├── hr.po
│   ├── hu.po
│   ├── id.po
│   ├── it.po
│   ├── ja.po
│   ├── ky.po
│   ├── lt.po
│   ├── lv.po
│   ├── meson.build
│   ├── mt.po
│   ├── nb.po
│   ├── nl.po
│   ├── or.po
│   ├── pl.po
│   ├── pt_BR.po
│   ├── ro.po
│   ├── ru.po
│   ├── sk.po
│   ├── sl.po
│   ├── sq.po
│   ├── sr.po
│   ├── sv.po
│   ├── tr.po
│   ├── uk.po
│   ├── vi.po
│   └── zh_CN.po
├── scripts/
│   ├── dist-translations.py
│   ├── extract-release-date-from-doap-file.py
│   ├── meson.build
│   └── update-orc-dist-files.py
├── sys/
│   ├── androidmedia/
│   │   ├── gst-android-graphics-imageformat.c
│   │   ├── gst-android-graphics-imageformat.h
│   │   ├── gst-android-hardware-camera.c
│   │   ├── gst-android-hardware-camera.h
│   │   ├── gst-android-hardware-sensor.c
│   │   ├── gst-android-hardware-sensor.h
│   │   ├── gstahcsrc.c
│   │   ├── gstahcsrc.h
│   │   ├── gstahssrc.c
│   │   ├── gstahssrc.h
│   │   ├── gstamc-codec.h
│   │   ├── gstamc-codeclist.h
│   │   ├── gstamc-constants.h
│   │   ├── gstamc-format.h
│   │   ├── gstamc.c
│   │   ├── gstamc.h
│   │   ├── gstamcaudiodec.c
│   │   ├── gstamcaudiodec.h
│   │   ├── gstamcsurfacetexture.c
│   │   ├── gstamcsurfacetexture.h
│   │   ├── gstamcvideodec.c
│   │   ├── gstamcvideodec.h
│   │   ├── gstamcvideoenc.c
│   │   ├── gstamcvideoenc.h
│   │   ├── gstjniutils.c
│   │   ├── gstjniutils.h
│   │   ├── gstsensors.h
│   │   ├── jni/
│   │   │   ├── gstamc-codec-jni.c
│   │   │   ├── gstamc-codeclist-jni.c
│   │   │   ├── gstamc-format-jni.c
│   │   │   ├── gstamc-internal-jni.h
│   │   │   ├── gstamcsurface.c
│   │   │   ├── gstamcsurface.h
│   │   │   ├── gstamcsurfacetexture-jni.c
│   │   │   └── gstamcsurfacetexture-jni.h
│   │   ├── magicleap/
│   │   │   ├── gstamc-codec-ml.c
│   │   │   ├── gstamc-codeclist-ml.c
│   │   │   ├── gstamc-format-ml.c
│   │   │   ├── gstamc-internal-ml.h
│   │   │   ├── gstamc-surfacetexture-ml.c
│   │   │   └── gstamc-surfacetexture-ml.h
│   │   ├── meson.build
│   │   └── org/
│   │       └── freedesktop/
│   │           └── gstreamer/
│   │               └── androidmedia/
│   │                   ├── GstAhcCallback.java
│   │                   ├── GstAhsCallback.java
│   │                   └── GstAmcOnFrameAvailableListener.java
│   ├── applemedia/
│   │   ├── atdec.c
│   │   ├── atdec.h
│   │   ├── avfassetsrc.h
│   │   ├── avfassetsrc.m
│   │   ├── avfdeviceprovider.h
│   │   ├── avfdeviceprovider.m
│   │   ├── avfvideosrc.h
│   │   ├── avfvideosrc.m
│   │   ├── avsamplevideosink.h
│   │   ├── avsamplevideosink.m
│   │   ├── coremediabuffer.c
│   │   ├── coremediabuffer.h
│   │   ├── corevideobuffer.c
│   │   ├── corevideobuffer.h
│   │   ├── corevideomemory.c
│   │   ├── corevideomemory.h
│   │   ├── glcontexthelper.c
│   │   ├── glcontexthelper.h
│   │   ├── iosassetsrc.h
│   │   ├── iosassetsrc.m
│   │   ├── iosglmemory.c
│   │   ├── iosglmemory.h
│   │   ├── iosurfaceglmemory.c
│   │   ├── iosurfaceglmemory.h
│   │   ├── iosurfacevulkanmemory.c
│   │   ├── iosurfacevulkanmemory.h
│   │   ├── meson.build
│   │   ├── metal-helpers.h
│   │   ├── plugin.m
│   │   ├── videotexturecache-gl.h
│   │   ├── videotexturecache-gl.m
│   │   ├── videotexturecache-vulkan.h
│   │   ├── videotexturecache-vulkan.mm
│   │   ├── videotexturecache.h
│   │   ├── videotexturecache.m
│   │   ├── vtdec.c
│   │   ├── vtdec.h
│   │   ├── vtenc.c
│   │   ├── vtenc.h
│   │   ├── vtutil.c
│   │   └── vtutil.h
│   ├── asio/
│   │   ├── gstasiodeviceprovider.cpp
│   │   ├── gstasiodeviceprovider.h
│   │   ├── gstasioobject.cpp
│   │   ├── gstasioobject.h
│   │   ├── gstasioringbuffer.cpp
│   │   ├── gstasioringbuffer.h
│   │   ├── gstasiosink.cpp
│   │   ├── gstasiosink.h
│   │   ├── gstasiosrc.cpp
│   │   ├── gstasiosrc.h
│   │   ├── gstasioutils.cpp
│   │   ├── gstasioutils.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── bluez/
│   │   ├── a2dp-codecs.h
│   │   ├── bluez-plugin.c
│   │   ├── gsta2dpsink.c
│   │   ├── gsta2dpsink.h
│   │   ├── gstavdtpsink.c
│   │   ├── gstavdtpsink.h
│   │   ├── gstavdtpsrc.c
│   │   ├── gstavdtpsrc.h
│   │   ├── gstavdtputil.c
│   │   ├── gstavdtputil.h
│   │   ├── gstavrcputil.c
│   │   ├── gstavrcputil.h
│   │   ├── gstbluezelement.c
│   │   ├── gstbluezelements.h
│   │   ├── meson.build
│   │   └── org.bluez.xml
│   ├── d3d11/
│   │   ├── gstd3d11av1dec.cpp
│   │   ├── gstd3d11av1dec.h
│   │   ├── gstd3d11basefilter.cpp
│   │   ├── gstd3d11basefilter.h
│   │   ├── gstd3d11compositor.cpp
│   │   ├── gstd3d11compositor.h
│   │   ├── gstd3d11compositorbin.cpp
│   │   ├── gstd3d11compositorbin.h
│   │   ├── gstd3d11convert.cpp
│   │   ├── gstd3d11convert.h
│   │   ├── gstd3d11converter.cpp
│   │   ├── gstd3d11converter.h
│   │   ├── gstd3d11decoder.cpp
│   │   ├── gstd3d11decoder.h
│   │   ├── gstd3d11deinterlace.cpp
│   │   ├── gstd3d11deinterlace.h
│   │   ├── gstd3d11desktopdup.cpp
│   │   ├── gstd3d11desktopdup.h
│   │   ├── gstd3d11desktopdupsrc.cpp
│   │   ├── gstd3d11desktopdupsrc.h
│   │   ├── gstd3d11download.cpp
│   │   ├── gstd3d11download.h
│   │   ├── gstd3d11h264dec.cpp
│   │   ├── gstd3d11h264dec.h
│   │   ├── gstd3d11h265dec.cpp
│   │   ├── gstd3d11h265dec.h
│   │   ├── gstd3d11mpeg2dec.cpp
│   │   ├── gstd3d11mpeg2dec.h
│   │   ├── gstd3d11overlaycompositor.cpp
│   │   ├── gstd3d11overlaycompositor.h
│   │   ├── gstd3d11pluginutils.cpp
│   │   ├── gstd3d11pluginutils.h
│   │   ├── gstd3d11shader.cpp
│   │   ├── gstd3d11shader.h
│   │   ├── gstd3d11upload.cpp
│   │   ├── gstd3d11upload.h
│   │   ├── gstd3d11videoprocessor.cpp
│   │   ├── gstd3d11videoprocessor.h
│   │   ├── gstd3d11videosink.cpp
│   │   ├── gstd3d11videosink.h
│   │   ├── gstd3d11vp8dec.cpp
│   │   ├── gstd3d11vp8dec.h
│   │   ├── gstd3d11vp9dec.cpp
│   │   ├── gstd3d11vp9dec.h
│   │   ├── gstd3d11window.cpp
│   │   ├── gstd3d11window.h
│   │   ├── gstd3d11window_corewindow.cpp
│   │   ├── gstd3d11window_corewindow.h
│   │   ├── gstd3d11window_dummy.cpp
│   │   ├── gstd3d11window_dummy.h
│   │   ├── gstd3d11window_swapchainpanel.cpp
│   │   ├── gstd3d11window_swapchainpanel.h
│   │   ├── gstd3d11window_win32.cpp
│   │   ├── gstd3d11window_win32.h
│   │   ├── meson.build
│   │   └── plugin.cpp
│   ├── d3dvideosink/
│   │   ├── d3dhelpers.c
│   │   ├── d3dhelpers.h
│   │   ├── d3dvideosink.c
│   │   ├── d3dvideosink.h
│   │   ├── gstd3d9overlay.c
│   │   ├── gstd3d9overlay.h
│   │   └── meson.build
│   ├── decklink/
│   │   ├── gstdecklink.cpp
│   │   ├── gstdecklink.h
│   │   ├── gstdecklinkaudiosink.cpp
│   │   ├── gstdecklinkaudiosink.h
│   │   ├── gstdecklinkaudiosrc.cpp
│   │   ├── gstdecklinkaudiosrc.h
│   │   ├── gstdecklinkdeviceprovider.cpp
│   │   ├── gstdecklinkdeviceprovider.h
│   │   ├── gstdecklinkplugin.cpp
│   │   ├── gstdecklinkvideosink.cpp
│   │   ├── gstdecklinkvideosink.h
│   │   ├── gstdecklinkvideosrc.cpp
│   │   ├── gstdecklinkvideosrc.h
│   │   ├── linux/
│   │   │   ├── DeckLinkAPI.h
│   │   │   ├── DeckLinkAPIConfiguration.h
│   │   │   ├── DeckLinkAPIDeckControl.h
│   │   │   ├── DeckLinkAPIDiscovery.h
│   │   │   ├── DeckLinkAPIDispatch.cpp
│   │   │   ├── DeckLinkAPIModes.h
│   │   │   ├── DeckLinkAPITypes.h
│   │   │   ├── DeckLinkAPIVersion.h
│   │   │   └── LinuxCOM.h
│   │   ├── meson.build
│   │   ├── osx/
│   │   │   ├── DeckLinkAPI.h
│   │   │   ├── DeckLinkAPIConfiguration.h
│   │   │   ├── DeckLinkAPIDeckControl.h
│   │   │   ├── DeckLinkAPIDiscovery.h
│   │   │   ├── DeckLinkAPIDispatch.cpp
│   │   │   ├── DeckLinkAPIModes.h
│   │   │   ├── DeckLinkAPIStreaming.h
│   │   │   ├── DeckLinkAPITypes.h
│   │   │   └── DeckLinkAPIVersion.h
│   │   └── win/
│   │       ├── DeckLinkAPI.h
│   │       ├── DeckLinkAPIDispatch.cpp
│   │       └── DeckLinkAPI_i.c
│   ├── directsound/
│   │   ├── gstdirectsounddevice.c
│   │   ├── gstdirectsounddevice.h
│   │   ├── gstdirectsoundplugin.c
│   │   ├── gstdirectsoundsrc.c
│   │   ├── gstdirectsoundsrc.h
│   │   └── meson.build
│   ├── dshowdecwrapper/
│   │   ├── CMakeLists.txt
│   │   ├── gstdshowaudiodec.cpp
│   │   ├── gstdshowaudiodec.h
│   │   ├── gstdshowdecwrapper.cpp
│   │   ├── gstdshowdecwrapper.h
│   │   ├── gstdshowfakesrc.cpp
│   │   ├── gstdshowfakesrc.h
│   │   ├── gstdshowutil.cpp
│   │   ├── gstdshowutil.h
│   │   ├── gstdshowvideodec.cpp
│   │   └── gstdshowvideodec.h
│   ├── dshowsrcwrapper/
│   │   ├── BUILD.txt
│   │   ├── CMakeLists.txt
│   │   ├── dshowdeviceprovider.cpp
│   │   ├── dshowdeviceprovider.h
│   │   ├── gstdshow.cpp
│   │   ├── gstdshow.h
│   │   ├── gstdshowaudiosrc.cpp
│   │   ├── gstdshowaudiosrc.h
│   │   ├── gstdshowfakesink.cpp
│   │   ├── gstdshowfakesink.h
│   │   ├── gstdshowsrcwrapper.cpp
│   │   ├── gstdshowvideosrc.cpp
│   │   └── gstdshowvideosrc.h
│   ├── dshowvideosink/
│   │   ├── README
│   │   ├── dshowvideofakesrc.cpp
│   │   ├── dshowvideofakesrc.h
│   │   ├── dshowvideosink.cpp
│   │   └── dshowvideosink.h
│   ├── dvb/
│   │   ├── AUTHORS
│   │   ├── cam.c
│   │   ├── cam.h
│   │   ├── camapplication.c
│   │   ├── camapplication.h
│   │   ├── camapplicationinfo.c
│   │   ├── camapplicationinfo.h
│   │   ├── camconditionalaccess.c
│   │   ├── camconditionalaccess.h
│   │   ├── camdevice.c
│   │   ├── camdevice.h
│   │   ├── camresourcemanager.c
│   │   ├── camresourcemanager.h
│   │   ├── camsession.c
│   │   ├── camsession.h
│   │   ├── camswclient.c
│   │   ├── camswclient.h
│   │   ├── camtransport.c
│   │   ├── camtransport.h
│   │   ├── camutils.c
│   │   ├── camutils.h
│   │   ├── dvbbasebin.c
│   │   ├── dvbbasebin.h
│   │   ├── gstdvb.c
│   │   ├── gstdvbelement.c
│   │   ├── gstdvbelements.h
│   │   ├── gstdvbsrc.c
│   │   ├── gstdvbsrc.h
│   │   ├── meson.build
│   │   ├── parsechannels.c
│   │   └── parsechannels.h
│   ├── fbdev/
│   │   ├── gstfbdevsink.c
│   │   ├── gstfbdevsink.h
│   │   └── meson.build
│   ├── ipcpipeline/
│   │   ├── gstipcpipeline.c
│   │   ├── gstipcpipelinecomm.c
│   │   ├── gstipcpipelinecomm.h
│   │   ├── gstipcpipelineelement.c
│   │   ├── gstipcpipelineelements.h
│   │   ├── gstipcpipelinesink.c
│   │   ├── gstipcpipelinesink.h
│   │   ├── gstipcpipelinesrc.c
│   │   ├── gstipcpipelinesrc.h
│   │   ├── gstipcslavepipeline.c
│   │   ├── gstipcslavepipeline.h
│   │   ├── meson.build
│   │   └── protocol.txt
│   ├── kms/
│   │   ├── gstkmsallocator.c
│   │   ├── gstkmsallocator.h
│   │   ├── gstkmsbufferpool.c
│   │   ├── gstkmsbufferpool.h
│   │   ├── gstkmssink.c
│   │   ├── gstkmssink.h
│   │   ├── gstkmsutils.c
│   │   ├── gstkmsutils.h
│   │   └── meson.build
│   ├── magicleap/
│   │   ├── meson.build
│   │   ├── mlaudiosink.c
│   │   ├── mlaudiosink.h
│   │   ├── mlaudiowrapper.cpp
│   │   ├── mlaudiowrapper.h
│   │   └── plugin.c
│   ├── mediafoundation/
│   │   ├── AsyncOperations.h
│   │   ├── gstmfaacenc.cpp
│   │   ├── gstmfaacenc.h
│   │   ├── gstmfaudioenc.cpp
│   │   ├── gstmfaudioenc.h
│   │   ├── gstmfcapturewinrt.cpp
│   │   ├── gstmfcapturewinrt.h
│   │   ├── gstmfdevice.c
│   │   ├── gstmfdevice.h
│   │   ├── gstmfh264enc.cpp
│   │   ├── gstmfh264enc.h
│   │   ├── gstmfh265enc.cpp
│   │   ├── gstmfh265enc.h
│   │   ├── gstmfmp3enc.cpp
│   │   ├── gstmfmp3enc.h
│   │   ├── gstmfsourceobject.c
│   │   ├── gstmfsourceobject.h
│   │   ├── gstmfsourcereader.cpp
│   │   ├── gstmfsourcereader.h
│   │   ├── gstmftransform.cpp
│   │   ├── gstmftransform.h
│   │   ├── gstmfutils.cpp
│   │   ├── gstmfutils.h
│   │   ├── gstmfvideobuffer.cpp
│   │   ├── gstmfvideobuffer.h
│   │   ├── gstmfvideoenc.cpp
│   │   ├── gstmfvideoenc.h
│   │   ├── gstmfvideosrc.c
│   │   ├── gstmfvideosrc.h
│   │   ├── gstmfvp9enc.cpp
│   │   ├── gstmfvp9enc.h
│   │   ├── gststrmif.h
│   │   ├── mediacapturewrapper.cpp
│   │   ├── mediacapturewrapper.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── meson.build
│   ├── msdk/
│   │   ├── gstmsdk.c
│   │   ├── gstmsdkallocator.h
│   │   ├── gstmsdkallocator_d3d.c
│   │   ├── gstmsdkallocator_libva.c
│   │   ├── gstmsdkallocator_libva.h
│   │   ├── gstmsdkav1dec.c
│   │   ├── gstmsdkav1dec.h
│   │   ├── gstmsdkbufferpool.c
│   │   ├── gstmsdkbufferpool.h
│   │   ├── gstmsdkcontext.c
│   │   ├── gstmsdkcontext.h
│   │   ├── gstmsdkcontextutil.c
│   │   ├── gstmsdkcontextutil.h
│   │   ├── gstmsdkdec.c
│   │   ├── gstmsdkdec.h
│   │   ├── gstmsdkdecproputil.c
│   │   ├── gstmsdkdecproputil.h
│   │   ├── gstmsdkenc.c
│   │   ├── gstmsdkenc.h
│   │   ├── gstmsdkh264dec.c
│   │   ├── gstmsdkh264dec.h
│   │   ├── gstmsdkh264enc.c
│   │   ├── gstmsdkh264enc.h
│   │   ├── gstmsdkh265dec.c
│   │   ├── gstmsdkh265dec.h
│   │   ├── gstmsdkh265enc.c
│   │   ├── gstmsdkh265enc.h
│   │   ├── gstmsdkmjpegdec.c
│   │   ├── gstmsdkmjpegdec.h
│   │   ├── gstmsdkmjpegenc.c
│   │   ├── gstmsdkmjpegenc.h
│   │   ├── gstmsdkmpeg2dec.c
│   │   ├── gstmsdkmpeg2dec.h
│   │   ├── gstmsdkmpeg2enc.c
│   │   ├── gstmsdkmpeg2enc.h
│   │   ├── gstmsdksystemmemory.c
│   │   ├── gstmsdksystemmemory.h
│   │   ├── gstmsdkvc1dec.c
│   │   ├── gstmsdkvc1dec.h
│   │   ├── gstmsdkvideomemory.c
│   │   ├── gstmsdkvideomemory.h
│   │   ├── gstmsdkvp8dec.c
│   │   ├── gstmsdkvp8dec.h
│   │   ├── gstmsdkvp9dec.c
│   │   ├── gstmsdkvp9dec.h
│   │   ├── gstmsdkvp9enc.c
│   │   ├── gstmsdkvp9enc.h
│   │   ├── gstmsdkvpp.c
│   │   ├── gstmsdkvpp.h
│   │   ├── gstmsdkvpputil.c
│   │   ├── gstmsdkvpputil.h
│   │   ├── meson.build
│   │   ├── msdk-enums.c
│   │   ├── msdk-enums.h
│   │   ├── msdk.c
│   │   ├── msdk.h
│   │   ├── msdk_d3d.c
│   │   ├── msdk_libva.c
│   │   └── msdk_libva.h
│   ├── nvcodec/
│   │   ├── cuda-converter.c
│   │   ├── cuda-converter.h
│   │   ├── cuviddec.h
│   │   ├── gstcudabasefilter.c
│   │   ├── gstcudabasefilter.h
│   │   ├── gstcudabasetransform.c
│   │   ├── gstcudabasetransform.h
│   │   ├── gstcudabufferpool.c
│   │   ├── gstcudabufferpool.h
│   │   ├── gstcudacontext.c
│   │   ├── gstcudacontext.h
│   │   ├── gstcudaconvert.c
│   │   ├── gstcudaconvert.h
│   │   ├── gstcudadownload.c
│   │   ├── gstcudadownload.h
│   │   ├── gstcudafilter.c
│   │   ├── gstcudafilter.h
│   │   ├── gstcudaloader.c
│   │   ├── gstcudaloader.h
│   │   ├── gstcudamemory.c
│   │   ├── gstcudamemory.h
│   │   ├── gstcudanvrtc.c
│   │   ├── gstcudanvrtc.h
│   │   ├── gstcudascale.c
│   │   ├── gstcudascale.h
│   │   ├── gstcudaupload.c
│   │   ├── gstcudaupload.h
│   │   ├── gstcudautils.c
│   │   ├── gstcudautils.h
│   │   ├── gstcuvidloader.c
│   │   ├── gstcuvidloader.h
│   │   ├── gstnvbaseenc.c
│   │   ├── gstnvbaseenc.h
│   │   ├── gstnvdec.c
│   │   ├── gstnvdec.h
│   │   ├── gstnvdecoder.c
│   │   ├── gstnvdecoder.h
│   │   ├── gstnvenc.c
│   │   ├── gstnvenc.h
│   │   ├── gstnvh264dec.c
│   │   ├── gstnvh264dec.h
│   │   ├── gstnvh264enc.c
│   │   ├── gstnvh264enc.h
│   │   ├── gstnvh265dec.c
│   │   ├── gstnvh265dec.h
│   │   ├── gstnvh265enc.c
│   │   ├── gstnvh265enc.h
│   │   ├── gstnvrtcloader.c
│   │   ├── gstnvrtcloader.h
│   │   ├── gstnvvp8dec.c
│   │   ├── gstnvvp8dec.h
│   │   ├── gstnvvp9dec.c
│   │   ├── gstnvvp9dec.h
│   │   ├── meson.build
│   │   ├── nvEncodeAPI.h
│   │   ├── nvcuvid.h
│   │   ├── plugin.c
│   │   └── stub/
│   │       ├── cuda.h
│   │       └── nvrtc.h
│   ├── opensles/
│   │   ├── meson.build
│   │   ├── opensles.c
│   │   ├── opensles.h
│   │   ├── openslescommon.c
│   │   ├── openslescommon.h
│   │   ├── openslesplugin.c
│   │   ├── openslesringbuffer.c
│   │   ├── openslesringbuffer.h
│   │   ├── openslessink.c
│   │   ├── openslessink.h
│   │   ├── openslessrc.c
│   │   └── openslessrc.h
│   ├── shm/
│   │   ├── gstshm.c
│   │   ├── gstshmsink.c
│   │   ├── gstshmsink.h
│   │   ├── gstshmsrc.c
│   │   ├── gstshmsrc.h
│   │   ├── meson.build
│   │   ├── shmalloc.c
│   │   ├── shmalloc.h
│   │   ├── shmpipe.c
│   │   └── shmpipe.h
│   ├── tinyalsa/
│   │   ├── meson.build
│   │   ├── tinyalsa.c
│   │   ├── tinyalsasink.c
│   │   └── tinyalsasink.h
│   ├── uvch264/
│   │   ├── gstuvch264.c
│   │   ├── gstuvch264_mjpgdemux.c
│   │   ├── gstuvch264_mjpgdemux.h
│   │   ├── gstuvch264_src.c
│   │   ├── gstuvch264_src.h
│   │   ├── gstuvch264deviceprovider.c
│   │   ├── gstuvch264deviceprovider.h
│   │   ├── meson.build
│   │   ├── uvc_h264.c
│   │   └── uvc_h264.h
│   ├── v4l2codecs/
│   │   ├── gstv4l2codecallocator.c
│   │   ├── gstv4l2codecallocator.h
│   │   ├── gstv4l2codecalphadecodebin.c
│   │   ├── gstv4l2codecalphadecodebin.h
│   │   ├── gstv4l2codecdevice.c
│   │   ├── gstv4l2codecdevice.h
│   │   ├── gstv4l2codech264dec.c
│   │   ├── gstv4l2codech264dec.h
│   │   ├── gstv4l2codecpool.c
│   │   ├── gstv4l2codecpool.h
│   │   ├── gstv4l2codecvp8dec.c
│   │   ├── gstv4l2codecvp8dec.h
│   │   ├── gstv4l2decoder.c
│   │   ├── gstv4l2decoder.h
│   │   ├── gstv4l2format.c
│   │   ├── gstv4l2format.h
│   │   ├── linux/
│   │   │   ├── media.h
│   │   │   ├── types-compat.h
│   │   │   ├── v4l2-common.h
│   │   │   ├── v4l2-controls.h
│   │   │   └── videodev2.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── va/
│   │   ├── gstvaallocator.c
│   │   ├── gstvaallocator.h
│   │   ├── gstvaav1dec.c
│   │   ├── gstvaav1dec.h
│   │   ├── gstvabasedec.c
│   │   ├── gstvabasedec.h
│   │   ├── gstvabasetransform.c
│   │   ├── gstvabasetransform.h
│   │   ├── gstvacaps.c
│   │   ├── gstvacaps.h
│   │   ├── gstvadecoder.c
│   │   ├── gstvadecoder.h
│   │   ├── gstvadeinterlace.c
│   │   ├── gstvadeinterlace.h
│   │   ├── gstvadevice.c
│   │   ├── gstvadevice.h
│   │   ├── gstvadisplay_priv.c
│   │   ├── gstvadisplay_priv.h
│   │   ├── gstvafilter.c
│   │   ├── gstvafilter.h
│   │   ├── gstvah264dec.c
│   │   ├── gstvah264dec.h
│   │   ├── gstvah265dec.c
│   │   ├── gstvah265dec.h
│   │   ├── gstvampeg2dec.c
│   │   ├── gstvampeg2dec.h
│   │   ├── gstvapool.c
│   │   ├── gstvapool.h
│   │   ├── gstvaprofile.c
│   │   ├── gstvaprofile.h
│   │   ├── gstvautils.c
│   │   ├── gstvautils.h
│   │   ├── gstvavideoformat.c
│   │   ├── gstvavideoformat.h
│   │   ├── gstvavp8dec.c
│   │   ├── gstvavp8dec.h
│   │   ├── gstvavp9dec.c
│   │   ├── gstvavp9dec.h
│   │   ├── gstvavpp.c
│   │   ├── gstvavpp.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── wasapi/
│   │   ├── gstaudioclient3.h
│   │   ├── gstmmdeviceenumerator.cpp
│   │   ├── gstmmdeviceenumerator.h
│   │   ├── gstwasapi.c
│   │   ├── gstwasapidevice.c
│   │   ├── gstwasapidevice.h
│   │   ├── gstwasapisink.c
│   │   ├── gstwasapisink.h
│   │   ├── gstwasapisrc.c
│   │   ├── gstwasapisrc.h
│   │   ├── gstwasapiutil.c
│   │   ├── gstwasapiutil.h
│   │   └── meson.build
│   ├── wasapi2/
│   │   ├── AsyncOperations.h
│   │   ├── gstwasapi2client.cpp
│   │   ├── gstwasapi2client.h
│   │   ├── gstwasapi2device.c
│   │   ├── gstwasapi2device.h
│   │   ├── gstwasapi2ringbuffer.cpp
│   │   ├── gstwasapi2ringbuffer.h
│   │   ├── gstwasapi2sink.c
│   │   ├── gstwasapi2sink.h
│   │   ├── gstwasapi2src.c
│   │   ├── gstwasapi2src.h
│   │   ├── gstwasapi2util.c
│   │   ├── gstwasapi2util.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── winks/
│   │   ├── gstksclock.c
│   │   ├── gstksclock.h
│   │   ├── gstksvideodevice.c
│   │   ├── gstksvideodevice.h
│   │   ├── gstksvideosrc.c
│   │   ├── gstksvideosrc.h
│   │   ├── ksdeviceprovider.c
│   │   ├── ksdeviceprovider.h
│   │   ├── kshelpers.c
│   │   ├── kshelpers.h
│   │   ├── ksvideohelpers.c
│   │   ├── ksvideohelpers.h
│   │   └── meson.build
│   └── winscreencap/
│       ├── dxgicapture.c
│       ├── dxgicapture.h
│       ├── gstdx9screencapsrc.c
│       ├── gstdx9screencapsrc.h
│       ├── gstdxgiscreencapsrc.c
│       ├── gstdxgiscreencapsrc.h
│       ├── gstgdiscreencapsrc.c
│       ├── gstgdiscreencapsrc.h
│       ├── gstwinscreencap.c
│       ├── gstwinscreencap.h
│       └── meson.build
├── tests/
│   ├── check/
│   │   ├── elements/
│   │   │   ├── adaptive_demux_common.c
│   │   │   ├── adaptive_demux_common.h
│   │   │   ├── adaptive_demux_engine.c
│   │   │   ├── adaptive_demux_engine.h
│   │   │   ├── aesdec.c
│   │   │   ├── aesenc.c
│   │   │   ├── aiffparse.c
│   │   │   ├── asfmux.c
│   │   │   ├── assrender.c
│   │   │   ├── autoconvert.c
│   │   │   ├── autovideoconvert.c
│   │   │   ├── av1parse.c
│   │   │   ├── av1parse.h
│   │   │   ├── avtpaafdepay.c
│   │   │   ├── avtpaafpay.c
│   │   │   ├── avtpcrfbase.c
│   │   │   ├── avtpcrfcheck.c
│   │   │   ├── avtpcrfsync.c
│   │   │   ├── avtpcrfutil.c
│   │   │   ├── avtpcvfdepay.c
│   │   │   ├── avtpcvfpay.c
│   │   │   ├── avtpsink.c
│   │   │   ├── avtpsrc.c
│   │   │   ├── avwait.c
│   │   │   ├── camerabin.c
│   │   │   ├── cccombiner.c
│   │   │   ├── ccconverter.c
│   │   │   ├── ccextractor.c
│   │   │   ├── clockselect.c
│   │   │   ├── cudaconvert.c
│   │   │   ├── cudafilter.c
│   │   │   ├── curlfilesink.c
│   │   │   ├── curlftpsink.c
│   │   │   ├── curlhttpsink.c
│   │   │   ├── curlhttpsrc.c
│   │   │   ├── curlsftpsink.c
│   │   │   ├── curlsmtpsink.c
│   │   │   ├── d3d11colorconvert.c
│   │   │   ├── dash_demux.c
│   │   │   ├── dash_mpd.c
│   │   │   ├── dash_mpd_data/
│   │   │   │   ├── xlink_double_period.period
│   │   │   │   └── xlink_single_period.period
│   │   │   ├── dtls.c
│   │   │   ├── faac.c
│   │   │   ├── faad.c
│   │   │   ├── gdpdepay.c
│   │   │   ├── gdppay.c
│   │   │   ├── h263parse.c
│   │   │   ├── h264parse.c
│   │   │   ├── h265parse.c
│   │   │   ├── hls_demux.c
│   │   │   ├── hlsdemux_m3u8.c
│   │   │   ├── id3mux.c
│   │   │   ├── interlace.c
│   │   │   ├── jifmux.c
│   │   │   ├── jpeg2000parse.c
│   │   │   ├── jpegparse.c
│   │   │   ├── kate.c
│   │   │   ├── line21.c
│   │   │   ├── mfvideosrc.c
│   │   │   ├── mpeg2enc.c
│   │   │   ├── mpeg4videoparse.c
│   │   │   ├── mpegtsdemux.c
│   │   │   ├── mpegtsmux.c
│   │   │   ├── mpegvideoparse.c
│   │   │   ├── mplex.c
│   │   │   ├── msdkh264enc.c
│   │   │   ├── mssdemux.c
│   │   │   ├── mxfdemux.c
│   │   │   ├── mxfdemux.h
│   │   │   ├── mxfmux.c
│   │   │   ├── neonhttpsrc.c
│   │   │   ├── netsim.c
│   │   │   ├── nvdec.c
│   │   │   ├── nvenc.c
│   │   │   ├── ofa.c
│   │   │   ├── openjpeg.c
│   │   │   ├── parser.c
│   │   │   ├── parser.h
│   │   │   ├── pcapparse.c
│   │   │   ├── pnm.c
│   │   │   ├── ristrtpext.c
│   │   │   ├── rtponvifparse.c
│   │   │   ├── rtponviftimestamp.c
│   │   │   ├── rtpsink.c
│   │   │   ├── rtpsrc.c
│   │   │   ├── shm.c
│   │   │   ├── srtp.c
│   │   │   ├── svthevcenc.c
│   │   │   ├── switchbin.c
│   │   │   ├── templatematch.c
│   │   │   ├── test_http_src.c
│   │   │   ├── test_http_src.h
│   │   │   ├── uvch264demux.c
│   │   │   ├── uvch264demux_data/
│   │   │   │   ├── valid_h264_jpg.h264
│   │   │   │   ├── valid_h264_jpg.mjpg
│   │   │   │   ├── valid_h264_yuy2.h264
│   │   │   │   ├── valid_h264_yuy2.mjpg
│   │   │   │   └── valid_h264_yuy2.yuy2
│   │   │   ├── videoframe-audiolevel.c
│   │   │   ├── viewfinderbin.c
│   │   │   ├── vkcolorconvert.c
│   │   │   ├── vkdeviceprovider.c
│   │   │   ├── voaacenc.c
│   │   │   ├── voamrwbenc.c
│   │   │   ├── vp9parse.c
│   │   │   ├── vp9parse.h
│   │   │   ├── wasapi.c
│   │   │   ├── wasapi2.c
│   │   │   ├── webrtcbin.c
│   │   │   ├── x265enc.c
│   │   │   ├── zbar.c
│   │   │   └── zxing.c
│   │   ├── generic/
│   │   │   └── states.c
│   │   ├── gst-plugins-bad.supp
│   │   ├── libs/
│   │   │   ├── av1parser.c
│   │   │   ├── h264parser.c
│   │   │   ├── h265parser.c
│   │   │   ├── insertbin.c
│   │   │   ├── isoff.c
│   │   │   ├── isoff.h
│   │   │   ├── mpegts.c
│   │   │   ├── mpegvideoparser.c
│   │   │   ├── nalutils.c
│   │   │   ├── planaraudioadapter.c
│   │   │   ├── play.c
│   │   │   ├── vc1parser.c
│   │   │   ├── vkcommandpool.c
│   │   │   ├── vkdevice.c
│   │   │   ├── vkimage.c
│   │   │   ├── vkinstance.c
│   │   │   ├── vkmemory.c
│   │   │   ├── vkwindow.c
│   │   │   ├── vp8parser.c
│   │   │   └── vp9parser.c
│   │   ├── media/
│   │   │   ├── download-media
│   │   │   └── meson.build
│   │   ├── meson.build
│   │   └── pipelines/
│   │       ├── ipcpipeline.c
│   │       ├── mxf.c
│   │       └── streamheader.c
│   ├── examples/
│   │   ├── audiomixmatrix/
│   │   │   ├── meson.build
│   │   │   └── test-audiomixmatrix.c
│   │   ├── avsamplesink/
│   │   │   ├── main.m
│   │   │   └── meson.build
│   │   ├── camerabin2/
│   │   │   ├── gst-camera2.c
│   │   │   ├── gst-camera2.h
│   │   │   ├── gst-camera2.ui
│   │   │   ├── gst-camerabin2-test.c
│   │   │   └── meson.build
│   │   ├── codecparsers/
│   │   │   ├── meson.build
│   │   │   ├── parse-jpeg.c
│   │   │   └── parse-vp8.c
│   │   ├── d3d11videosink/
│   │   │   ├── d3d11device.cpp
│   │   │   ├── d3d11device.h
│   │   │   ├── d3d11videosink-kb.c
│   │   │   ├── d3d11videosink-kb.h
│   │   │   ├── d3d11videosink-shared-texture-d3d9ex.cpp
│   │   │   ├── d3d11videosink-shared-texture.cpp
│   │   │   ├── d3d11videosink.c
│   │   │   └── meson.build
│   │   ├── directfb/
│   │   │   ├── gstdfb.c
│   │   │   └── meson.build
│   │   ├── ipcpipeline/
│   │   │   ├── ipc-play.c
│   │   │   ├── ipcpipeline1.c
│   │   │   └── meson.build
│   │   ├── meson.build
│   │   ├── mpegts/
│   │   │   ├── meson.build
│   │   │   ├── ts-parser.c
│   │   │   ├── ts-scte-writer.c
│   │   │   ├── ts-section-writer.c
│   │   │   └── tsmux-prog-map.c
│   │   ├── msdk/
│   │   │   ├── meson.build
│   │   │   └── test-roi.c
│   │   ├── mxf/
│   │   │   ├── meson.build
│   │   │   └── mxfdemux-structure.c
│   │   ├── nvcodec/
│   │   │   ├── meson.build
│   │   │   ├── nvcodec-kb.c
│   │   │   ├── nvcodec.c
│   │   │   └── nvcodec.h
│   │   ├── opencv/
│   │   │   ├── gstfacedetect_test.c
│   │   │   ├── gsthanddetect_test.c
│   │   │   ├── gstmotioncells_dynamic_test.c
│   │   │   └── meson.build
│   │   ├── playout.c
│   │   ├── uvch264/
│   │   │   ├── boolean_property.glade
│   │   │   ├── enum_property.glade
│   │   │   ├── enum_property_gtk2.glade
│   │   │   ├── int_property.glade
│   │   │   ├── meson.build
│   │   │   ├── test-uvch264.c
│   │   │   └── window.glade
│   │   ├── va/
│   │   │   ├── main.c
│   │   │   ├── meson.build
│   │   │   └── multiple-vpp.c
│   │   ├── waylandsink/
│   │   │   ├── main.c
│   │   │   ├── meson.build
│   │   │   ├── wayland-threads.c
│   │   │   └── window.ui
│   │   ├── webrtc/
│   │   │   ├── meson.build
│   │   │   ├── webrtc.c
│   │   │   ├── webrtcbidirectional.c
│   │   │   ├── webrtcrenego.c
│   │   │   ├── webrtcswap.c
│   │   │   └── webrtctransceiver.c
│   │   └── wpe/
│   │       ├── meson.build
│   │       └── wpe.c
│   ├── files/
│   │   ├── s16be-id3v2.aiff
│   │   └── test.ts
│   ├── icles/
│   │   ├── meson.build
│   │   └── pitch-test.c
│   ├── meson.build
│   └── validate/
│       ├── meson.build
│       └── opencv/
│           ├── cvtracker/
│           │   └── flow-expectations/
│           │       └── log-tracker-src-expected
│           └── cvtracker.validatetest
└── tools/
    ├── element-templates/
    │   ├── audiodecoder
    │   ├── audioencoder
    │   ├── audiofilter
    │   ├── audiosink
    │   ├── audiosrc
    │   ├── baseparse
    │   ├── basesink
    │   ├── basesrc
    │   ├── basetransform
    │   ├── element
    │   ├── gobject
    │   ├── sinkpad
    │   ├── sinkpad-audio
    │   ├── sinkpad-simple
    │   ├── sinkpad-template
    │   ├── sinkpad-template-video
    │   ├── srcpad
    │   ├── srcpad-audio
    │   ├── srcpad-simple
    │   ├── srcpad-template
    │   ├── srcpad-template-video
    │   ├── videodecoder
    │   ├── videoencoder
    │   ├── videofilter
    │   └── videosink
    ├── gst-app-maker
    ├── gst-element-maker
    ├── gst-element-maker-test.sh
    ├── gst-project-maker
    ├── gst-transcoder.c
    ├── meson.build
    ├── utils.c
    └── utils.h

================================================
FILE CONTENTS
================================================

================================================
FILE: .gitignore
================================================
*~

Build
*.user
*.suo
*.ipch
*.sdf
*.opensdf
*.DS_Store

# Meson
/build
/subprojects

# hotdoc
docs/hotdoc/libs/generated_sitemap.txt


================================================
FILE: .gitlab-ci.yml
================================================
include: "https://gitlab.freedesktop.org/gstreamer/gst-ci/raw/master/gitlab/ci_template.yml"


================================================
FILE: .indentignore
================================================
ext/sctp/usrsctp/usrsctplib/


================================================
FILE: AUTHORS
================================================
Erik Walthinsen <omega@temple-baptist.com>
Matt Howell <mhowell@users.sourceforge.net>
Brent Bradburn <bbradburn@users.sourceforge.net>
Wim Taymans <wim.taymans@chello.be>
Richard Boulton <richard@tartarus.org>
Zaheer Abbas Merali <zaheerabbas at merali dot org>
David I. Lehn <dlehn@users.sourceforge.net>
Chris Emerson <chris@tartarus.org>
Jens Thiele <karme@unforgettable.com>
Thomas Nyberg <thomas@codefactory.se>
Bastien Nocera <hadess@hadess.net>
Christian Fredrik Kalager Schaller <Uraeus@linuxrising.org>
Thomas Vander Stichele <thomas@apestaart.org>
Andy Wingo <wingo@pobox.com>
Cameron Hutchison <camh@xdna.net>
David Schleef <ds@schleef.org>
Benjamin Otte <in7y118@public.uni-hamburg.de>
Ronald Bultje <rbultje@ronald.bitfreak.net>
Julien MOUTTE <julien@moutte.net>
Jan Schmidt <thaytan@mad.scientist.com>
Arwed v. Merkatz <v.merkatz@gmx.net>


================================================
FILE: COPYING
================================================
                  GNU LESSER GENERAL PUBLIC LICENSE
                       Version 2.1, February 1999

 Copyright (C) 1991, 1999 Free Software Foundation, Inc.
 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.

[This is the first released version of the Lesser GPL.  It also counts
 as the successor of the GNU Library Public License, version 2, hence
 the version number 2.1.]

                            Preamble

  The licenses for most software are designed to take away your
freedom to share and change it.  By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.

  This license, the Lesser General Public License, applies to some
specially designated software packages--typically libraries--of the
Free Software Foundation and other authors who decide to use it.  You
can use it too, but we suggest you first think carefully about whether
this license or the ordinary General Public License is the better
strategy to use in any particular case, based on the explanations below.

  When we speak of free software, we are referring to freedom of use,
not price.  Our General Public Licenses are designed to make sure that
you have the freedom to distribute copies of free software (and charge
for this service if you wish); that you receive source code or can get
it if you want it; that you can change the software and use pieces of
it in new free programs; and that you are informed that you can do
these things.

  To protect your rights, we need to make restrictions that forbid
distributors to deny you these rights or to ask you to surrender these
rights.  These restrictions translate to certain responsibilities for
you if you distribute copies of the library or if you modify it.

  For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you.  You must make sure that they, too, receive or can get the source
code.  If you link other code with the library, you must provide
complete object files to the recipients, so that they can relink them
with the library after making changes to the library and recompiling
it.  And you must show them these terms so they know their rights.

  We protect your rights with a two-step method: (1) we copyright the
library, and (2) we offer you this license, which gives you legal
permission to copy, distribute and/or modify the library.

  To protect each distributor, we want to make it very clear that
there is no warranty for the free library.  Also, if the library is
modified by someone else and passed on, the recipients should know
that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be
introduced by others.

  Finally, software patents pose a constant threat to the existence of
any free program.  We wish to make sure that a company cannot
effectively restrict the users of a free program by obtaining a
restrictive license from a patent holder.  Therefore, we insist that
any patent license obtained for a version of the library must be
consistent with the full freedom of use specified in this license.

  Most GNU software, including some libraries, is covered by the
ordinary GNU General Public License.  This license, the GNU Lesser
General Public License, applies to certain designated libraries, and
is quite different from the ordinary General Public License.  We use
this license for certain libraries in order to permit linking those
libraries into non-free programs.

  When a program is linked with a library, whether statically or using
a shared library, the combination of the two is legally speaking a
combined work, a derivative of the original library.  The ordinary
General Public License therefore permits such linking only if the
entire combination fits its criteria of freedom.  The Lesser General
Public License permits more lax criteria for linking other code with
the library.

  We call this license the "Lesser" General Public License because it
does Less to protect the user's freedom than the ordinary General
Public License.  It also provides other free software developers Less
of an advantage over competing non-free programs.  These disadvantages
are the reason we use the ordinary General Public License for many
libraries.  However, the Lesser license provides advantages in certain
special circumstances.

  For example, on rare occasions, there may be a special need to
encourage the widest possible use of a certain library, so that it becomes
a de-facto standard.  To achieve this, non-free programs must be
allowed to use the library.  A more frequent case is that a free
library does the same job as widely used non-free libraries.  In this
case, there is little to gain by limiting the free library to free
software only, so we use the Lesser General Public License.

  In other cases, permission to use a particular library in non-free
programs enables a greater number of people to use a large body of
free software.  For example, permission to use the GNU C Library in
non-free programs enables many more people to use the whole GNU
operating system, as well as its variant, the GNU/Linux operating
system.

  Although the Lesser General Public License is Less protective of the
users' freedom, it does ensure that the user of a program that is
linked with the Library has the freedom and the wherewithal to run
that program using a modified version of the Library.

  The precise terms and conditions for copying, distribution and
modification follow.  Pay close attention to the difference between a
"work based on the library" and a "work that uses the library".  The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.

                  GNU LESSER GENERAL PUBLIC LICENSE
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  0. This License Agreement applies to any software library or other
program which contains a notice placed by the copyright holder or
other authorized party saying it may be distributed under the terms of
this Lesser General Public License (also called "this License").
Each licensee is addressed as "you".

  A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.

  The "Library", below, refers to any such software library or work
which has been distributed under these terms.  A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or translated
straightforwardly into another language.  (Hereinafter, translation is
included without limitation in the term "modification".)

  "Source code" for a work means the preferred form of the work for
making modifications to it.  For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.

  Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.  The act of
running a program using the Library is not restricted, and output from
such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it).  Whether that is true depends on what the Library does
and what the program that uses the Library does.

  1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.

  You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.

  2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:

    a) The modified work must itself be a software library.

    b) You must cause the files modified to carry prominent notices
    stating that you changed the files and the date of any change.

    c) You must cause the whole of the work to be licensed at no
    charge to all third parties under the terms of this License.

    d) If a facility in the modified Library refers to a function or a
    table of data to be supplied by an application program that uses
    the facility, other than as an argument passed when the facility
    is invoked, then you must make a good faith effort to ensure that,
    in the event an application does not supply such function or
    table, the facility still operates, and performs whatever part of
    its purpose remains meaningful.

    (For example, a function in a library to compute square roots has
    a purpose that is entirely well-defined independent of the
    application.  Therefore, Subsection 2d requires that any
    application-supplied function or table used by this function must
    be optional: if the application does not supply it, the square
    root function must still compute square roots.)

These requirements apply to the modified work as a whole.  If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works.  But when you
distribute the same sections as part of a whole which is a work based
on the Library, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
it.

Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Library.

In addition, mere aggregation of another work not based on the Library
with the Library (or with a work based on the Library) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.

  3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library.  To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License.  (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.)  Do not make any other change in
these notices.

  Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.

  This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.

  4. You may copy and distribute the Library (or a portion or
derivative of it, under Section 2) in object code or executable form
under the terms of Sections 1 and 2 above provided that you accompany
it with the complete corresponding machine-readable source code, which
must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange.

  If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code.

  5. A program that contains no derivative of any portion of the
Library, but is designed to work with the Library by being compiled or
linked with it, is called a "work that uses the Library".  Such a
work, in isolation, is not a derivative work of the Library, and
therefore falls outside the scope of this License.

  However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library".  The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.

  When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library.  The
threshold for this to be true is not precisely defined by law.

  If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work.  (Executables containing this object code plus portions of the
Library will still fall under Section 6.)

  Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.

  6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
modification of the work for the customer's own use and reverse
engineering for debugging such modifications.

  You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License.  You must supply a copy of this License.  If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License.  Also, you must do one
of these things:

    a) Accompany the work with the complete corresponding
    machine-readable source code for the Library including whatever
    changes were used in the work (which must be distributed under
    Sections 1 and 2 above); and, if the work is an executable linked
    with the Library, with the complete machine-readable "work that
    uses the Library", as object code and/or source code, so that the
    user can modify the Library and then relink to produce a modified
    executable containing the modified Library.  (It is understood
    that the user who changes the contents of definitions files in the
    Library will not necessarily be able to recompile the application
    to use the modified definitions.)

    b) Use a suitable shared library mechanism for linking with the
    Library.  A suitable mechanism is one that (1) uses at run time a
    copy of the library already present on the user's computer system,
    rather than copying library functions into the executable, and (2)
    will operate properly with a modified version of the library, if
    the user installs one, as long as the modified version is
    interface-compatible with the version that the work was made with.

    c) Accompany the work with a written offer, valid for at
    least three years, to give the same user the materials
    specified in Subsection 6a, above, for a charge no more
    than the cost of performing this distribution.

    d) If distribution of the work is made by offering access to copy
    from a designated place, offer equivalent access to copy the above
    specified materials from the same place.

    e) Verify that the user has already received a copy of these
    materials or that you have already sent this user a copy.

  For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it.  However, as a special exception,
the materials to be distributed need not include anything that is
normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.

  It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system.  Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.

  7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:

    a) Accompany the combined library with a copy of the same work
    based on the Library, uncombined with any other library
    facilities.  This must be distributed under the terms of the
    Sections above.

    b) Give prominent notice with the combined library of the fact
    that part of it is a work based on the Library, and explaining
    where to find the accompanying uncombined form of the same work.

  8. You may not copy, modify, sublicense, link with, or distribute
the Library except as expressly provided under this License.  Any
attempt otherwise to copy, modify, sublicense, link with, or
distribute the Library is void, and will automatically terminate your
rights under this License.  However, parties who have received copies,
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.

  9. You are not required to accept this License, since you have not
signed it.  However, nothing else grants you permission to modify or
distribute the Library or its derivative works.  These actions are
prohibited by law if you do not accept this License.  Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.

  10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions.  You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.

  11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License.  If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Library at all.  For example, if a patent
license would not permit royalty-free redistribution of the Library by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.

If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply,
and the section as a whole is intended to apply in other circumstances.

It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices.  Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.

This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.

  12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may add
an explicit geographical distribution limitation excluding those countries,
so that distribution is permitted only in or among countries not thus
excluded.  In such case, this License incorporates the limitation as if
written in the body of this License.

  13. The Free Software Foundation may publish revised and/or new
versions of the Lesser General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.

Each version is given a distinguishing version number.  If the Library
specifies a version number of this License which applies to it and
"any later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation.  If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.

  14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission.  For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this.  Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.

                            NO WARRANTY

  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.

                     END OF TERMS AND CONDITIONS

           How to Apply These Terms to Your New Libraries

  If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that
everyone can redistribute and change.  You can do so by permitting
redistribution under these terms (or, alternatively, under the terms of the
ordinary General Public License).

  To apply these terms, attach the following notices to the library.  It is
safest to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least the
"copyright" line and a pointer to where the full notice is found.

    <one line to give the library's name and a brief idea of what it does.>
    Copyright (C) <year>  <name of author>

    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
    License as published by the Free Software Foundation; either
    version 2.1 of the License, or (at your option) any later version.

    This library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    Lesser General Public License for more details.

    You should have received a copy of the GNU Lesser General Public
    License along with this library; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA

Also add information on how to contact you by electronic and paper mail.

You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary.  Here is a sample; alter the names:

  Yoyodyne, Inc., hereby disclaims all copyright interest in the
  library `Frob' (a library for tweaking knobs) written by James Random Hacker.

  <signature of Ty Coon>, 1 April 1990
  Ty Coon, President of Vice

That's all there is to it!


================================================
FILE: ChangeLog
================================================
=== release 1.19.2 ===

2021-09-23 01:34:47 +0100  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* gst-plugins-bad.doap:
	* meson.build:
	  Release 1.19.2

2021-09-22 14:17:35 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/audiobuffersplit/gstaudiobuffersplit.c:
	  audiobuffersplit: Remove unneeded buffer_clip wrapper
	  This is just a small cleanup noticed while reading.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2544>

2020-07-10 19:31:13 +0530  Vivek R <123vivekr@gmail.com>

	* ext/opencv/gstcvtracker.cpp:
	* ext/opencv/gstcvtracker.h:
	  opencv: cvtracker: add draw property
	  This property controls the drawing of rectangle around the tracked object.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2454>

2020-05-24 23:37:25 +0530  Vivek R <123vivekr@gmail.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/opencv/gstcvtracker.cpp:
	* ext/opencv/gstcvtracker.h:
	* ext/opencv/gstopencv.cpp:
	* ext/opencv/meson.build:
	* tests/meson.build:
	* tests/validate/meson.build:
	* tests/validate/opencv/cvtracker.validatetest:
	* tests/validate/opencv/cvtracker/flow-expectations/log-tracker-src-expected:
	  opencv: add cvtracker plugin
	  This adds an object tracker plugin.
	  Tracker implementations from https://docs.opencv.org/3.4/d0/d0a/classcv_1_1Tracker.html
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2454>

2020-05-25 10:35:30 +0530  Vivek R <123vivekr@gmail.com>

	* ext/opencv/meson.build:
	  opencv: patch to ensure headers are detected
	  This patch is used to ensure opencv headers are detected.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2454>

2021-09-19 01:18:00 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/mpegpsmux/mpegpsmux_aac.c:
	* gst/mpegpsmux/mpegpsmux_aac.h:
	* gst/mpegpsmux/mpegpsmux_h264.c:
	* gst/mpegpsmux/mpegpsmux_h264.h:
	* gst/mpegtsmux/gstatscmux.c:
	* gst/mpegtsmux/gstatscmux.h:
	* gst/mpegtsmux/gstbasetsmux.c:
	* gst/mpegtsmux/gstbasetsmux.h:
	* gst/mpegtsmux/gstbasetsmuxaac.c:
	* gst/mpegtsmux/gstbasetsmuxaac.h:
	* gst/mpegtsmux/gstbasetsmuxjpeg2000.c:
	* gst/mpegtsmux/gstbasetsmuxjpeg2000.h:
	* gst/mpegtsmux/gstbasetsmuxopus.c:
	* gst/mpegtsmux/gstbasetsmuxopus.h:
	* gst/mpegtsmux/gstbasetsmuxttxt.c:
	* gst/mpegtsmux/gstbasetsmuxttxt.h:
	* gst/mpegtsmux/gstmpegtsmux.c:
	* gst/mpegtsmux/gstmpegtsmux.h:
	* gst/mpegtsmux/gstmpegtsmuxplugin.c:
	* gst/mpegtsmux/tsmux/tsmux.c:
	* gst/mpegtsmux/tsmux/tsmux.h:
	* gst/mpegtsmux/tsmux/tsmuxcommon.h:
	* gst/mpegtsmux/tsmux/tsmuxstream.c:
	* gst/mpegtsmux/tsmux/tsmuxstream.h:
	  mpegtsmux, mpegpsmux: remove GPL from choice of licenses and add SPDX license identifiers
	  Some people need to avoid inclusion of GPL code for their use cases and thus
	  get easily spooked by GPL license headers. This code is actually licensed
	  under different licenses, only one of which is GPL, and it's already possible
	  to just upgrade from LGPL to GPL anyway so having the GPL listed explicitly
	  as one of the choices doesn't really add anything. So remove GPL from the list
	  and also add SPDX license identifiers while we're at it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2539>

2021-08-24 03:54:27 +0900  Seungha Yang <seungha@centricular.com>

	* sys/wasapi/gstmmdeviceenumerator.cpp:
	* sys/wasapi/gstmmdeviceenumerator.h:
	* sys/wasapi/gstwasapidevice.c:
	* sys/wasapi/gstwasapidevice.h:
	* sys/wasapi/gstwasapisink.c:
	* sys/wasapi/gstwasapisink.h:
	* sys/wasapi/gstwasapisrc.c:
	* sys/wasapi/gstwasapisrc.h:
	* sys/wasapi/gstwasapiutil.c:
	* sys/wasapi/gstwasapiutil.h:
	* sys/wasapi/meson.build:
	* tests/check/elements/wasapi.c:
	  wasapideviceprovider: Add support for dynamic device add/remove
	  Adding IMMDeviceEnumerator::RegisterEndpointNotificationCallback
	  in order to support device monitoring.
	  On OnDeviceAdded(), OnDeviceRemoved(), and OnDefaultDeviceChanged()
	  callback, wasapi device provider implementation will enumerate
	  devices again and will notify newly added and removed device
	  via GstDeviceProvider API.
	  As a bonus point, this IMMDeviceEnumerator abstraction object
	  will spawn a dedicated internal COM thread, so various COM thread
	  related issues of WASAPI plugin can be resolved by this commit.
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1649
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1110
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2484>

2021-02-01 16:21:59 +0100  Stéphane Cerveau <scerveau@collabora.com>

	* tests/check/elements/openjpeg.c:
	* tests/check/meson.build:
	  openjpeg: add unit test
	  Test various format supported with subframes.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2021-01-22 10:39:56 +0100  Stéphane Cerveau <scerveau@collabora.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/openjpeg/gstopenjpegdec.c:
	* ext/openjpeg/gstopenjpegenc.c:
	* gst/videoparsers/gstjpeg2000parse.c:
	  jpeg2000parse + openjpeg: Switch striped mode to its own caps
	  It's not compatible with any other element that use the non-striped
	  mode. In addition, in this mode, we require that every frame have the
	  same number of stripes or that the MARKER bit be present, which is
	  different from the other
	  formats too.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2020-12-23 11:03:34 +0100  Stéphane Cerveau <scerveau@collabora.com>

	* ext/openjpeg/gstopenjpegdec.c:
	  openjpegdec: Fix crash with AYUV64 in subframe mode
	  Remove useless generic fill_frame methods to use
	  the packed one for AYUV and AYUV64.
	  Fix gst-launch-1.0 -v videotestsrc  !
	  video/x-raw,width=640,height=480,format=AYUV64  !  openjpegenc
	  num-stripes=8   !  openjpegdec max-threads=8  ! videoconvert !
	  autovideosink sync=false
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2020-04-24 16:15:42 +0200  Stéphane Cerveau <scerveau@collabora.com>

	* ext/openjpeg/gstopenjpeg.h:
	* ext/openjpeg/gstopenjpegdec.c:
	* ext/openjpeg/gstopenjpegdec.h:
	  openjpegdec: support for a multithreaded decoding.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2020-01-13 14:02:39 -0500  Aaron Boxer <aaron.boxer@collabora.com>

	* ext/openjpeg/gstopenjpegdec.c:
	* ext/openjpeg/gstopenjpegdec.h:
	  openjpegdec: enable sub frame mode
	  Rebuild output frame from multiple stripes input.
	  Keep the first frame and fill it with the following stripes to finish
	  a complete frame only once.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2020-12-22 18:19:40 -0500  Olivier Crête <olivier.crete@collabora.com>

	* docs/plugins/gst_plugins_cache.json:
	* gst/mpegtsmux/gstmpegtsmux.c:
	  mpegtsmux: Require frame alignment for JPEG 2000
	  We have yet to implement stripe alignment with the required descriptor.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2020-12-22 18:15:52 -0500  Olivier Crête <olivier.crete@collabora.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/openjpeg/gstopenjpegdec.c:
	  openjpegdec: Reject stripes for now
	  They're not implemented.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2020-12-22 18:20:35 -0500  Olivier Crête <olivier.crete@collabora.com>

	* ext/openjpeg/gstopenjpegenc.c:
	  openjpegenc: Only allow stripe with image/x-jpc format
	  It's the only format that our MPEG-TS muxer allows and the carriage of
	  JPEG 2000 stripes is only defined for MPEG-TS as far as I know.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2020-04-21 20:56:03 +0200  Stéphane Cerveau <scerveau@collabora.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/openjpeg/gstopenjpeg.h:
	* ext/openjpeg/gstopenjpegenc.c:
	* ext/openjpeg/gstopenjpegenc.h:
	  openjpegenc: support for a multithreaded encoding.
	  This commit introduces a multithreaded encoder allowing
	  to encode mulitple stripes or subframes in separated threads.
	  This feature aims to enhance the overall latency of a codec
	  pipeline.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/979>

2021-09-18 12:02:15 +0100  Philippe Normand <philn@igalia.com>

	* ext/wpe/WPEThreadedView.cpp:
	  wpe: context thread dispatch fixes
	  Use dedicated mutex/cond/flag for jobs being dispatched in the context thread.
	  The previous code was signalling the thread startup condition, which is wrong.
	  When WPEContextThread::dispatch() is invoked it means the thread has already
	  correctly been started up.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2533>

2021-09-18 12:01:39 +0100  Philippe Normand <philn@igalia.com>

	* ext/wpe/WPEThreadedView.cpp:
	* ext/wpe/WPEThreadedView.h:
	  wpe: Properly wait on context thread startup condition
	  Fixes #1661
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2533>

2021-09-20 09:41:32 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* docs/plugins/gst_plugins_cache.json:
	  doc: Update kmssink caps cache
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2530>

2021-09-17 16:21:39 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/kms/gstkmsutils.c:
	  kmssink: Add RGB16/BGR16 support
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2530>

2021-09-17 16:14:36 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/kms/gstkmsutils.c:
	  kmssink: Sort format according to GST_VIDEO_FORMATS_ALL
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2530>

2021-09-17 15:42:25 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/kms/gstkmsutils.c:
	  kmssink: Remove big endian format inversion
	  This has been a bad interpretation of the DRM docuemntation. The formats are
	  fixed regardless the CPU, but for some formats, they expressed in the opposite
	  order as GStreamer. Same change was done in waylandsink 2 years ago.
	  https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/commit/b393b650ab9bfb9654fc116163ab331907216d74
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2530>

2021-09-17 15:41:41 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/kms/gstkmsutils.c:
	  kmssink: Add NV61 support
	  This identically handled to NV16, so no reason not to inclue it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2530>

2021-09-17 15:39:54 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/kms/gstkmsutils.c:
	  kmssink: Add NV24 support
	  This was tested on RK3566 platform, using vendor DRM driver.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2530>

2021-09-18 00:33:12 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/codecs/gstav1decoder.c:
	* gst-libs/gst/codecs/gstav1decoder.h:
	* sys/d3d11/gstd3d11av1dec.cpp:
	* sys/va/gstvaav1dec.c:
	  codecs: av1decoder: Use GstFlowReturn everywhere
	  The same modification as that of VP8 decoder
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2528>

2021-09-18 00:09:24 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/codecs/gstvp9decoder.c:
	* gst-libs/gst/codecs/gstvp9decoder.h:
	* sys/d3d11/gstd3d11vp9dec.cpp:
	* sys/nvcodec/gstnvvp9dec.c:
	* sys/va/gstvavp9dec.c:
	  codecs: vp9decoder: Use GstFlowReturn everywhere
	  The same modification as that of VP8 decoder
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2528>

2021-09-17 23:23:06 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/codecs/gstvp8decoder.c:
	* gst-libs/gst/codecs/gstvp8decoder.h:
	* sys/d3d11/gstd3d11vp8dec.cpp:
	* sys/nvcodec/gstnvvp8dec.c:
	* sys/v4l2codecs/gstv4l2codecvp8dec.c:
	* sys/va/gstvavp8dec.c:
	  codecs: vp8decoder: Use GstFlowReturn everywhere
	  boolean return value is not sufficient for representing the reason
	  of error in most cases. For instance, any errors around new_sequence()
	  would mean negotiation error, not just *ERROR*.
	  And some subclasses will allocate buffer/memory/surface on new_picture()
	  but it could be failed because of expected error, likely flushing
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2528>

2021-08-16 18:15:42 +0300  Vivia Nikolaidou <vivia@ahiru.eu>

	* gst/mpegtsdemux/mpegtspacketizer.c:
	  mpegtspacketizer: memcmp potentially seen_before data
	  Theoretically the version number is incremented every time there's a new
	  section, but in a world of streaming we can't easily make that
	  assumption.
	  An example of a broken use case is when we're cat-ing two mpeg-ts files
	  together, which is equivalent of capturing a DVB stream while switching
	  channels. A set-top box would know that we switched the channels and
	  reset the demuxer, but in practice this might not happen.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2468>

2021-09-20 11:35:51 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/play/gstplay-media-info.c:
	* gst-libs/gst/play/gstplay.c:
	* gst-libs/gst/player/gstplayer-media-info.c:
	* gst-libs/gst/player/gstplayer.c:
	  player: Fix/add various annotations
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2538>

2021-09-18 18:07:43 +0900  Seungha Yang <seungha@centricular.com>

	* sys/va/meson.build:
	  meson: va: Make AV1 support always optional
	  Otherwise meson configure with -Dva=enabled will be failed
	  when installed libva version is < 1.8
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2532>

2021-09-18 11:03:16 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvacaps.c:
	  va: caps: Don't use image formats for decoded frames.
	  Initially we tried to use the internal color conversion used in i965
	  and Gallium drivers when decoding. But this approach has showed
	  limitations and problems.
	  This patch removes completely the possible color conversion at
	  decoding, since it show problems with deinterlacing, for example:
	  gst-launch-1.0 filesrc location=interlaced.mpg2 ! parsebin ! vampeg2dec ! vadeinterlace ! xvimagesink
	  Allowing only the surface formats when decoding is more stable.
	  For color conversion is better to do it explicitly with vapostproc.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2531>

2021-04-27 11:59:15 +0200  Marijn Suijten <marijns95@gmail.com>

	* gst-libs/gst/player/gstplayer-media-info.c:
	* gst-libs/gst/player/gstplayer.c:
	  player: Add missing nullable annotations
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2197>

2021-04-27 11:58:58 +0200  Marijn Suijten <marijns95@gmail.com>

	* gst-libs/gst/play/gstplay-media-info.c:
	* gst-libs/gst/play/gstplay.c:
	  play: Add missing nullable annotations
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2197>

2021-09-18 14:29:25 +0200  Fabian Orccon <cfoch.fabian@gmail.com>

	* sys/shm/meson.build:
	  sys: shm: Define shm_enable and shm_deps before escape meson subdir
	  Fixes meson configure in tests if the shm plugin is disabled
	  Fixes #1664
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2534>

2021-09-18 02:27:51 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11videosink.cpp:
	* sys/d3d11/gstd3d11window.cpp:
	* sys/d3d11/gstd3d11window.h:
	* sys/d3d11/gstd3d11window_win32.cpp:
	  d3d11videosink: Display title of content if possible
	  Update title text of window (currently it's always "Direct3D11 renderer")
	  when we are rendering on internal HWND, not external HWND.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2529>

2021-09-18 01:32:11 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11videosink.cpp:
	  d3d11videosink: Remove unused enum value
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2529>

2021-09-15 13:59:17 +0800  Mengkejiergeli Ba <mengkejiergeli.ba@intel.com>

	* sys/msdk/gstmsdkenc.c:
	  msdkenc: Pass color properties to MediaSDK for encoding
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2523>

2021-09-15 16:32:02 +0800  Mengkejiergeli Ba <mengkejiergeli.ba@intel.com>

	* sys/msdk/gstmsdkh265enc.c:
	* sys/msdk/gstmsdkh265enc.h:
	  msdkh265enc: Add profile main10 still picture for hevc
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2524>

2021-09-16 17:12:58 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* ext/wayland/gstwaylandsink.c:
	* ext/wayland/wlbuffer.c:
	  waylandsink: Fix double render check
	  Our code does not support rendering twice the same wl_buffer in a row, so it
	  tries to skip that case, but for this it relied on the GstBuffer pointer,
	  while the cache actually works at the GstMemory level now. To avoid this
	  compare the GstWlBuffer instead.
	  This fixes crash when use in zero-copy with videorate element.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2526>

2021-09-07 09:45:54 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* gst-libs/gst/codecs/gstmpeg2decoder.c:
	  codecs: mpeg2decoder: Use tsg framerate for latency.
	  Latency setting relies on src pad caps, but they aren't set when the
	  function is called, and latency is never updated.
	  In order to fix it, this patch uses TSG framerate first, and if it's
	  not set yet, sinkpad caps are used to get the framerate.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2514>

2021-09-16 00:59:37 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11av1dec.cpp:
	* sys/d3d11/gstd3d11av1dec.h:
	* sys/d3d11/gstd3d11decoder.cpp:
	* sys/d3d11/gstd3d11decoder.h:
	* sys/d3d11/gstd3d11h264dec.cpp:
	* sys/d3d11/gstd3d11h264dec.h:
	* sys/d3d11/gstd3d11h265dec.cpp:
	* sys/d3d11/gstd3d11h265dec.h:
	* sys/d3d11/gstd3d11mpeg2dec.cpp:
	* sys/d3d11/gstd3d11mpeg2dec.h:
	* sys/d3d11/gstd3d11vp8dec.cpp:
	* sys/d3d11/gstd3d11vp8dec.h:
	* sys/d3d11/gstd3d11vp9dec.cpp:
	* sys/d3d11/gstd3d11vp9dec.h:
	* sys/d3d11/plugin.cpp:
	  d3d11decoder: Refactor for more unified decoding flow
	  ... and various code cleanup.
	  * Move spreaded decoding API calls into one method
	  Previously, decoding flow of most codecs are
	  - Call DecoderBeginFrame() on start_picture()
	  - Call {Get,Release}DecoderBuffer() on decode_slice()
	  - Call SubmitDecoderBuffers() and DecoderEndFrame() on end_picture()
	  Such spreaded API calls make it hard to keep track of status
	  of decoding. Now it will be done at once in a new method.
	  * Drop a code for non-zero wBadSliceChopping
	  When bitstream buffer provided by driver is not sufficient
	  to write compressed bitstream data, host decoder needs to make use
	  of wBadSliceChopping so that driver can understand there are
	  multiple bitstream buffer. But it's a bit unrealistic and
	  not tested. Since FFMpeg's DXVA implemetaion doesn't support it,
	  we might be able to ignore the case for now.
	  * Make code more portable
	  Consider common logic of GstCodecs -> DXVA translation for all D3D APIs
	  (i,e., D3D9, D3D11, and D3D12).
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2525>

2021-09-15 23:41:39 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11av1dec.cpp:
	* sys/d3d11/gstd3d11decoder.cpp:
	* sys/d3d11/gstd3d11decoder.h:
	* sys/d3d11/gstd3d11h264dec.cpp:
	* sys/d3d11/gstd3d11h265dec.cpp:
	* sys/d3d11/gstd3d11mpeg2dec.cpp:
	* sys/d3d11/gstd3d11vp8dec.cpp:
	* sys/d3d11/gstd3d11vp9dec.cpp:
	  d3d11decoder: Remove duplicated class_init and property related code
	  Move them into the decoder helper code to remove duplication
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2525>

2021-09-11 00:43:26 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11av1dec.cpp:
	* sys/d3d11/gstd3d11compositor.cpp:
	* sys/d3d11/gstd3d11compositorbin.cpp:
	* sys/d3d11/gstd3d11converter.cpp:
	* sys/d3d11/gstd3d11deinterlace.cpp:
	* sys/d3d11/gstd3d11desktopdup.cpp:
	* sys/d3d11/gstd3d11desktopdupsrc.cpp:
	* sys/d3d11/gstd3d11h264dec.cpp:
	* sys/d3d11/gstd3d11h265dec.cpp:
	* sys/d3d11/gstd3d11mpeg2dec.cpp:
	* sys/d3d11/gstd3d11overlaycompositor.cpp:
	* sys/d3d11/gstd3d11pluginutils.cpp:
	* sys/d3d11/gstd3d11shader.cpp:
	* sys/d3d11/gstd3d11videoprocessor.cpp:
	* sys/d3d11/gstd3d11vp8dec.cpp:
	* sys/d3d11/gstd3d11vp9dec.cpp:
	* sys/d3d11/gstd3d11window.cpp:
	* sys/d3d11/gstd3d11window_corewindow.cpp:
	* sys/d3d11/gstd3d11window_dummy.cpp:
	* sys/d3d11/gstd3d11window_swapchainpanel.cpp:
	* sys/d3d11/gstd3d11window_win32.cpp:
	* sys/d3d11/meson.build:
	* sys/d3d11/plugin.cpp:
	  d3d11: Get rid of "extern "C"" wrapping for GST_DEBUG_CATEGORY_EXTERN
	  Instead, change the file defining debug category to cpp
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2525>

2020-06-30 11:15:43 -0700  U. Artie Eoff <ullysses.a.eoff@intel.com>

	* ext/closedcaption/meson.build:
	* tests/check/meson.build:
	  tests: skip cc tests if plugin is disabled
	  Skip the closedcaption element tests if the
	  closedcaption option is disabled at compile
	  time (i.e. -Dclosedcaption=disabled).
	  v2: rename pangocairo_dep to avoid conflict
	  with later definition in ext/ttml/meson.build
	  as suggested by @tpm.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1388>

2021-08-31 17:16:05 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	  codecs: h264dec: Check bumping again after inserting current picture.
	  In order to get the lowest latency, we can add another bumping check after
	  inserting the current picture into the DPB immediately. That can avoid
	  waiting for another decoding circle of the next frame and so the latency
	  is lower.
	  Fix: #1628
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2501>

2021-08-31 17:37:11 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264picture.c:
	  codecs: h264: Add protection to to_insert picture in bump check.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2501>

2021-08-31 16:39:06 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	  codecs: h264dec: Improve the policy to infer max_num_reorder_frames.
	  The max_num_reorder_frames number can change the way we bumping the
	  pictures in the DPB. The smaller it is, the lower latency we will
	  get. So it is important for live mode streams, but it is not given
	  in VUI parameters sometimes. We now improve the policy to infer it:
	  1. Never guess it in the "strict" compliance.
	  2. For baseline and constrained baseline profiles, which do not have
	  B frames, set it to 0.
	  3. For -intra only profiles, set it to 0.
	  4. Otherwise, not guess it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2501>

2021-09-14 20:57:30 -0700  U. Artie Eoff <ullysses.a.eoff@intel.com>

	* ext/aes/meson.build:
	* tests/check/meson.build:
	  tests: skip aes test if elements not built
	  In ext/aes/meson.build, the aes_dep will return
	  not-found if -Daes=disabled, regardless of whether
	  openssl is found or not.  Thus, we don't need a
	  separate check for the option.  This will also
	  ensure that aes_dep is always defined and we can
	  use it in the tests/check/meson.build unit.
	  Fixes #1660
	  v2: handle -Daes=disabled, too.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2522>

2021-08-31 17:33:02 +0100  Philippe Normand <philn@igalia.com>

	* ext/wpe/gstwpesrcbin.cpp:
	  wpe: Add support for web:// URIs
	  The CEF source already supports this. No good reason for wpesrc not too ;)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2503>

2021-07-23 23:38:22 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah264dec.c:
	  va: h264dec: Try to use ConstrainedBaseline or Main to decode BaseLine.
	  In the h264, the Baseline profile is widely misused. A lot of streams declare
	  that they are the Baseline, but in fact they just conform to ConstrainedBaseline.
	  The features such as FMO and ASO are not used at all.
	  If the decoder does not strictly conforms to the SPEC, we can just use Baseline
	  or Main profile to decode it to avoid lots of streams failure.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2428>

2021-07-28 23:19:15 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	  codecs: h264dec: Improve the fast bump for the live mode.
	  We control the policy of fast bump by the profile and the compliance
	  property. For baseline and constrained baseline profiles, we can use
	  more radical bump policy. User can also change the bump policy by
	  setting the compliance property in run time.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2432>

2021-07-28 22:48:21 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264picture.c:
	* gst-libs/gst/codecs/gsth264picture.h:
	  codecs: h264: Change the low_latency to an enum for dpb_needs_bump().
	  The bool parameter of low_latency is not enough. We have multi policies for
	  low latency bumping, from the safest to something radical. So we need an enum
	  to represent the proper latency requirement.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2432>

2021-07-26 16:09:19 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	* gst-libs/gst/codecs/gsth264decoder.h:
	  codecs: h264dec: Add a compliance property to control behavior.
	  Some features such as the low-latency DPB bumping and mapping the
	  baseline profile as the constrained-baseline profile do not conform
	  to the H264 offical spec. But in practice, they are very useful and
	  are widely needed. We add this compliance property to control the
	  behavior of the decoder, make it fit more requirement.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2432>

2021-09-12 12:23:36 +0100  Philippe Normand <philn@igalia.com>

	* docs/plugins/gst_plugins_cache.json:
	  docs: Update cache
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2521>

2021-09-07 10:55:10 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* docs/plugins/gst_plugins_cache.json:
	* sys/va/gstvafilter.c:
	  va: Update vapostproc documentation.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-09-07 10:16:05 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvah264dec.c:
	* sys/va/gstvavpp.c:
	  va: Update todo lists, removing deinterlacing.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-08-23 11:24:40 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* docs/plugins/gst_plugins_cache.json:
	* sys/va/gstvadeinterlace.c:
	* sys/va/gstvadeinterlace.h:
	* sys/va/meson.build:
	* sys/va/plugin.c:
	  Add vadeinterlace element.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-08-24 13:53:12 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvafilter.c:
	* sys/va/gstvafilter.h:
	  va: filter: Add past and future frames in GstVaSample.
	  And add them in the pipeline structure if they are provided.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-08-24 13:33:29 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvafilter.c:
	* sys/va/gstvafilter.h:
	  va: filter: Add gst_va_filter_add_deinterlace_buffer()
	  This function decorates gst_va_filter_add_filter_buffer() to get the
	  number of past and future frames to hold, given the method.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2020-12-21 18:17:24 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvafilter.c:
	* sys/va/gstvafilter.h:
	  va: filter: Add deinterlacing method parameter.
	  For exposing that gobject parameter a new helper function is added:
	  gst_va_filter_install_deinterlace_properties()
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-08-23 16:29:36 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvafilter.c:
	  va: filter: Protect filters array of overwrite.
	  It's possible to modify the filters array from another GStremer
	  thread, and the post-processing operation is not atomic, so the filter
	  array is reffed while the VA pipeline is processed.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-08-23 15:24:55 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvafilter.c:
	  va: filter: Add helper function to query pipeline caps.
	  This function is going to be shared for future deinterlace filter
	  processing.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-08-23 15:16:16 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvafilter.c:
	  va: filter: Shuffle _destroy_filters_unlocked().
	  In order to put it near to its caller.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-08-10 17:55:43 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvavpp.c:
	* sys/va/gstvavpp.h:
	* sys/va/plugin.c:
	  vapostproc: Move up color balance detection to plugin.
	  In order to install the color balance interface, a GstVaFilter is
	  instantiated and queried to know if it supports color balance
	  filter. It was done just after the GObject was registered. Now, it's
	  done before.
	  The reason of this change is that deinterlace element has to be
	  registered only if deinterlace filter is available, using only one
	  instantiate of GstVaFilter.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-09-07 11:35:09 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* docs/plugins/gst_plugins_cache.json:
	* sys/va/gstvabasetransform.c:
	  va: basetransform: Update documentation.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-09-09 18:26:56 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvabasetransform.h:
	  va: basetransform: Add autoptr clean up function.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-08-23 18:44:30 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvabasetransform.c:
	  va: basetransform: Use copy_metadata() at buffer import.
	  Instead of using only gst_buffer_copy_into() use copy_metadata()
	  vmethod to copy what's needed.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-08-23 10:40:32 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvavpp.c:
	  vapostproc: don't chain up transform_meta()
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

2021-07-29 12:20:30 -0300  Daniel Almeida <daniel.almeida@collabora.com>

	* gst-libs/gst/codecs/gstvp9statefulparser.c:
	  codecs: gstvp9statefulparser: feature_data should be 0 if feature_enable is 0
	  The spec says in 6.2.11 that feature_data[i][j] should be zero if
	  feature_enabled[i][j] is zero. Instead we retained the old value in the parser.
	  Fix it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2449>

2021-09-08 05:28:22 +0200  Marek Vasut <marex@denx.de>

	* gst-libs/gst/codecparsers/gsth264parser.c:
	  gsth264parser: Fix handling of NALs with emulation byte set
	  In case a set of NALs with emulation_prevention_three_byte is decoded using
	  hardware decoder like Hantro G1, wrong struct v4l2_ctrl_h264_decode_params
	  .dec_ref_pic_marking_bit_size is passed into the kernel, which results in
	  decoding artifacts. Subtract the number of emulation three bytes from the
	  .dec_ref_pic_m->bit_size to get the correct bit size and avoid having these
	  artifacts. Apply the exact same fix to slice->pic_order_cnt_bit_size as well.
	  The following NALs (7, 8, 6, 5) decode with artifacts,
	  .dec_ref_pic_marking_bit_size is set to 10 without this patch.
	  00000000  00 00 00 01 27 4d 00 20  89 8b 60 3c 04 bf 2e 02  |....'M. ..`<....|
	  00000010  d4 18 04 18 c0 c0 01 77  00 00 5d c1 7b df 05 00  |.......w..].{...|
	  00000020  00 00 01 28 ee 1f 20 00  00 01 06 05 10 b9 ed b9  |...(.. .........|
	  00000030  30 5d 21 4b 71 83 71 2c  10 a3 14 bb 29 80 00 00  |0]!Kq.q,....)...|
	  00000040  01 25 b8 00 05 00 00 03  03 7f fa 78 1e e7 fd fe  |.%.........x....|
	  ^^^^^^^^^^^^--- emulation 3 byte
	  00000050  b4 62 7a 31 ff 7d 81 fd  26 d8 62 b6 d6 25 46 ae  |.bz1.}..&.b..%F.|
	  The following NALs (7, 8, 6, 5) decode fine,
	  .dec_ref_pic_marking_bit_size is set to 2 without this patch.
	  00000000  00 00 00 01 27 4d 00 20  89 8b 60 3c 04 bf 2e 02  |....'M. ..`<....|
	  00000010  d4 18 04 18 c0 c0 01 77  00 00 5d c1 7b df 05 00  |.......w..].{...|
	  00000020  00 00 01 28 ee 1f 20 00  00 01 06 05 10 b9 ed b9  |...(.. .........|
	  00000030  30 5d 21 4b 71 83 71 2c  10 a3 14 bb 29 80 00 00  |0]!Kq.q,....)...|
	  00000040  01 25 b8 00 04 c0 00 03  7f fa 78 1e e7 fd fe b4  |.%........x.....|
	  00000050  62 7a 31 ff 7d 81 fd 26  d8 62 b6 d6 25 46 ae ce  |bz1.}..&.b..%F..|
	  Fixes: d0d65fa875 ("codecparsers: h264: record dec_ref_pic_marking() size")
	  Fixes: 0cc7d6f093 ("codecparsers: h264: record pic_order_cnt elements size")
	  Signed-off-by: Marek Vasut <marex@denx.de>
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2517>

2021-09-03 14:57:09 -0400  Aaron Boxer <aaron.boxer@collabora.com>

	* gst-libs/gst/codecparsers/gsth264parser.c:
	  gsth264parser: reject memory management control op greater than 6
	  This prevents assertion from being thrown in
	  gst_h264_dpb_perform_memory_management_control_operation
	  if corrupt NAL has a control op greater than 6
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2508>

2021-08-24 09:59:59 +0000  Ung, Teng En <teng.en.ung@intel.com>

	* sys/msdk/gstmsdk.c:
	* sys/msdk/gstmsdkav1dec.c:
	* sys/msdk/gstmsdkdec.c:
	* sys/msdk/gstmsdkenc.c:
	* sys/msdk/gstmsdkh264dec.c:
	* sys/msdk/gstmsdkh264enc.c:
	* sys/msdk/gstmsdkh265dec.c:
	* sys/msdk/gstmsdkh265enc.c:
	* sys/msdk/gstmsdkmjpegdec.c:
	* sys/msdk/gstmsdkmjpegenc.c:
	* sys/msdk/gstmsdkmpeg2dec.c:
	* sys/msdk/gstmsdkmpeg2enc.c:
	* sys/msdk/gstmsdkvc1dec.c:
	* sys/msdk/gstmsdkvp8dec.c:
	* sys/msdk/gstmsdkvp9dec.c:
	* sys/msdk/gstmsdkvp9enc.c:
	* sys/msdk/gstmsdkvpp.c:
	* sys/msdk/msdk.c:
	* sys/msdk/msdk.h:
	  msdk: Adjust the plugin and factories description based on MFX_VERSION.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2485>

2021-09-08 17:32:30 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* gst-libs/gst/vulkan/xcb/gstvkdisplay_xcb.c:
	  vulkan: don't link to XOpenDisplay in documentation
	  hotdoc doesn't know about that symbol
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2518>

2021-08-30 23:26:39 +1000  Jan Schmidt <jan@centricular.com>

	* ext/mpeg2enc/gstmpeg2enc.cc:
	* ext/mpeg2enc/gstmpeg2enc.hh:
	* ext/mpeg2enc/gstmpeg2encpicturereader.cc:
	  mpeg2enc: Only allow 1 pending frame for encoding
	  Having an unlimited input queue is very bad if the
	  encoder can't run at real-time. Eventually it will
	  consume all RAM. I don't really see any reason to
	  have more than 1 outstanding encoded frame, so
	  remove the queue and limit things to 1 pending frame.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2499>

2021-09-01 17:35:45 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/wpe-extension/gstwpeaudiosink.c:
	  wpe: Fix race condition on teardown
	  There was a race when going to PAUSED while pushing a buffer to the
	  pipeline process (where we weren't even cancelling anything).
	  This rework base all the cancellation around the GCancellable
	  "cancelled" signal trying to ensure that the streaming thread will not
	  block once a cancel operation happens.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2504>

2021-09-01 17:26:04 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/gstwpesrcbin.cpp:
	  wpe: Use the new element.get_current_running_time API
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2504>

2021-09-01 17:24:45 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/gstwpesrcbin.cpp:
	  wpe: Mark first buffer as starting at 0
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2504>

2021-09-02 22:06:52 +0900  Seungha Yang <seungha@centricular.com>

	* gst/videoparsers/gstvideoparseutils.c:
	  videoparseutils: Fix for wrong CEA708 minimum size check
	  The minimum possible size of valid CEA708 data is 3 bytes, not 7 bytes
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2505>

2021-08-29 11:04:17 +0100  Philippe Normand <philn@igalia.com>

	* ext/wpe/gstwpevideosrc.cpp:
	  wpevideosrc: Uniformise default value for draw-background property
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2498>

2021-08-29 10:30:53 +0100  Philippe Normand <philn@igalia.com>

	* ext/wpe/gstwpevideosrc.cpp:
	  wpevideosrc: Implement basic heuristic for raw caps negotiation
	  Before this patch raw caps could be negotiated already with a capsfilter, but in
	  cases where wpesrc is being auto-plugged this approach can't be used.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2498>

2021-08-29 10:28:57 +0100  Philippe Normand <philn@igalia.com>

	* ext/wpe/gstwpevideosrc.cpp:
	  wpevideosrc: Ensure debug category is set
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2498>

2021-07-15 21:10:14 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* ext/closedcaption/gstcccombiner.c:
	  cccombiner: fix scheduling with interlaced video buffers
	  The initial code was written with the misunderstanding that
	  IS_TOP_FIELD indicated that an interlaced buffer contained
	  a top field, not that it contained only a top field
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2413>

2021-08-27 15:41:32 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/kms/gstkmssink.c:
	  Revert "kmssink: Fix fallback path for driver not able to scale scenario"
	  This reverts commit d2a7b763bef3ca51f0c84cdac52eeed85b0db8fb.
	  After this change, non-scaled rendered were not centred as expected.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2496>

2021-08-20 13:28:51 +0800  Mengkejiergeli Ba <mengkejiergeli.ba@intel.com>

	* gst-libs/gst/codecs/gstav1decoder.c:
	  codecs: av1dec: Fix to output frame with highest spatial layer
	  During the output process, if there are multiple frames in a TU (i.e. multi-spatial
	  layers case), only one frame with the highest spatial layer id should be selected
	  according to av1 spec. The highest spatial layer id is obtained from idc value of
	  the operating point.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2475>

2021-08-24 14:33:42 +0100  Alex Ashley <bugzilla@ashley-family.net>

	* ext/dash/gstxmlhelper.c:
	* tests/check/elements/dash_mpd.c:
	  dashdemux: copy ContentProtection element including xml namespaces
	  Commit bc09d8cc changed gstmpdparser to put the entire
	  <ContentProtection> element in the "value" field, so that DRMs
	  other than PlayReady could make use of the data inside this
	  element.
	  However, the data in the "value" field does not include any
	  XML namespace declarations that are used within the element. This
	  causes problems for a namespace aware XML parser that wants to
	  make use of this data.
	  This commit modifies the way the XML is converted to a string
	  so that XML namespaces are preserved in the output.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2487>

2021-08-26 21:26:01 +0300  Vivia Nikolaidou <vivia@ahiru.eu>

	* docs/plugins/gst_plugins_cache.json:
	* gst/debugutils/gsterrorignore.c:
	* gst/debugutils/gsterrorignore.h:
	  errorignore: Add ignore-eos mode
	  It's otherwise very complicated to ignore GST_FLOW_EOS without a
	  ghostpad's chain function to rewrite.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2492>

2021-08-27 17:25:04 +1000  Brad Hards <bradh@frogmouth.net>

	* gst-libs/gst/codecparsers/gsth264parser.c:
	  gsth264parser: fix typo in debug message
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2493>

2021-08-26 04:12:07 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* docs/plugins/gst_plugins_cache.json:
	* gst/timecode/gsttimecodestamper.c:
	* gst/timecode/gsttimecodestamper.h:
	  timecodestamper: add support for closedcaption input
	  Some closedcaption elements like sccenc except input buffers
	  to have timecode metas. The original use case is to serialize
	  closed captions extracted from a video stream, in that case
	  ccextractor copies the video time code metas to the closed
	  caption buffers, but no such mechanism exists when creating
	  a CC stream ex nihilo.
	  Remedy that by having timecodestamper accept closedcaption
	  input caps, as long as they have a framerate.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2490>

2021-07-06 12:31:42 -0400  Aaron Boxer <aaron.boxer@collabora.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/aes/gstaes.c:
	* ext/aes/gstaesdec.c:
	* ext/aes/gstaesdec.h:
	* ext/aes/gstaesenc.c:
	* ext/aes/gstaesenc.h:
	* ext/aes/gstaeshelper.c:
	* ext/aes/gstaeshelper.h:
	* ext/aes/meson.build:
	* ext/meson.build:
	* meson_options.txt:
	* tests/check/elements/aesdec.c:
	* tests/check/elements/aesenc.c:
	* tests/check/meson.build:
	  aes: add aes encryption and decryption elements
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1505>

2021-05-10 12:02:20 +0200  Johan Sternerup <johast@axis.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/webrtc/gstwebrtcbin.c:
	  webrtcbin: Return typed "sctp-transport"
	  With GstWebRTCSCTPTransport type exposed we can now define
	  "sctp-transport" property as being of this type.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2214>

2021-05-07 08:12:25 +0200  Johan Sternerup <johast@axis.com>

	* ext/webrtc/gstwebrtcbin.c:
	* ext/webrtc/gstwebrtcbin.h:
	* ext/webrtc/meson.build:
	* ext/webrtc/webrtcdatachannel.c:
	* ext/webrtc/webrtcdatachannel.h:
	* ext/webrtc/webrtcsctptransport.c:
	* ext/webrtc/webrtcsctptransport.h:
	* gst-libs/gst/webrtc/meson.build:
	* gst-libs/gst/webrtc/sctptransport.c:
	* gst-libs/gst/webrtc/sctptransport.h:
	* gst-libs/gst/webrtc/webrtc-priv.h:
	* gst-libs/gst/webrtc/webrtc_fwd.h:
	  webrtc: Split sctptransport into lib and implementation parts
	  GstWebRTCSCTPTransport is now made into into an abstract base class
	  that only contains property specifications matching the
	  RTCSctpTransport interface of the W3C WebRTC specification, see
	  https://w3c.github.io/webrtc-pc/#rtcsctptransport-interface. This
	  class is put into the WebRTC library to expose it for applications and
	  to allow for generation of bindings for non-dynamic languages using
	  GObject introspection.
	  The actual implementation is moved to the subclass WebRTCSCTPTransport
	  located in the WebRTC plugin.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2214>

2021-05-03 10:45:42 +0200  Johan Sternerup <johast@axis.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/webrtc/gstwebrtcbin.c:
	  webrtcbin: Expose SCTP Transport
	  Being able to access the SCTP Transport object from the application
	  means the application can access the associated DTLS Transport object
	  and its ICE Transport object. This means we can observe the ICE state
	  also for a data-channel-only session. The collated
	  ice-connection-state on webrtcbin only includes the ICE Transport
	  objects that resides on the RTP transceivers (which is exactly how it
	  is specified in
	  https://w3c.github.io/webrtc-pc/#rtciceconnectionstate-enum).
	  For the consent freshness functionality (RFC 7675) to work the ICE
	  state must be accessible and consequently the SCTP transport must be
	  accessible for enabling consent freshness checking for a
	  data-channel-only session.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2214>

2021-04-20 20:04:33 +0100  Tim-Philipp Müller <tim@centricular.com>

	* ext/openh264/gstopenh264enc.cpp:
	  openh264enc: fix broken header AU emission by base class
	  This encoder advertises alignment=au as output format, which means
	  each output frame should contain a full decodable access unit.
	  The video encoder base class is not aware of our output alignment
	  and will output spurious buffers with just the SPS/PPS inside when
	  we call gst_video_encoder_set_headers(), which is broken because
	  each buffer is supposed to contain a full decodable access unit
	  in our case.
	  Just don't tell the base class about our headers, they will be
	  sent at the beginning of each IDR frame anyway.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2178>

2021-04-20 19:43:53 +0100  Tim-Philipp Müller <tim@centricular.com>

	* ext/openh264/gstopenh264enc.cpp:
	  openh264enc: fix caps and header buffer leak
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2178>

2021-04-20 19:11:12 +0100  Tim-Philipp Müller <tim@centricular.com>

	* ext/openh264/gstopenh264enc.cpp:
	  openh264enc: fix broken sps/pps header generation
	  This was putting a truncated SPS into the initial header instead
	  of the PPS because it was always reading from the beginning of the
	  bitstream buffer (pBsBuf) and not from the offset where the current
	  NAL is at in the bitstream buffer (psBsBuf + nal_offset).
	  This was broken in commit 17113695.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1576
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2178>

2021-08-22 00:33:58 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/d3d11/gstd3d11bufferpool.cpp:
	* gst-libs/gst/d3d11/gstd3d11bufferpool.h:
	* sys/d3d11/gstd3d11compositor.cpp:
	* sys/d3d11/gstd3d11convert.cpp:
	* sys/d3d11/gstd3d11decoder.cpp:
	* sys/d3d11/gstd3d11deinterlace.cpp:
	* sys/d3d11/gstd3d11desktopdupsrc.cpp:
	* sys/d3d11/gstd3d11download.cpp:
	* sys/d3d11/gstd3d11upload.cpp:
	* sys/d3d11/gstd3d11videosink.cpp:
	* sys/mediafoundation/gstmfvideoenc.cpp:
	  d3d11bufferpool: Hide buffer_size field from header
	  User can get the required buffer size by using buffer pool config.
	  Since d3d11 implementation is a candidate for public library in the future,
	  we need to hide everything from header as much as possible.
	  Note that the total size of allocated d3d11 texture memory by GPU is not
	  controllable factor. It depends on hardware specific alignment/padding
	  requirement. So, GstD3D11 implementation updates actual buffer size
	  by allocating D3D11 texture, since there's no way to get CPU accessible
	  memory size without allocating real D3D11 texture.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2482>

2021-08-21 02:20:11 +0900  Seungha Yang <seungha@centricular.com>

	* sys/nvcodec/cuda-converter.c:
	* sys/nvcodec/gstcudaconvert.c:
	* sys/nvcodec/gstnvbaseenc.c:
	* sys/nvcodec/gstnvdec.c:
	* sys/nvcodec/gstnvdecoder.c:
	* sys/nvcodec/gstnvenc.c:
	* sys/nvcodec/gstnvenc.h:
	  nvcodec: Fix various typos
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2481>

2021-08-21 02:10:37 +0900  Seungha Yang <seungha@centricular.com>

	* sys/nvcodec/cuda-converter.h:
	* sys/nvcodec/gstcudacontext.h:
	* sys/nvcodec/gstcudafilter.h:
	* sys/nvcodec/gstcudaloader.h:
	* sys/nvcodec/gstcudanvrtc.h:
	* sys/nvcodec/gstcudautils.h:
	* sys/nvcodec/gstcuvidloader.h:
	* sys/nvcodec/gstnvbaseenc.h:
	* sys/nvcodec/gstnvenc.h:
	* sys/nvcodec/gstnvh264dec.h:
	* sys/nvcodec/gstnvh264enc.h:
	* sys/nvcodec/gstnvh265dec.h:
	* sys/nvcodec/gstnvh265enc.h:
	* sys/nvcodec/gstnvrtcloader.h:
	  nvcodec: Get rid of G_GNUC_INTERNAL
	  Our default symbol visibility is hidden, so G_GNUC_INTERNAL
	  is pointless
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2481>

2021-08-19 16:45:18 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2codecs/gstv4l2codech264dec.c:
	  v4l2codecs: h264: Fix split field handling
	  Split fields ends up on multiple picture and requires accessing the
	  other_field to complete the information (POC).
	  This also cleanup the DPB from non-reference (was not useful) and skips
	  properly merge field instead of keeping them duplicated. This fixes most
	  of interlace decoding seen in fluster.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2474>

2021-08-19 11:40:22 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2codecs/gstv4l2codech264dec.c:
	  v4l2codec: h264: Implement support for split fields
	  When a frame is composed of two fields, the base class now split the
	  picture in two. In order to support this, we need to ensure that picture
	  buffer is held in VB2 queue so that the second field get decoded into
	  it. This also implements the new_field_picture() virtual and sets the
	  previous request on the new picture.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2474>

2021-08-20 11:23:57 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2codecs/gstv4l2codech264dec.c:
	  v4l2codecs: h264: Fix filling weight factors
	  This was a typo, the wrong index was used to set l1 weight (b-frames).
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2480>

2021-08-20 14:34:53 +0200  Edward Hervey <edward@centricular.com>

	* ext/dash/gstdashdemux.c:
	  dashdemux: Properly initalize GError
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2476>

2021-08-19 21:56:05 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfsourcereader.cpp:
	* sys/mediafoundation/gstmfutils.cpp:
	* sys/mediafoundation/gstmfutils.h:
	  mfvideosrc: Fix for negative MF stride
	  Negative stride value can be used in MediaFoundation to inform
	  whether memory layout is top-down or bottom-up manner. Note that
	  negative stride is allowed only for RGB, system memory.
	  See also
	  https://docs.microsoft.com/en-us/windows/win32/medfound/image-stride
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1646
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2473>

2021-08-18 11:14:37 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2codecs/gstv4l2codech264dec.c:
	  v4l2slh264dec: Fix slice header bit size calculation
	  The emulation bytes need to be removed as bytes, not bit. This fixes
	  decoding issues with files that have emulation bytes with the Cedrus
	  driver.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2471>

2021-08-12 14:08:19 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* tests/examples/va/multiple-vpp.c:
	  example: va: Add skin tone enhancement.
	  If camera is used as input stream and skin tone parameter is available
	  in vapostproc, and no random changes are enabled, the skin tone will
	  be enabled.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2470>

2021-08-17 14:04:41 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvavpp.c:
	  vapostproc: Use vapostproc as debug category name.
	  Otherwise is difficult to remember the different name.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2470>

2021-08-12 13:54:34 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* tests/examples/va/multiple-vpp.c:
	  examples: va: Add random cropping.
	  And remove unused caps filter.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2443>

2021-07-28 13:04:50 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvavpp.c:
	  vapostproc: Disable cropping in pass-through mode.
	  Originally, if a buffer arrives with crop meta but downstream doesn't
	  handle crop allocation meta, vapostproc tried to reconfigure itself to
	  non pass-through mode automatically. Sadly, this behavior was based on
	  the wrong assumption that propose_allocation() vmethod would bring
	  downstream allocation query, but it is not.
	  Now, if vapostproc is in pass-through mode, the cropping is passed to
	  downstream.  Pass-through mode can be disabled via a parameter.
	  Finally, if pass-through mode isn't enabled, it's assumed the buffer
	  is going to be processed and, if cropping, downstream already
	  negotiated the cropped frame size, thus it's required to do the
	  cropping inside vapostproc to avoid artifacts because of the size of
	  downstream allocated buffers.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2443>

2021-08-17 14:54:21 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvavpp.c:
	  vapostproc: Update filters update_properties().
	  Right after instantiating the VA filter and changing the element
	  state, rebuild the image filters.
	  This will fix a regression from f20b3b815, where properties in a
	  gst-launch pipeline are not applied.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2443>

2021-08-18 09:13:45 +0300  Sebastian Dröge <sebastian@centricular.com>

	* sys/decklink/gstdecklinkvideosrc.cpp:
	  decklinkvideosrc: Fix PAL/NTSC widescreen autodetection when switching back to non-widescreen
	  Previously it would only switch to widescreen but never back.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2469>

2021-07-20 18:15:11 +0800  Mengkejiergeli Ba <mengkejiergeli.ba@intel.com>

	* sys/msdk/gstmsdkvpp.c:
	  msdkvpp: Fix frc from lower fps to higher fps
	  There are three framerate conversion algorithms described in
	  <https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md>,
	  interpolation is not implemented so far and thus distributed timestamp algorihtm
	  is considered to be more practical which evenly distributes output timestamps
	  according to output framerate. In this case, newly generated frames are inserted
	  between current frame and previous one, timestamp is calculated by msdk API.
	  This implementation first pushes newly generated buffers(outbuf_new) forward and
	  the current buffer(outbuf) is handled at last round by base transform automatically.
	  A flag "create_new_surface" is used to indicate if new surfaces have been generated
	  and then push new outbuf forward accordingly.
	  Considering the upstream element may not be the msdk element, it is necessary to
	  always set the input surface timestamp as same as input buffer's timestamp and
	  convert it to msdk timestamp.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2418>

2021-05-06 22:22:12 +1000  Matthew Waters <matthew@centricular.com>

	* ext/webrtc/gstwebrtcbin.c:
	  webrtc: improve matching on the correct jitterbuffer
	  The mapping between an RTP session and the SDP m= line is not always the
	  same, especially when BUNDLEing is used.
	  This causes a failure in a specific case where if when bundling,
	  if mline 0 is a data channel, and mline 1 an audio/video section,
	  then retrieving the transceiver at mline 0 (rtp session used) will fail
	  and cause an assertion.
	  This fix is actually potentially a regression for cases where the remote
	  part does not provide the a=ssrc: media level SDP attributes as is now
	  becoming common, especially when simulcast is involved.
	  The correct fix actually requires reading out header extensions as used
	  with bundle for signalling in the actual data, what media and therefore
	  transceiver is being used.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2467>

2021-08-16 13:45:39 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/va/gstvadisplay.h:
	* sys/va/gstvaav1dec.c:
	* sys/va/gstvabasedec.c:
	* sys/va/gstvacaps.c:
	* sys/va/gstvafilter.c:
	* sys/va/gstvah264dec.c:
	* sys/va/gstvah265dec.c:
	* sys/va/gstvampeg2dec.c:
	* sys/va/gstvavp8dec.c:
	* sys/va/gstvavp9dec.c:
	* sys/va/gstvavpp.c:
	  va: Use GST_CAPS_FEATURE_MEMORY_VA to replace "memory:VAMemory".
	  "memory:VAMemory" is a commonly used string which notates our VA-kind
	  memory type. We now used a definition in va lib to replace the simply
	  string usage.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2466>

2021-08-16 13:32:51 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvacaps.c:
	* sys/va/gstvafilter.c:
	  va: Use MEMORY_DMABUF definition to replace "memory:DMABuf" strings.
	  GST_CAPS_FEATURE_MEMORY_DMABUF is already a common definition, we should
	  just use it rather than use the "memory:DMABuf" strings by ourselves.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2466>

2021-08-09 19:02:56 -0400  Thibault Saunier <tsaunier@igalia.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/fdkaac/gstfdkaacenc.c:
	  fdkaacdec: Add Converter class to hint gst-validate
	  fdkaacdec have minimal conversion capability, adding the Converter class allow
	  gst-validate to behave properly and not spit an error when it notice that the
	  number of channels or rate miss-match in and out.
	  Same logic as with opusdec, see: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1142>
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2462>

2021-06-09 23:29:43 +0900  Seungha Yang <seungha@centricular.com>

	* sys/wasapi2/plugin.c:
	  wasapi2: Increase rank to primary + 1
	  wasapi2 plugin should be preferred than old wasapi plugin if available because:
	  * wasapi2 supports automatic stream routing, and it's highly recommended
	  feature for application by MS. See also
	  https://docs.microsoft.com/en-us/windows/win32/coreaudio/automatic-stream-routing
	  * This implementation must be various COM threading issue free by design
	  since wasapi2 plugin spawns a new dedicated COM thread and all COM objects'
	  life-cycles are managed correctly.
	  There are unsolved COM issues around old wasapi plugin. Such issues are
	  very tricky to be solved unless old wasapi plugin's threading model
	  is re-designed.
	  Note that, in case of UWP, wasapi2 plugin's rank is primary + 1 already
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2314>

2021-08-12 20:39:24 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* ext/closedcaption/gstccconverter.c:
	  ccconverter: fix overflow when not doing framerate conversion
	  When converting from one framerate to another, counters are
	  reset periodically, however when not converting they never are
	  and can_genearte_output ends up making overflow-prone calculations
	  with large values for input_frames and output_frames.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2465>

2021-08-12 15:26:27 +0300  Sebastian Dröge <sebastian@centricular.com>

	* ext/webrtc/gstwebrtcbin.c:
	  webrtcbin: Don't assume that non-audio medias are video medias when creating transceivers
	  And print the unknown media kind in the logs.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2464>

2021-08-12 15:25:50 +0300  Sebastian Dröge <sebastian@centricular.com>

	* ext/webrtc/gstwebrtcbin.c:
	  webrtcbin: Use the correct media for deciding the media kind when creating the transceiver from the SDP
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2464>

2021-07-29 21:30:32 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	  codecs: h264dec: Output the picture directly if already a frame.
	  We forget one case that is the frame and field pictures may be mixed
	  together. For this case, the dpb is interlaced while the last picture
	  may be a complete frame. We do not need to cache that complete picture
	  and should output it directly.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2448>

2021-08-06 17:11:55 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvacaps.c:
	  va: caps: Make the template raw video caps classified by features.
	  The current output of raw video caps is not good. When we have multi
	  profiles and each profile support different formats, the output of
	  gst-inspect may like:
	  SRC template: 'src'
	  Availability: Always
	  Capabilities:
	  video/x-raw(memory:VAMemory)
	  width: [ 1, 16384 ]
	  height: [ 1, 16384 ]
	  format: NV12
	  video/x-raw
	  width: [ 1, 16384 ]
	  height: [ 1, 16384 ]
	  format: NV12
	  video/x-raw(memory:VAMemory)
	  width: [ 1, 16384 ]
	  height: [ 1, 16384 ]
	  format: P010_10LE
	  video/x-raw
	  width: [ 1, 16384 ]
	  height: [ 1, 16384 ]
	  format: P010_10LE
	  video/x-raw(memory:VAMemory)
	  width: [ 1, 16384 ]
	  height: [ 1, 16384 ]
	  format: P012_LE
	  video/x-raw
	  width: [ 1, 16384 ]
	  height: [ 1, 16384 ]
	  format: P012_LE
	  The gst_caps_simplify does not classify the caps by same features, but
	  just leave them interweaved. We need to handle them manually here, the
	  result should be:
	  SRC template: 'src'
	  Availability: Always
	  Capabilities:
	  video/x-raw
	  width: [ 1, 16384 ]
	  height: [ 1, 16384 ]
	  format: { (string)P010_10LE, (string)P012_LE, (string)NV12 }
	  video/x-raw(memory:VAMemory)
	  width: [ 1, 16384 ]
	  height: [ 1, 16384 ]
	  format: { (string)P010_10LE, (string)P012_LE, (string)NV12 }
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2456>

2021-07-27 13:22:02 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvavpp.c:
	  vapostproc: Inherit from GstVaBaseTransform.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2442>

2021-02-17 17:15:22 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvabasetransform.c:
	* sys/va/gstvabasetransform.h:
	* sys/va/meson.build:
	  va: Add base transform class.
	  This base transform class is a derivable class for VA-based filters,
	  for example vapostproc right now, but it will be used also for
	  future elements such as vadeinterlace.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2442>

2021-07-27 13:03:37 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvapool.c:
	* sys/va/gstvapool.h:
	  va: pool: Add gst_va_pool_new_with_config().
	  It is a function helper.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2442>

2021-08-10 02:48:01 +0900  Seungha Yang <seungha@centricular.com>

	  d3d11window: Misc code cleanup
	  * Remove unnecessary upcasting. We are now dealing with C++ class objects
	  and don't need explicit C-style casting in C++ world
	  * Use helper macro IID_PPV_ARGS() everywhere. It will make code
	  a little short.
	  * Use ComPtr smart pointer instead of calling manual IUnknown::Release()
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2461>

2021-08-10 02:48:45 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11compositor.cpp:
	  d3d11compositor: Fix indent
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2461>

2021-05-28 17:36:15 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/openh264/gstopenh264enc.cpp:
	* ext/openh264/meson.build:
	  openh264: Respect level set downstream
	  We were not specifying the requested level to openh264  meaning that
	  it was choosing anything and was not respecting what was specified\
	  downstream
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2289>

2021-08-04 15:02:01 +0800  He Junyan <junyan.he@intel.com>

	* ext/x265/gstx265enc.c:
	  x265: Fix a deadlock when failing to create the x265enc.
	  The GST_ELEMENT_ERROR will call the gst_object_get_path_string and
	  use gst_object_get_parent to get the full object path name, which
	  needs to lock the object. But we are already in a locked context and
	  so this will cause a deadlock, the pipeline can not exit normally.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2451>

2021-07-22 20:58:02 +0000  R S Nikhil Krishna <rsnk96@gmail.com>

	* ext/rtmp/gstrtmpsrc.c:
	  rtmpsrc: mention setting librtmp flags in docs
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2424>

2021-08-05 23:11:26 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* ext/mpeg2enc/gstmpeg2encpicturereader.cc:
	  mpeg2enc: fix interlace-mode detection
	  Previously, the code was always assuming progressive input,
	  fix this by looking at the caps.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2455>

2021-05-23 19:15:25 +0100  Tim-Philipp Müller <tim@centricular.com>

	* ext/curl/gstcurlbasesink.c:
	* ext/curl/gstcurlhttpsrc.c:
	* ext/faad/gstfaad.c:
	* ext/hls/gsthlsdemux.c:
	* ext/teletextdec/gstteletextdec.c:
	* gst-libs/gst/codecparsers/gsth264parser.c:
	* gst-libs/gst/mpegts/gst-dvb-descriptor.c:
	* gst-libs/gst/mpegts/gstmpegtsdescriptor.c:
	* gst-libs/gst/mpegts/gstmpegtssection.c:
	* gst/audiovisualizers/gstspectrascope.c:
	* gst/mpegpsmux/mpegpsmux.c:
	* gst/mpegtsdemux/mpegtspacketizer.c:
	* gst/mpegtsdemux/tsdemux.c:
	* gst/mxf/mxfaes-bwf.c:
	* gst/mxf/mxfdms1.c:
	* gst/mxf/mxfmetadata.c:
	* gst/mxf/mxfmpeg.c:
	* gst/mxf/mxftypes.c:
	* gst/rtmp2/rtmp/amf.c:
	* meson.build:
	* sys/androidmedia/gstamcaudiodec.c:
	* sys/androidmedia/gstamcvideodec.c:
	* sys/androidmedia/jni/gstamc-codeclist-jni.c:
	* sys/androidmedia/jni/gstamc-format-jni.c:
	* sys/androidmedia/magicleap/gstamc-format-ml.c:
	* tests/check/libs/mpegts.c:
	  Use g_memdup2() where available and add fallback for older GLib versions
	  g_memdup() is deprecated since GLib 2.68 and we want to avoid
	  deprecation warnings with recent versions of GLib.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2280>

2021-08-05 13:02:00 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/timecode/gsttimecodestamper.c:
	  timecodestamper: Fix latency calculation
	  The LTC extra latency is in ms already and not in frames, so multiplying
	  with the framerate will end up with a wrong number.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2453>

2021-07-18 00:51:04 +0800  Haihao Xiang <haihao.xiang@intel.com>

	* sys/msdk/gstmsdkcontext.c:
	  msdk: make sure child context is destroyed first
	  The parent context shares some resources with child context, so the
	  child context should be destroyed first, otherwise the command below
	  will trigger a segmentation fault
	  $> gst-launch-1.0 videotestsrc num-buffers=100 ! msdkh264enc ! \
	  msdkh264dec ! fakesink videotestsrc num-buffers=50 ! \
	  msdkh264enc ! msdkh264dec ! fakesink
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2435>

2021-08-02 16:22:06 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11videosink.cpp:
	* sys/d3d11/gstd3d11window.cpp:
	* sys/d3d11/gstd3d11window.h:
	  d3d11videosink: Fix warning around GstVideoOverlay::expose()
	  When expose() is called, d3d11videosink needs to redraw using
	  cached buffer, so gst_d3d11_window_render() should allow null buffer.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2450>

2021-07-31 01:05:47 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11videosink.cpp:
	  d3d11videosink: Forward navigation event without modification
	  Current implementation for translating native coordinate and
	  video coordinate is very wrong because d3d11videosink doesn't
	  understand native HWND's coordinate. That should be handled
	  by GstD3D11Window implementation as an enhancement.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2450>

2021-07-31 00:59:14 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11videosink.cpp:
	* sys/d3d11/gstd3d11window.cpp:
	* sys/d3d11/gstd3d11window.h:
	* sys/d3d11/gstd3d11window_win32.cpp:
	  d3d11videosink: Add support for GstVideoOverlay::set_render_rectangle
	  Inspired by an MR https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2382
	  The idea is that we can make use of MoveWindow() in WIN32 d3d11window
	  implementation safely because WIN32 d3d11window implementation creates
	  internal HWND even when external HWND is set and then subclassing is used to
	  draw on internal HWND in any case. So the coordinates passed to MoveWindow()
	  will be relative to parent HWND, and it meets well to the concept of
	  set_render_rectangle().
	  On MoveWindow() event, WM_SIZE event will be generated by OS and then
	  GstD3D11WindowWin32 implementation will update render area including swapchain
	  correspondingly, as if it's normal window move/resize case.
	  But in case of UWP (CoreWindow or SwapChainPanel), we need more research to
	  meet expected behavior of set_render_rectangle()
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1416
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2450>

2021-07-29 18:05:35 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvavp8dec.c:
	  va: vp8: fix the overflow in _fill_quant_matrix().
	  The gint8 of qi and qi_base may overflow when calculation the matrix
	  parameters and change the decoding result.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2447>

2021-06-21 00:19:17 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/d3d11/gstd3d11device.cpp:
	* gst-libs/gst/d3d11/gstd3d11format.h:
	* tests/check/elements/d3d11colorconvert.c:
	  d3d11: Disable packed and subsampled YUV formats
	  Direct3D11 sampler doesn't support them very well, and conversion
	  outputs usually result in poor visual quality with our shader code.
	  Should disable support for such formats for now
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2344>

2021-07-26 16:43:47 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>

	* gst/mpegtsdemux/tsdemux.c:
	  tsdemux: Notify when ignore_pcr is set
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2437>

2021-07-27 23:53:06 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* ext/closedcaption/gstcccombiner.c:
	  cccombiner: fix CDP padding detection
	  While a cc_data_pkt with cc_valid 0 should be considered padding,
	  it might be followed up by valid DTVCC packets, and should not
	  cause the whole CDP packet to get discarded.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2440>

2021-07-27 12:51:08 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	  codecs: h264dec: Improve the find_first_field_picture().
	  We need to consider the first field of the last picture when the
	  last picture can not enter the DPB.
	  Another change is, when prev field's frame_num is not equal to the
	  current field's frame_num, we should also return FASLE because it
	  is also a case of losing some field.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2430>

2021-07-27 12:16:13 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	  codecs: h264dec: consider the last field when add picture to DPB.
	  There are cases that the first field of the last picture is not a
	  ref but the second field is a ref. We need to add both of them
	  because the bumping always needs a complete frame in the DPB.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2430>

2021-07-27 10:51:03 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	  codecs: h264dec: Consider the field case when directly output.
	  For interlaced streams, it is also possible that the last frame is
	  not able to be inserted into DPB when the DPB is full and the last
	  frame is a non ref. For this case, we need to hold a extra ref for
	  the first field of the last frame and wait for the complete frame
	  with both top and bottom fields. For the progressive stream, the
	  behaviour is unchanged.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2430>

2021-07-26 01:16:34 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264picture.c:
	  codecs: h264dec: Fix a error print of dpb_add.
	  When the dpb is interlaced, the max size should be 2*dpb->max_num_frames,
	  correcting the error print info for that.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2430>

2021-07-28 16:11:36 +0900  Seungha Yang <seungha@centricular.com>

	* sys/decklink/linux/DeckLinkAPIDispatch.cpp:
	  decklink: Don't print error for dlopen failure
	  This is not a fatal error on systems without decklink
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2441>

2021-07-27 12:21:41 +0200  Imanol Fernandez <ifernandez@igalia.com>

	* gst-libs/gst/play/gstplay.c:
	* gst-libs/gst/player/gstplayer.c:
	  player: Add static keyword to _config_quark_table
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2439>

2021-07-27 14:52:38 +1000  Matthew Waters <matthew@centricular.com>

	* sys/applemedia/meson.build:
	* sys/applemedia/videotexturecache-vulkan.mm:
	  applemedia: silence a couple of MoltenVK warnings
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2433>

2021-07-27 11:49:47 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/debugutils/gstfakeaudiosink.c:
	* gst/debugutils/gstfakevideosink.c:
	  debugutils: Only proxy the properties once
	  The needed once call was removed accidently during porting. This was catch by
	  the CI as memory leaks.
	  Related to !2426
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2438>

2021-07-27 12:13:43 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfd10.c:
	  mxf: Handle D10 "picture only" variant
	  Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/80
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2436>

2021-07-24 13:19:39 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvafilter.c:
	* sys/va/gstvafilter.h:
	* sys/va/gstvavpp.c:
	  va: filter: refactor convert_surface() to process()
	  The idea of this change is to add, in the future,
	  process_with_generator(), when multiple input surfaces are processed,
	  for blending.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2431>

2021-07-18 12:46:08 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvafilter.c:
	* sys/va/gstvafilter.h:
	* sys/va/gstvavpp.c:
	  va: filter: Refactor set_formats() to set_video_info().
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2431>

2021-07-18 17:13:16 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvavpp.c:
	  vapostproc: Don't add video alignment option in buffer pool.
	  vapostproc will not call gst_buffer_pool_config_set_video_alignment(),
	  thus this option is not required.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2431>

2021-07-27 09:37:49 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfvc3.c:
	  mxfvc3: Also accept clip-wrapped vc-3
	  We can now handle this fine
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2434>

2021-07-27 07:59:52 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfdemux.c:
	  mxfdemux: Handle EOS with non-frame wrapping
	  When reaching the end of non-frame wrapping track in pull mode, we want to force
	  the switch to the next non-eos pad. This is similar to when we exceed the
	  maximum drift.
	  Fixes issues on EOS where not everything would be drained out and stray errors
	  would pop out.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2434>

2021-07-25 07:52:06 +0200  Edward Hervey <edward@centricular.com>

	* docs/plugins/gst_plugins_cache.json:
	* gst/mxf/mxfdemux.c:
	  mxfdemux: More granular interleaved content handling
	  An interleave of 500ms can be way too big for some downstream queueing
	  elements. Instead use a smaller 100ms interleave and silence the various
	  warnings about resyncing (it's normal)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2434>

2021-07-23 09:36:10 +0100  Philippe Normand <philn@igalia.com>

	* gst/debugutils/gstfakeaudiosink.c:
	* gst/debugutils/gstfakesinkutils.c:
	* gst/debugutils/gstfakesinkutils.h:
	* gst/debugutils/gstfakevideosink.c:
	* gst/debugutils/meson.build:
	  debugutils: De-duplicate proxy_properties function to a new utils module
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2426>

2021-06-08 01:40:34 +0900  Seungha Yang <seungha@centricular.com>

	* meson_options.txt:
	* sys/asio/gstasiodeviceprovider.cpp:
	* sys/asio/gstasiodeviceprovider.h:
	* sys/asio/gstasioobject.cpp:
	* sys/asio/gstasioobject.h:
	* sys/asio/gstasioringbuffer.cpp:
	* sys/asio/gstasioringbuffer.h:
	* sys/asio/gstasiosink.cpp:
	* sys/asio/gstasiosink.h:
	* sys/asio/gstasiosrc.cpp:
	* sys/asio/gstasiosrc.h:
	* sys/asio/gstasioutils.cpp:
	* sys/asio/gstasioutils.h:
	* sys/asio/meson.build:
	* sys/asio/plugin.c:
	* sys/meson.build:
	  Introduce Steinberg ASIO (Audio Streaming Input/Output) plugin
	  Adds a new plugin for ASIO devices.
	  Although there is a standard low-level audio API, WASAPI, on Windows,
	  ASIO is still being broadly used for audio devices which are aiming to
	  professional use case. In case of such devices, ASIO API might be able
	  to show better quality and latency performance depending on manufacturer's
	  driver implementation.
	  In order to build this plugin, user should provide path to
	  ASIO SDK as a build option, "asio-sdk-path".
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2309>

2021-06-06 22:32:08 +0900  Seungha Yang <seungha@centricular.com>

	* docs/plugins/gst_plugins_cache.json:
	* gst/audiolatency/gstaudiolatency.c:
	* gst/audiolatency/gstaudiolatency.h:
	  audiolatency: Expose samplesperbuffer property
	  ... for user to be able to set the number of required samples.
	  For instance, our default value is 240 samples
	  (about 5ms latency in case that sample rate is 48000), which might
	  be larger than actual buffer size of audio capture device.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2307>

2021-07-23 22:02:05 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	  codecs: h264decoder: let print_ref_pic_list_b print the correct list name.
	  The print_ref_pic_list_b now not only needs to trace the ref_pic_list_b0/1,
	  but also need to trace the ref_frame_list_0_short_term. We need to pass the
	  name directly to it rather than an index to refer to ref_pic_list_b0/1.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2425>

2021-07-23 12:31:17 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	  codecs: h264dec: Fix a typo in construct_ref_field_pic_lists_b.
	  The array sort of ref_frame_list_0_short_term has some typo. The
	  typo makes this list not in the POC ascend order and generate wrong
	  decoding result for interlaced streams.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2425>

2021-07-15 05:12:37 -0700  Devarsh Thakkar <devarsh.thakkar@xilinx.com>

	* sys/kms/gstkmssink.c:
	  kmssink: Fix fallback path for driver not able to scale scenario
	  When driver return error on update plane request, kmssink
	  disables the scaling and retries plane update.
	  While doing so kmssink was matching the source rectangle dimensions
	  to the target rectangle dimensions which were calculated
	  as per scaling but this is incorrect, instead what we want here is
	  that target rectangle dimensions should match the source rectangle
	  dimensions as scaling is disabled now and so we match result
	  rectangle dimensions with source rectangle dimensions.
	  While at it, also match the result rectangle coordinates for
	  horizontal and vertical offsets with source rectange coordinates,
	  as since there is no scaling being done so no recentering is
	  required.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2415>

2021-07-23 16:49:49 +0800  He Junyan <junyan.he@intel.com>

	* gst/videoparsers/gstvp9parse.c:
	  videoparsers: vp9: Need to process the first frame even not key.
	  Some cut VP9 streams begin with a non key frame. The current code
	  just bail out the parse_process_frame() if not a key frame. Because
	  of this, we do not set the valid caps before we push the data of the
	  first frame(even this first frame will be discarded by the downstream
	  decoder because it is not a key frame).
	  The pipeline such as:
	  gst-launch-1.0 filesrc location=some.ivf ! ivfparse ! vp9parse !
	  vavp9dec ! fakesink
	  will get a negotiation error and the pipeline can not continue. The
	  correct behaviour should be: the decoder discard the first frame and
	  continue to decode later frames successfully.
	  So, when the parse does not have valid stream info(should be the first
	  frame case), we should continue and report caps.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2427>

2021-07-21 19:40:17 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst/audiolatency/gstaudiolatency.c:
	  audiolatency: Handle audio buffers with invalid duration
	  pipewiresrc outputs audio buffers without a valid duration, so we need
	  to calculate it manually in that case.
	  Upstream issue: https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1438
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2419>

2021-07-22 22:00:38 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265dec.c:
	  va: h265dec: Do not assign the frame->output_buffer until output_picture.
	  We may need to drop the slices such as RASL pictures with the NoRaslOutputFlag, so
	  the current picture of h265decoder may be freed. We should not assign the frame->
	  output_buffer too early until we really output it. Or, the later coming slices will
	  allocate another picture and trigger the assert of:
	  gst_video_decoder_allocate_output_frame_with_params:
	  assertion 'frame->output_buffer == NULL' failed
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2421>

2021-07-22 15:14:26 +0200  Edward Hervey <edward@centricular.com>

	* gst/mpegtsdemux/tsdemux.c:
	  tsdemux: Handle PCR-less streams
	  Some programs specify a PCR PID but don't actually store any PCR values, or are
	  way too far apart.
	  In order to gracefully handle those situations, we will queue up to a certain
	  amount of pending buffers before deciding to give up on that PCR PID and not use
	  any (i.e. using DTS/PTS values as-is)
	  Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1629
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2422>

2021-07-22 10:44:27 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265dec.c:
	  va: H265: Add odd bit depth and chroma depth in get_rtformat.
	  In H265, the stream may have odd bit depth such as 9 or 11. And
	  the bit depth of luma and chroma may differ. For example, the
	  stream with luma depth of 8 and chroma depth of 9 should use the
	  10 bit rtformat as the decoded picture format.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2420>

2021-07-21 00:04:18 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	* gst-libs/gst/codecs/gsth264picture.c:
	* gst-libs/gst/codecs/gsth264picture.h:
	  codecs: h264dec: Improve the algorithm for low latency mode.
	  In low_latency mode, try to bump the picture as soon as possible
	  without the frames disorder:
	  1. We can directly output the continuous non-reference frame.
	  2. Consider max_num_reorder_frames, which is special useful for
	  I-P mode.
	  3. Consider the leading pictures with negative POC.
	  4  Output small POC pictures when non-reference frame comes.
	  4. Output the POC increment<=2 pictures. This is not 100% safe,
	  but in practice this condition can be used.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2373>

2021-07-20 23:49:12 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	* gst-libs/gst/codecs/gsth264picture.c:
	* gst-libs/gst/codecs/gsth264picture.h:
	  codecs: h264dec: Add help function of dpb_set_max_num_reorder_frames.
	  The max_num_reorder_frames can be useful for bump check. We store it
	  in the DPB and no need for the decoder now.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2373>

2021-07-20 23:36:38 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	* gst-libs/gst/codecs/gsth264picture.c:
	* gst-libs/gst/codecs/gsth264picture.h:
	  codecs: h264dec: Add a flag to record whether picture is reference.
	  The picture->ref field will change from time to time according to decoder's
	  state and reference sliding window. We need another flag to record whether
	  the picture is a reference picture when it is created, and this can help
	  the bumping check.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2373>

2021-07-12 00:31:54 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	  codecs: h264dec: Change the order of dpb_add and dpb_bump.
	  The current behavior is different from the SPEC. We should check
	  and bump the DPB or drain the DPB before we insert the current
	  picture into it. This may cause the output picture disorder.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2373>

2021-07-12 00:06:49 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	* gst-libs/gst/codecs/gsth264picture.c:
	* gst-libs/gst/codecs/gsth264picture.h:
	  codecs: h264dec: Modify the DPB need bump check.
	  Accord to spec, we should not add the current picture into the DPB
	  when we check whether it needs to bump, so the checks of the IDR and
	  the "memory_management_control_operation equal to 5" are no needed.
	  And the spec also says that the DPB only needs to bump when there is
	  no empty frame buffer left(We handle the IDR cases in other places).
	  We need to follow that and the max_num_reorder_frames is useless.
	  We also minus 1 in has_empty_frame_buffer because the current frame
	  has not been added yet.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2373>

2021-07-12 00:01:58 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264picture.c:
	* gst-libs/gst/codecs/gsth264picture.h:
	  codecs: h264dec: Make dpb_has_empty_frame_buffer a codecs API.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2373>

2021-07-05 23:53:25 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264picture.c:
	  codecs: h264dec: Set picture to a small poc when mem_mgmt_5.
	  When current frame memory_management_control_operation equal to 5, that
	  means we need to drain the dpb and the current picture act as an IDR frame.
	  So it should have smaller poc than the later pictures to ensure the output
	  order.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2373>

2021-07-15 11:12:01 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfdemux.c:
	  mxfdemux: Make gst-indent on the CI happy
	  grmbl
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-07-15 10:59:39 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfdemux.c:
	* gst/mxf/mxfdemux.h:
	  mxfdemux: Handle non-frame wrapping
	  * If we have an index table for non-framed essence, we can handle it
	  * The demuxer has a state which indicates whether it will next fetch a KLV or
	  data contained *within* a KLV.
	  * The position on Essence Tracks always correspond to the next entry to fetch,
	  demuxer offset will be skipped accordingly whenever we switch between
	  partitions (in case of resyncs). A copy of the main clip/custom KLV for that
	  partition is kept to track the position within the essence of that partition.
	  * For clip/custom-wrapped raw audio, if the edit rate is too small (and would
	  cause plenty of tiny buffers to be outputted), specify a minimum number of edit
	  units per buffer.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-07-15 10:45:46 +0200  Edward Hervey <edward@centricular.com>

	  mxfdemux: Use KLV for position/content tracking
	  * For pull-based, this avoids pulling content if it's not needed (ex: skipping filler
	  packet, not downloading the content if we only need to know if/where an essence
	  packet is, etc...). Allows reducing i/o usage to the minimum.
	  * This also allows doing sub-klv position tracking, and opens the way for
	  non-frame-wrapping handling
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-07-15 10:28:31 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfdemux.c:
	  mxfdemux: Output the topology of the file in debug logs
	  This provides a summary of the number/type of tracks in the Material and File
	  Packages
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-07-15 10:16:34 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfdemux.c:
	  mxfdemux: Refactor pull seek
	  In order to figure out the exact start position (backed by a keyframe) accross
	  all tracks, we first figure out the backing keyframe position, and *then* seek
	  to that position.
	  Avoids ending up in situations where we would properly seek to the backing
	  keyframe on video ... but not on the audio streams (they would have been set to
	  the original non-keyframe position). Fixes key-unit seeking.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-07-14 07:58:01 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfaes-bwf.c:
	* gst/mxf/mxfessence.h:
	  mxfaes-bwf: Handle new custom-constant-sized variant
	  Defined by Amendment 2:2013 to SMPTE ST 382:2007
	  Also define a new "UNKNOWN" wrapping type to make the difference with known
	  wrapping types
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-07-14 07:54:38 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfmpeg.c:
	  mxfmpeg: Fix essence coding detection
	  The picture essence coding matching was wrong. Use the proper "base" MXFUL for
	  video mpeg compression for matching.
	  Also handle the case where some old files would put the essence container label
	  in the essence coding field
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-07-01 08:35:01 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfdemux.c:
	* gst/mxf/mxfdemux.h:
	* gst/mxf/mxftypes.c:
	* gst/mxf/mxftypes.h:
	  mxfdemux: Refactor index table and offset handling
	  * Streamline offset <=> entry handling. Historically the demuxer didn't support
	  information from index tables and stored the discovered information in an array
	  per track. When index table support was added, a parallel system was setup for
	  that relationship. This commit unifies this into one system with the
	  `find_edit_entry()` and `find_entry_for_offset()` functions.
	  * By extension, per-track offset entry tables are only created/used if no index
	  table is present for those tracks.
	  * Use index table information as-is. The index table system from MXF is quite
	  complex and there are various ways to use the information contained
	  within. Instead of converting that information we store the data from the tables
	  as-is and extract the needed information when needed.
	  * Handle index tables without entries (i.e. all content package units are of the
	  same size).
	  * Allow collecting index table segments as we go instead of only once if a
	  random-index-pack is present. This also improves support of some files in
	  push-mode.
	  * When searching for keyframe entries, use the keyframe_offset if
	  present (speeds up searching).
	  * For interleaved content (i.e. several tracks in the sample essence container),
	  we use a system to be able to identify the position of each track in the delta
	  entries of index tables.
	  * Handle temporal offset only on tracks which *do* need it (as specified in the
	  delta entries of the index tables). If present, those offsets are stored in a
	  pre-processed table which allows computing PTS from DTS with a simple offset.
	  * Add a quirk for files which are known to be have wrongly stored temporal
	  offsets.
	  * Overall opens the way to handle more types of MXF files, especially those with
	  non-frame-wrapping.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-06-29 15:29:36 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfdemux.c:
	  mxfdemux: Drop duplicate seek events
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-06-24 09:53:08 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxftypes.c:
	  mxf: Improve index entry debug log
	  By printing out the various known flag values
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-06-23 09:08:33 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfmetadata.c:
	  mxf: Demote error message when resolving valid empty reference
	  A Source Clip can have zero'd SourcePackageID and SourceTrackID, this indicates
	  it terminates the source reference chain
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-06-17 16:38:54 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfdemux.c:
	* gst/mxf/mxfdemux.h:
	  mxfdemux: Handle temporal reordering shift
	  This is similar to how the same issue was handled in qtdemux.
	  In order for the "DTS <= PTS" constraint to be respected, we calculate the
	  maximum temporal reordering that can happen (via index tables).
	  If there is a non-0 temporal reordering, we:
	  * Shift all outgoing PTS by that amount
	  * Shift segment for that stream by that amount
	  * Don't modify DTS (i.e. they might end up having negative running-time, before
	  the start of the segment)
	  Also ensure all entries have a valid PTS set, previously this wouldn't be set
	  for entries with a temporal offset of 0.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/584
	  (and maybe a lot of other issues)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2371>

2021-07-17 20:49:15 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvavp9dec.c:
	  va: vp9dec: Minor cleanups.
	  Added a comment with a future to-do, enhanced another comment and
	  fixed a typo in an error log message.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2417>

2021-07-17 20:48:21 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvadecoder.c:
	* sys/va/gstvadecoder.h:
	  va: decoder: Group decoder methods.
	  Move up gst_va_decoder_get_config() to group decoders function in the
	  same file area.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2417>

2021-07-17 20:45:48 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvaav1dec.c:
	* sys/va/gstvadecoder.c:
	* sys/va/gstvadecoder.h:
	* sys/va/gstvah264dec.c:
	* sys/va/gstvah265dec.c:
	* sys/va/gstvampeg2dec.c:
	* sys/va/gstvavp8dec.c:
	* sys/va/gstvavp9dec.c:
	  va: Refactor _format_changed() to _config_is_equal().
	  Change gst_va_decoder_format_changed() to
	  gst_va_decoder_config_is_equal(), which is more similar with other
	  GStreamer API.
	  The function call is replaced but it has to be negated because the
	  return value is the opposite.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2417>

2021-07-17 20:37:52 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvadecoder.c:
	* sys/va/gstvadecoder.h:
	* sys/va/gstvavp9dec.c:
	  va: Refactor _change_resolution() to _update_frame_size().
	  Rename gst_va_decoder_change_resolution() to
	  gst_va_decoder_update_frame_size() which resembles
	  gst_va_decoder_set_frame_size().
	  Also added a comment to clarify the function use and makes more
	  specific the error message.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2417>

2021-07-17 20:29:45 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/va/gstvaav1dec.c:
	* sys/va/gstvadecoder.c:
	* sys/va/gstvadecoder.h:
	* sys/va/gstvah264dec.c:
	* sys/va/gstvah265dec.c:
	* sys/va/gstvampeg2dec.c:
	* sys/va/gstvavp8dec.c:
	* sys/va/gstvavp9dec.c:
	  va: Refactor _set_format() to _set_frame_size().
	  Renamed gst_va_decoder_set_format() to
	  gst_va_decoder_set_frame_size_with_surfaces() which resembles better
	  the passed parameters. Internally it creates the vaContext.
	  Added gst_va_decoder_set_frame_size() which is an alias of
	  gst_va_decoder_set_frame_size_with_surfaces() without surfaces. This
	  is the function which replaces gst_va_decoder_set_format() where
	  used.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2417>

2021-07-16 15:24:11 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth265decoder.c:
	* gst-libs/gst/codecs/gsth265decoder.h:
	* sys/nvcodec/gstnvh265dec.c:
	  codecs: h265decoder: Fix a typo of NumPocTotalCurr when process ref pic list.
	  We should use the NumPocTotalCurr value stored in decoder, which is a calculated
	  valid value, rather than use the invalid value in the slice header. Most of the
	  time, the NumPocTotalCurr is 0 and make the tmp_refs a very short length, and
	  causes the decoder's wrong result.
	  By the way, the NumPocTotalCurr is not the correct name specified in H265 spec,
	  its name should be NumPicTotalCurr. We change it to the correct name.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2414>

2021-07-16 13:21:11 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265dec.c:
	  va: h265dec: Do not add non reference frames into ref list.
	  The VA's ReferenceFrames should only contain the reference frame, we
	  should not add the non reference frames into this list.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2414>

2021-07-15 19:44:21 +0900  Seungha Yang <seungha@centricular.com>

	* tests/check/meson.build:
	  tests: Enable closedcaption test on Windows
	  ... if closedcaption plugin is available
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2411>

2021-07-15 16:44:18 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfvideoenc.cpp:
	  mfvideoenc: Disable RGB format support
	  Some GPUs support BGRA format and it will be converted to subsampled
	  YUV format by GPU internally. Disable this implicit conversion
	  since the conversion parameters such as input/output colorimetry
	  are not exposed nor it's written in bitstream (e.g., VUI).
	  We prefer explicit conversion via our conversion elements.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2410>

2021-07-15 21:32:54 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265dec.c:
	  va: h265dec: Fix a temp var overflow bug when write pred weight table.
	  The temp guint8 var of delta_chroma_offset_l0 and delta_chroma_offset_l1
	  can not cover the full range of delta_chroma_weight_l0/1 in the slice
	  header. When overflow happens, the decoder result is wrong.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2412>

2021-07-12 12:08:20 +0100  Philippe Normand <philn@igalia.com>

	* ext/dash/gstmpdparser.c:
	* tests/check/elements/dash_mpd.c:
	  dash: Store entire ContentProtection node in protection event data
	  Some manifests use the ContentProtection node to store additional information
	  such as the license server url. Our MPD parser used to process the
	  ContentProtection node, extracting Playready PSSH boxes. However for other DRM
	  systems, only the `value` attribute was passed down to the protection event, so
	  for example, Widevine data was not parsed at all and "Widevine" was passed to
	  the event, which is not very useful for decryptors that require a PSSH init
	  data.
	  Parsing should now be done by decryptors which will receive the entire
	  ContentProtection XML node as a string. This gives more "freedom" to the
	  decryptor which can then detect and parse custom nodes as well.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2400>

2021-07-14 22:36:52 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvavp9dec.c:
	  va: vp9dec: We need to check the resolution changes for every frame.
	  The VP9 streams have the ability to change the resolution dynamically
	  at any time point. It does not send ad KEY frame before change the
	  resolution, even the INTER frame can change the resolution immediately.
	  So we need to check the resolution change for each frame and do the
	  re-negiotiation if needed.
	  Some insaned stream may play in resolution A first and then dynamically
	  changes to B, and after 1 or 2 frames, it use a show_existing_frame to
	  repeat the old frame of resolution A before. So, not only new_picture(),
	  but also duplicate_picture() need to check this.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2407>

2021-07-14 14:43:51 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvavp9dec.c:
	  va: vp9dec: Do not re-create context for dynamical resolution change.
	  The driver for VP9 should have the ability to handle the dynamical resolution
	  changes. So if only the resolution changes, we should not re-create the config
	  and context in negotiation.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2407>

2021-07-14 14:27:34 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvadecoder.c:
	* sys/va/gstvadecoder.h:
	  va: decoder: Add helper functions to get and change the resolution.
	  Some codecs such as VP9, its config and context have the ability to
	  dynamically. When we only change the width and height, no need to
	  re-create the config and context. The helper function can just change
	  the resolution without re-creating config and context.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2407>

2021-05-29 06:03:26 +1000  Jan Schmidt <jan@centricular.com>

	* gst/mpegtsmux/tsmux/tsmux.c:
	  mpegtsmux: Quieten "missed PCR" warnings in VBR mode.
	  When the muxer is operating in VBR mode, it's kind of expected
	  for now that we might not put the PCR in exactly the right place,
	  because the muxer doesn't schedule packets that way. In that case
	  don't warn constantly about the PCR ending up a few ms off target.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2295>

2021-07-13 21:38:10 +1000  Matthew Waters <matthew@centricular.com>

	* gst/rtmp2/gstrtmp2src.c:
	  rtmp2src: workaround a GLib race when destroying a GMainContext/GSource
	  https://gitlab.gnome.org/GNOME/glib/-/issues/803
	  Basically, if destruction of a GSource and its associated GMainContext are
	  not synchronised, Then the GSource destruction can access freed
	  GMainContext resources and cause a crash.  This is not super common but
	  can happen.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2405>

2021-07-08 14:25:23 +0200  Mads Buvik Sandvei <madssandvei@protonmail.com>

	* gst-libs/gst/codecs/gsth265decoder.c:
	  codecs: h265decoder: Always free messages while parsing SEI
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2390>

2021-07-14 19:39:11 +0900  Seungha Yang <seungha@centricular.com>

	* gst/videoparsers/gstvp9parse.c:
	  vp9parse: Skip parsing decode-only frame
	  Decode-only frame (i.e., show_existing_frame == 1) doesn't hold
	  any valid information apart from the index of frame to be duplicated.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2408>

2021-07-13 16:55:30 +0100  Philippe Normand <philn@igalia.com>

	* ext/wpe/gstwpesrcbin.cpp:
	  wpesrcbin: Use gst_buffer_new_memdup()
	  g_memdup() is deprecated.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2406>

2021-07-12 23:25:02 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gstvp9statefulparser.c:
	  codecs: vp9statefulparser: not init segmentation_abs_or_delta_update.
	  The segmentation_abs_or_delta_update is a stateful var, it should not
	  be inited every time when parsing the segmentation.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2403>

2021-07-12 23:21:29 +0900  Seungha Yang <seungha@centricular.com>

	* tests/check/elements/wasapi2.c:
	  tests: wasapi2: Add more device reuse cases
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2402>

2021-07-12 22:17:22 +0900  Seungha Yang <seungha@centricular.com>

	* sys/wasapi2/gstwasapi2ringbuffer.cpp:
	  wasapi2ringbuffer: Close IAudioClient on GstAudioRingBuffer::release
	  IAudioClient interface is not reusable once it's initialized.
	  So we should close the handle and reopen it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2402>

2021-07-13 03:35:22 +0900  Seungha Yang <seungha@centricular.com>

	* sys/wasapi2/gstwasapi2ringbuffer.cpp:
	  wasapi2ringbuffer: Run gst-indent
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2402>

2021-07-12 09:01:06 -0300  Daniel Almeida <daniel.almeida@collabora.com>

	* gst-libs/gst/codecparsers/gstav1parser.h:
	  codecparsers: av1: fix underflow in last_frame_idx
	  The spec mandates this field be parsed using unsigned arithmetic. Nevertheless,
	  av1parser will use -1 apparently as an uninitialized value in
	  gst_av1_parse_frame_header. This immediately underflows last_frame_idx
	  though, since its type was defined as guint8. Fix this by converting to gint8.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2401>

2021-03-18 10:55:58 +0100  Jakub Janků <jjanku@redhat.com>

	* sys/wasapi/gstwasapisink.c:
	  wasapi: fix reinit of audioclient in prepare()
	  When the sink goes from PLAYING to READY and then back to PLAYING,
	  the initialization of the audioclient in prepare() fails with the
	  error AUDCLNT_E_ALREADY_INITIALIZED. As a result, the playback
	  stops.
	  To fix this, we need to drop the AudioClient in unprepare() and
	  grab a new one in prepare() to be able to initialize it again
	  with the new buffer spec.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2096>

2021-03-17 22:45:57 +0100  Jakub Janků <jjanku@redhat.com>

	* sys/wasapi/gstwasapisink.c:
	* sys/wasapi/gstwasapisrc.c:
	* sys/wasapi/gstwasapiutil.c:
	* sys/wasapi/gstwasapiutil.h:
	  wasapi: split gst_wasapi_util_get_device_client()
	  The functionality now resides in
	  gst_wasapi_util_get_device() and
	  gst_wasapi_util_get_audio_client().
	  This is a preparatory patch. It will be used in the following
	  patch to init/deinit the AudioClient separately from the device.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2096>

2021-07-11 18:14:46 +0200  Jakub Janků <janku.jakub.jj@gmail.com>

	* tests/check/elements/wasapi.c:
	* tests/check/meson.build:
	  tests: wasapi: check PLAYING -> READY -> PLAYING
	  Such sequence of state changes is valid and no error should happen.
	  At the moment, the test fails. Following patches aim to fix it.
	  Partially based on the code in tests/check/elements/wasapi2.c
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2096>

2021-07-09 14:55:43 +0200  Guido Günther <agx@sigxcpu.org>

	* gst-libs/gst/play/gstplay-signal-adapter.c:
	  play: Emit correct signal
	  SIGNAL_MEDIA_INFO_UPDATED should be emitted on media info changes,
	  not SIGNAL_VIDEO_DIMENSIONS_CHANGED.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2398>

2021-03-05 09:18:15 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* gst-libs/gst/vulkan/gstvkcommandpool.h:
	* gst-libs/gst/vulkan/gstvkdescriptorcache.h:
	* gst-libs/gst/vulkan/gstvkdevice.h:
	* gst-libs/gst/vulkan/gstvkdisplay.h:
	* gst-libs/gst/vulkan/gstvkfullscreenquad.h:
	* gst-libs/gst/vulkan/gstvkhandlepool.h:
	* gst-libs/gst/vulkan/gstvkinstance.h:
	* gst-libs/gst/vulkan/gstvkphysicaldevice.h:
	* gst-libs/gst/vulkan/gstvkqueue.h:
	* gst-libs/gst/vulkan/gstvkswapper.h:
	* gst-libs/gst/vulkan/gstvktrash.h:
	* gst-libs/gst/vulkan/gstvkwindow.h:
	  vulkan: Declare missing auto-pointer cleanup functions.
	  Also removed a couple guards since, given the glib dependency, they
	  are set.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2396>

2021-03-03 12:54:20 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* gst-libs/gst/vulkan/gstvkvideofilter.c:
	  vulkan: filter: Use filter variable name for choosing queue.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2396>

2021-03-03 08:50:13 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/vulkan/vksink.c:
	  vulkansink: Fix element metadata.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2396>

2021-06-25 09:19:25 +0800  Yinhang Liu <yinhang.liu@intel.com>

	* sys/msdk/gstmsdkvpp.c:
	  msdkvpp: use NV12 as default format on srcpad
	  By default, sinkpad is NV12 format and srcpad is BGRA format, the
	  different format will trigger an implicit format conversion in
	  msdkvpp, which will cause performance drop.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2394>

2021-06-01 08:40:17 +0900  Dominique Martinet <dominique.martinet@atmark-techno.com>

	* gst-libs/gst/wayland/wayland.c:
	  gst-libs/gst/wayland: handle display passing better
	  failure to pass a display in 'handle' would result in uninitialized value
	  being returned, which would often segfault later down the road when trying
	  to initialize gstreamer context with it.
	  Check the return value of gst_structure_get() to make sure we return valid
	  data.
	  Furthermore, the gstglimagesink in gst-plugins-base also has a similar
	  mechanism but uses 'display' as field name to pass the value; instead of
	  requiring the application to behave differently depending on what sink
	  was automatically detected just try to read both values here, with display
	  being the new default.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2292>

2021-07-08 14:46:11 +0100  Philippe Normand <philn@igalia.com>

	* ext/dash/gstdashdemux.c:
	  dashdemux: Log protection events on corresponding pad
	  GstDashDemuxStream is not a GstObject, so use its pad as associated object when
	  emitting log messages.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2389>

2021-07-08 16:49:27 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvafilter.c:
	  va: vpp: Improve the color properties setting.
	  The current setting of color properties are not very correct and
	  we will get some kind of "unknown Color Standard for YUV format"
	  warnings printed out by drivers. The video-color already provides
	  some standard APIs for us, and we can use them directly.
	  We also change the logic to: Finding the exactly match or explicit
	  standard first. If not found, we continue to find the most similar
	  one.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2385>

2021-07-08 19:03:06 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfcapturewinrt.cpp:
	* sys/mediafoundation/gstmfsourcereader.cpp:
	  mfvideosrc: Fix negotiation when interlace-mode is specified
	  Given caps does not need to be strictly subset of device caps.
	  Allow accept it if device caps and requested caps can intersect
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1619
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2384>

2021-07-08 02:24:18 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* ext/closedcaption/gstcccombiner.c:
	  cccombiner: mark field 0 as valid when generating padding CDP
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2383>

2021-07-06 17:14:21 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfvideobuffer.cpp:
	* sys/mediafoundation/gstmfvideobuffer.h:
	  mfvideobuffer: Don't error for unexpected Unlock/Unlock2D call
	  Some GPU vendor's MFT implementation calls IMFMediaBuffer::Unlock()
	  without previous IMFMediaBuffer::Lock() call. Which is obviously
	  driver bug but we can ignore the Unlock call.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2381>

2021-06-30 10:30:43 +0200  Stéphane Cerveau <scerveau@collabora.com>

	* ext/dash/gstdashsink.c:
	  dashsink: fix crash with no pad name for representation
	  if there is no pad name, the representation id
	  was NULL, causing a crash when writing the mpd file.
	  gst-launch-1.0 videotestsrc num-buffers=900 ! video/x-raw, width=800,
	  height=600, framerate=30/1 ! x264enc ! video/x-h264, profile=high !
	  dashsink
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2064>

2021-03-09 11:40:43 +0100  Stéphane Cerveau <scerveau@collabora.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/dash/gstdashsink.c:
	  dashsink: Add signals for allowing custom playlist/fragment
	  Instead of always going through the file system API we allow the
	  application to modify the behaviour. For the playlist itself and
	  fragments, the application can provide a GOutputStream. In addition the
	  sink notifies the application whenever a fragment can be deleted.
	  Following the HLS change:
	  https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/918
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2064>

2021-07-06 14:06:24 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth265decoder.c:
	  codecs: h265dec: Disable the POC order warning for negative POC.
	  There may be leading frames after the IRAP frames, which has negative
	  POC. This kind of frames are allowed and they will be displayed before
	  the IRAP frame. So the warning should not be triggered for them. Init
	  the last_output_poc to G_MININT32 can avoid this.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2380>

2021-07-06 13:38:16 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth264decoder.c:
	  codecs: h264dec: Disable the POC order warning for negative POC.
	  There may be leading frames after the IDR frame, which has negative
	  POC. This kind of frames are allowed and they will be displayed before
	  the IDR frame. So the warning should not be triggered for them. Init
	  the last_output_poc to G_MININT32 can avoid this.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2380>

2021-06-25 15:57:03 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>

	* gst/interlace/gstinterlace.c:
	  interlace: Push the reconfigure event in the right direction
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2361>

2021-07-05 15:44:34 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvabasedec.c:
	  va: basedec: Fix some artifact when do the crop copy.
	  The default video converter setting will add some artifact into
	  the picture for 10/12 bits conversion. This make the MD5 checksum
	  change from the original picture.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2379>

2021-07-05 02:05:03 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11decoder.cpp:
	  d3d11decoder: Enable zero-copy for Qualcomm
	  Qualcomm GPU works fine with current implementation now.
	  Noticeable difference between when it was disabled and current
	  d3d11 implementation is that we now support GstD3D11Memory
	  pool, so there will be no more frequent re-binding decoder surface anymore.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2377>

2021-07-05 07:42:39 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfdemux.c:
	* gst/mxf/mxfmetadata.c:
	* gst/mxf/mxfmetadata.h:
	  mxfdemux: Check validity of interleaved File Package
	  As specified by the S377 MXF core specification, if a file package has
	  interleaved content, then all tracks must be using the same Edit Rate
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2378>

2021-07-05 01:54:02 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11vp9dec.cpp:
	  d3d11vp9dec: Fix for incorrect use_prev_in_find_mv_refs setting
	  Set use_prev_in_find_mv_refs depending on context. The value seems
	  to be used by AMD and Qualcomm (Intel and NVIDIA doesn't make difference
	  as per test)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2376>

2021-05-11 14:07:14 +0800  Haihao Xiang <haihao.xiang@intel.com>

	* sys/msdk/gstmsdkallocator_libva.c:
	* sys/msdk/gstmsdksystemmemory.c:
	* sys/msdk/gstmsdkvideomemory.c:
	* sys/msdk/gstmsdkvpp.c:
	* sys/msdk/msdk.c:
	* sys/msdk/msdk_libva.c:
	  gstmsdkvpp: add RGBP and BGRP in src pad
	  It requires MFX version 2.4+
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2234>

2021-07-04 00:36:27 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfsourcereader.cpp:
	* sys/mediafoundation/gstmftransform.cpp:
	  mediafoundation: Port to IID_PPV_ARGS
	  Make code short where possible
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2375>

2021-07-04 00:24:09 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfaacenc.cpp:
	* sys/mediafoundation/gstmfmp3enc.cpp:
	  mfaudioenc: Remove pointless enumerating for hardware audio encoder
	  Hardware audio encoder can exist in theory, but it's untested
	  and we are not sure whether it can be preferred over software
	  implementation which is implemented by MS
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2375>

2021-07-03 23:12:08 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfaacenc.cpp:
	* sys/mediafoundation/gstmfh264enc.cpp:
	* sys/mediafoundation/gstmfh265enc.cpp:
	* sys/mediafoundation/gstmfmp3enc.cpp:
	* sys/mediafoundation/gstmfvp9enc.cpp:
	  mediafoundation: Fix typos
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2375>

2021-07-03 22:56:48 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfaacenc.cpp:
	* sys/mediafoundation/gstmfaudioenc.cpp:
	* sys/mediafoundation/gstmfcapturewinrt.cpp:
	* sys/mediafoundation/gstmfh264enc.cpp:
	* sys/mediafoundation/gstmfh265enc.cpp:
	* sys/mediafoundation/gstmfmp3enc.cpp:
	* sys/mediafoundation/gstmfsourcereader.cpp:
	* sys/mediafoundation/gstmftransform.cpp:
	* sys/mediafoundation/gstmfutils.cpp:
	* sys/mediafoundation/gstmfvideobuffer.cpp:
	* sys/mediafoundation/gstmfvideoenc.cpp:
	* sys/mediafoundation/gstmfvp9enc.cpp:
	* sys/mediafoundation/mediacapturewrapper.cpp:
	  mediafoundation: Run gst-indent
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2375>

2021-06-26 21:42:37 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265dec.c:
	  va: Consider the compatibility when we get_profile() for H265 decoder.
	  Adding the compatile profiles when we decide the final profile used for decoding.
	  The final profile candidates include:
	  1. The profile directly specified by SPS, which is the exact one.
	  2. The compatile profiles decided by the upstream element such as the h265parse.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2322>

2021-06-27 15:34:28 +0800  He Junyan <junyan.he@intel.com>

	* gst/videoparsers/gsth265parse.c:
	  h265parse: Add special profile case for profile_idc 0.
	  This is a work-around to identify some main profile streams having
	  wrong profile_idc. There are some wrongly encoded main profile streams
	  which doesn't have any of the profile_idc values mentioned in Annex-A,
	  instead, general_profile_idc has been set as zero and the
	  general_profile_compatibility_flag[general_profile_idc] is TRUE.
	  Assuming them as MAIN profile for now.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2322>

2021-06-26 15:11:47 +0800  He Junyan <junyan.he@intel.com>

	* gst/videoparsers/gsth265parse.c:
	  h265parse: Map -intra profiles to non-intra compatible profiles.
	  All the -intra profiles can map to non-intra profiles as compatible
	  profiles, except the monochrome case for main and main-10.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2322>

2021-07-01 19:27:28 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvavp9dec.c:
	  va: vp9dec: update segmentation and store the result.
	  The segmentation is stateful, its information may depend on the previous
	  segmentation setting. For example, if loop_filter_delta_enabled is TRUE,
	  the filter_level[GST_VP9_REF_FRAME_INTRA][1] should inherit the previous
	  frame's value and can not be calculated by the current frame's segmentation
	  data only. So we need to maintain the segmentation state inside the vp9
	  decoder and update it when the new frame header comes.
	  We also fix the CLAMP issue of lvl_seg and intra_lvl because of their wrong
	  uint type here.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2369>

2021-06-30 15:23:15 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gstvp9statefulparser.c:
	  codecparsers: vp9statefulparser: Fix the gst_vp9_get_qindex clamp issue.
	  The alternate quantizer is a delta value and should be int type.
	  We mark it wrongly as uint, that will make CLAMP (data, 0, 255)
	  always choose 255 rather than 0 if the data < 0.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2369>

2021-06-30 15:32:42 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecparsers/gstvp9parser.h:
	  codecparsers: vp9parser: Use macro to define the size of filter_level in Segmentation.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2369>

2021-06-30 12:15:42 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecparsers/gstvp9parser.h:
	  codecparsers: vp9parser: Delete the verbose redefine of MAX_LOOP_FILTER.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2369>

2021-06-29 23:21:24 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvaallocator.c:
	  va: allocator: dma: Fail when mapping the non-linear buffer.
	  The current way of DMA buffer mapping is simply forwarding the job
	  to parent's map function, which is a mmap(). That can not handle the
	  non-linear buffers, such as tiling, compressed, etc. The incorrect
	  mapping of such buffers causes broken images, which are recognized
	  as bugs. We should directly block this kind of mapping to avoid the
	  misunderstanding.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2353>

2021-07-02 13:10:25 +1000  Matthew Waters <matthew@centricular.com>

	* ext/closedcaption/gstccconverter.c:
	* tests/check/elements/ccconverter.c:
	  ccconverter: fix framerate caps negotiation from non-cdp to cdp
	  We can only convert from non-cdp to cdp within the confines of valid cdp
	  framerates.  The existing caps negotiation code was allowing any
	  framerate to convert to a cdp output which is incorrect and would hit an
	  assertion later.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2372>

2021-06-09 15:16:39 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth265decoder.c:
	  codecs: h265decoder: Consider the conformance window changes when new_sequence().
	  The change of conformance_window_flag and crop windows size also has impact on the
	  output resolution and caps. So it deserves a trigger of new_sequence() to notify
	  the sub class to update caps and pool.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2312>

2021-06-16 01:07:09 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/codecs/gsth265decoder.c:
	  h265decoder: Don't hold reference to GstVideoCodecFrame for dropped picture
	  We are dropping RASL (Random Access Skipped Leading picture) which
	  is associated with an IRAP (Intra Random Access Picture) that has
	  NoRaslOutputFlag equal to 1, since the RASL picture will not be
	  outputted and also it should not be used for reference picture.
	  So, corresponding GstVideoCodecFrame should be released immediately.
	  Otherwise GstVideoDecoder baseclass will hold the unused frame.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2330>

2021-06-21 13:23:13 +0200  Edward Hervey <edward@centricular.com>

	* gst/mxf/mxfdemux.c:
	* gst/mxf/mxfvanc.c:
	  mxfvanc: Handle empty ANC essence
	  Not having any *actual* ANC is totally fine and common usage with several MXF
	  variants.
	  In order to properly advance the streams, the essence handler returns an empty
	  GAP buffer which gets converted to a GST_EVENT_GAP.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2345>

2021-06-30 18:11:46 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfvideoenc.cpp:
	  mfvideoenc: Don't ignore previous flow return value
	  In case of ASYNC MFT (hardware encoder), we were ignoring previous
	  finish_frame or pad_push return value. so, error wasn't propagated.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2370>

2021-05-20 00:49:15 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11compositor.cpp:
	* sys/d3d11/gstd3d11compositor.h:
	* sys/d3d11/gstd3d11compositorbin.cpp:
	  d3d11compositor: Add scaling policy to support PAR-aware scaling
	  Identical to https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1156
	  but for D3D11.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2263>

2021-06-30 13:56:49 +0900  youngsoo.lee <youngsoo15.lee@gmail.com>

	* gst-libs/gst/opencv/meson.build:
	  opencv: Fix build error on macOS
	  The build fails on macos with the following error:
	  /usr/local/Cellar/opencv/4.5.0_5/include/opencv4/opencv2/core/mat.hpp:2226:15: error: no template named 'initializer_list' in namespace 'std'
	  Mat_(std::initializer_list<_Tp> values);
	  fatal error: too many errors emitted, stopping now [-ferror-limit=]
	  35 warnings and 20 errors generated.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2368>

2021-03-03 15:38:45 -0300  Ezequiel Garcia <ezequiel@collabora.com>

	* sys/v4l2codecs/gstv4l2codecvp8dec.c:
	  v4l2codecs: vp8: Check kernel version
	  Print a warning if the kernel version is too old.
	  Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2075>

2021-03-02 18:13:27 -0300  Ezequiel Garcia <ezequiel@collabora.com>

	* sys/v4l2codecs/gstv4l2codecvp8dec.c:
	* sys/v4l2codecs/linux/v4l2-controls.h:
	* sys/v4l2codecs/linux/videodev2.h:
	* sys/v4l2codecs/linux/vp8-ctrls.h:
	* sys/v4l2codecs/plugin.c:
	  v4l2codecs: vp8: Update to the new uAPI
	  Starting from Linux v5.13, the V4L2 stateless VP8 uAPI
	  is updated and stable.
	  Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2075>

2021-06-27 01:15:49 +0900  Seungha Yang <seungha@centricular.com>

	* sys/nvcodec/gstnvrtcloader.c:
	  nvcodec: Enhance CUDA runtime compiler library loading on Windows
	  The name of installed CUDA runtime compiler library is formed like
	  nvrtc64_{major-version}{minor-version}_0.dll on Windows
	  (which is differnt from documented in https://docs.nvidia.com/cuda/nvrtc/index.html)
	  And minor version might not be exactly same as that of CUDA.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2362>

2021-06-14 18:49:20 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11av1dec.cpp:
	* sys/d3d11/gstd3d11av1dec.h:
	* sys/d3d11/gstd3d11decoder.cpp:
	* sys/d3d11/gstd3d11decoder.h:
	* sys/d3d11/meson.build:
	* sys/d3d11/plugin.c:
	  d3d11: Add AV1 decoder
	  Introduce Direct3D11/DXVA AV1 decoder element
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2365>

2021-06-27 23:09:30 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/codecs/gstav1decoder.c:
	  av1decoder: Store display resolution for duplicated picture
	  Target display resolution might be required by subclass implementation
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2365>

2021-06-27 20:35:49 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/codecs/gstav1decoder.c:
	  av1decoder: Fix debug typo
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2365>

2021-06-27 20:19:39 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/codecparsers/gstav1parser.c:
	  av1parser: Fix tile size calculation
	  Remaining size should exclude already read "tile size bits".
	  And see also "5.11.1. General tile group OBU syntax"
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2365>

2021-06-28 21:13:56 -0400  Olivier Crête <olivier.crete@collabora.com>

	* ext/webrtc/transportreceivebin.c:
	  webrtc receivebin: Drop serialized queries before receive queue
	  If they're not dropped, they can be blocked in the queue even if it is
	  leaky in the case where there is a buffer being pushed downstream. Since
	  in webrtc, it's unlikely that there will be a special allocator to
	  receive RTP packets, there is almost no downside to just ignoring the
	  queries.
	  Also drop queries if they get caught in the pad probe after the queue.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2363>

2021-06-26 14:31:01 -0400  Olivier Crête <olivier.crete@collabora.com>

	* ext/webrtc/transportreceivebin.c:
	* ext/webrtc/transportreceivebin.h:
	  webrtc receivebin: Only set queue to leaky when the pad is blocked
	  When the pad is no longer blocked, remove the leakyness to make sure
	  everything gets into the jitterbuffer.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2363>

2021-06-26 14:25:39 -0400  Olivier Crête <olivier.crete@collabora.com>

	* ext/webrtc/transportreceivebin.c:
	  webrtc receivebin: Don't unblock pad until sender is unblocked
	  As ther OpenSSL session is created when the receiver goes into
	  playing, we have to wait for the ICE session to be connected before we
	  can start delivering packets to the DTLS element.
	  Fixes #1599
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2363>

2021-06-24 13:17:09 +0300  Sebastian Dröge <sebastian@centricular.com>

	* ext/webrtc/gstwebrtcbin.c:
	* gst-libs/gst/webrtc/dtlstransport.c:
	  webrtcbin: Sync to the clock per stream and not per bundle
	  By using the clocksync inside the dtlssrtpenc, all streams inside a
	  bundled are synchronized together. This will cause problems if their
	  buffers are not already arriving synchronized: clocksync would wait for
	  a buffer on one stream and then buffers from the other stream(s) with
	  lower timestamps would all be sent out too late.
	  Placing the clocksync before the rtpbin and rtpfunnel synchronizes each
	  stream individually and they will be send out more smoothly as a result.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2355>

2021-06-24 14:58:12 -0400  Olivier Crête <olivier.crete@collabora.com>

	* ext/webrtc/transportreceivebin.c:
	* ext/webrtc/transportsendbin.c:
	* ext/webrtc/transportstream.c:
	* gst-libs/gst/webrtc/rtpreceiver.c:
	* gst-libs/gst/webrtc/rtpreceiver.h:
	  webrtc: Remove the webrtc-priv.h header from public headers
	  And this time for real, also import it in a couple more places
	  inside the webrtc element to make it build.
	  Fixes #1607
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2359>

2021-06-09 17:29:19 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvaav1dec.c:
	  va: change AV1 GstVideoAlignment setting to left-top corner.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2298>

2021-06-18 10:37:06 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah264dec.c:
	  va: h264dec: Set the GstVideoAlignment correctly.
	  We should set GstVideoAlignment based on the sequence's crop information.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2298>

2021-06-09 17:21:18 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265dec.c:
	  va: h265dec: Set the GstVideoAlignment correctly.
	  We should set GstVideoAlignment based on the conformance window info.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2298>

2021-06-09 17:19:04 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvapool.c:
	  va: pool: Add VideoCropMeta to the buffer if crop_top/left > 0.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2298>

2021-06-09 17:14:42 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvabasedec.c:
	* sys/va/gstvabasedec.h:
	  va: basedec: Copy the frames into other_pool if needed.
	  If decoder's crop_top/left value > 0 and the downstream does not
	  support the VideoCropMeta, we need to manually copy the frames
	  into the other_pool and output it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2298>

2021-06-09 15:44:33 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvabasedec.c:
	* sys/va/gstvabasedec.h:
	  va: basedec: Setup the other_pool to copy output if crop_left/top.
	  If the decoder has crop_top/left value > 0(e.g. the conformance
	  window in the H265). Which means that the real output picture
	  locates in the middle of the decoded buffer. If the downstream can
	  support VideoCropMeta, a VideoCropMeta is added to notify the
	  real picture's coordinate and size. But if not, we need to copy
	  it manually and the other_pool is needed. We always assume that
	  decoded picture starts from top-left corner, and so there is no
	  need to do this if crop_bottom/right value > 0.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2298>

2021-06-07 00:49:49 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvapool.c:
	  va: No need to set the alignment for VideoMeta
	  The base va decoder's video_align is just used for calculation the
	  real decoded buffer's width and height. It does not have meaning
	  for the VideoMeta, because it does not align to the real picture
	  in the output buffer. We will use VideoCropMeta to replace it later.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2298>

2021-06-03 00:07:05 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvapool.c:
	  va: Delete the useless align expand in va_pool_set_config().
	  The base va decoder's video_align is just used for calculation the
	  real decoded buffer's width and height. While the gst_video_info_align
	  just calculate the offset and stride based on the video_align. But
	  all the offsets and strides are overwritten in gst_va_dmabuf_allocator_try
	  or gst_va_allocator_try, which make that calculation useless.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2298>

2021-06-28 17:41:38 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/webrtc/webrtc-priv.h:
	* gst-libs/gst/webrtc/webrtc_fwd.h:
	  webrtc: Re-add WebRTC object docs to the public headers
	  So they end up in the generated documentation and the Since markers
	  appear in the .gir files too.
	  Also remove wrong "Since: 1.16" markers for some objects that were
	  available since 1.14.0 already.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1609
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2366>

2021-06-25 10:20:06 +0300  Sebastian Dröge <sebastian@centricular.com>

	* ext/webrtc/gstwebrtcbin.c:
	* ext/webrtc/utils.c:
	  webrtcbin: Set transceiver kind and codec preferences immediately when creating it
	  Otherwise the on-new-transceiver signal will always be emitted with kind
	  set to UNKNOWN and no codec preferences although both are often known at
	  this point already.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2360>

2021-06-25 12:14:03 +0300  Sebastian Dröge <sebastian@centricular.com>

	* tests/check/elements/webrtcbin.c:
	  webrtcbin: Add a test for setting codec preferences as part of "on-new-transceiver" when setting the remote offer
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2310>

2021-06-25 12:13:42 +0300  Sebastian Dröge <sebastian@centricular.com>

	* tests/check/elements/webrtcbin.c:
	  webrtc: Use fail_unless_equals_string() for string assertions
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2310>

2021-06-08 11:40:14 +0300  Sebastian Dröge <sebastian@centricular.com>

	* ext/webrtc/gstwebrtcbin.c:
	  webrtcbin: Store newly created transceivers when creating an answer also in the seen transceivers list
	  Otherwise it might be used a second time for another media afterwards.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2310>

2021-06-08 11:39:27 +0300  Sebastian Dröge <sebastian@centricular.com>

	* ext/webrtc/gstwebrtcbin.c:
	  webrtcbin: When creating a new transceiver as part of creating the answer also take its codec preferences into account
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2310>

2021-06-08 11:38:11 +0300  Sebastian Dröge <sebastian@centricular.com>

	* ext/webrtc/gstwebrtcbin.c:
	  webrtcbin: Fix a couple of caps leaks of the offer caps
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2310>

2021-06-24 12:28:11 +0100  Philippe Normand <philn@igalia.com>

	* ext/webrtc/gstwebrtcbin.c:
	  webrtcbin: Stop transceivers update after first SDP error on data channel
	  When invalid SDP is supplied, _update_data_channel_from_sdp_media() sets the
	  GError, so it is invalid to continue any further SDP processing, we have to exit
	  early when the first error is raised.
	  This change is similar to the one applied in
	  064428cb34572fa1a018ebbaba6925967ba99dc0.
	  See also #1595
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2356>

2021-06-21 16:50:46 -0400  Olivier Crête <olivier.crete@collabora.com>

	* tests/check/elements/webrtcbin.c:
	  webrtcbin test: Fix race in new test
	  Pull a buffer from a sink to make sure that the caps are already
	  set before trying to update them.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2348>

2021-06-22 16:12:57 +0800  Mengkejiergeli Ba <mengkejiergeli.ba@intel.com>

	* sys/msdk/gstmsdkenc.c:
	* sys/msdk/gstmsdkenc.h:
	* sys/msdk/gstmsdkvp9enc.c:
	  msdk: fix qp range for vp9enc
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2349>

2021-06-10 11:46:35 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/timecode/gstavwait.c:
	  avwait: Don't consider it a segment change if the segment is the same except for the position
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2319>

2021-06-21 17:13:33 +0900  Seungha Yang <seungha@centricular.com>

	  d3d11: Add support for GRAY and more YUV formats
	  By this commit, following formats will be newly supported by d3d11 elements
	  * Y444_{8, 12, 16}LE formats:
	  Similar to other planar formats. Such Y444 variants are not supported
	  by Direct3D11 natively, but we can simply map each plane by
	  using R8 and/or R16 texture.
	  * P012_LE:
	  It is not different from P016_LE, but defining P012 and P016 separately
	  for more explicit signalling. Note that DXVA uses P016 texture
	  for 12bits encoded bitstreams.
	  * GRAY:
	  This format is required for some codecs (e.g., AV1) if monochrome
	  is supported
	  * 4:2:0 planar 12bits (I420_12LE) and 4:2:2 planar 8, 10, 12bits
	  formats (Y42B, I422_10LE, and I422_12LE)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2346>

2021-06-10 11:42:24 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/mpegtsmux/gstbasetsmux.c:
	  tsmux: When selecting random PIDs, name the pads according to those PIDs
	  Some elements will make use of the automatically generated names to
	  create new pads in future muxer instances, for example splitmuxsink.
	  Previously we would've created a pad with a random pid that would become
	  "sink_0", and then on a new muxer instance a pad "sink_0" and tsmux
	  would've then failed because 0 is not a valid PID.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2318>

2021-06-23 01:43:08 +0900  Seungha Yang <seungha@centricular.com>

	  mfvideoenc: Enhance B-frame timestamp handling
	  When B-frame is enabled, encoder seems to adjust PTS of encoded sample
	  by using frame duration.
	  For instance, one observed timestamp pattern by using B-frame enabled
	  and 30fps stream is:
	  * Frame-1: MF pts 0:00.033333300 MF dts 0:00.000000000
	  * Frame-2: MF pts 0:00.133333300 MF dts 0:00.033333300
	  * Frame-3: MF pts 0:00.066666600 MF dts 0:00.066666600
	  * Frame-4: MF pts 0:00.099999900 MF dts 0:00.100000000
	  We can notice that the amount of PTS shift is frame duration and
	  Frame-4 exhibits PTS < DTS.
	  To compensate shifted timestamp, we should
	  calculate the timestamp offset and re-calculate DTS correspondingly.
	  Otherwise, total timeline of output stream will be shifted, and that
	  can cause time sync issue.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2354>

2021-06-10 11:36:43 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/mpegtsmux/gstbasetsmux.c:
	  tsmux: Recheck existing pad PIDs when requesting a new pad with a random pid
	  Previously pads might have been requested already (e.g. in NULL state),
	  then reset was called (e.g. because changing state) and then a new pad
	  was requested. Resetting is re-creating the internal muxer object and as
	  such resetting the pid counter, so the next requested pad would get the
	  same pid as the first requested pad which then leads to collisions.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2317>

2021-06-22 02:34:18 +0900  Seungha Yang <seungha@centricular.com>

	* sys/mediafoundation/gstmfh264enc.cpp:
	* sys/mediafoundation/gstmfh265enc.cpp:
	* sys/mediafoundation/gstmfvideoenc.cpp:
	  mfh264enc, mfh265enc: Set profile string to src caps
	  Set configured profile to src caps so that downstream can figure
	  out selected profile.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2347>

2021-04-21 16:24:00 -0400  Olivier Crête <olivier.crete@collabora.com>

	* ext/webrtc/webrtcdatachannel.h:
	* gst-libs/gst/webrtc/datachannel.c:
	* gst-libs/gst/webrtc/datachannel.h:
	* gst-libs/gst/webrtc/webrtc-priv.h:
	  webrtc lib: Make the datachannel struct private
	  This will prevent any unsafe access.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2241>

2021-04-21 16:19:41 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst-libs/gst/webrtc/dtlstransport.c:
	* gst-libs/gst/webrtc/dtlstransport.h:
	* gst-libs/gst/webrtc/webrtc-priv.h:
	  webrtc lib: Make the DTLSTransport struct private
	  This will prevent any unsafe access.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2241>

2021-04-21 16:17:23 -0400  Olivier Crête <olivier.crete@collabora.com>

	* ext/webrtc/nicetransport.h:
	* gst-libs/gst/webrtc/icetransport.c:
	* gst-libs/gst/webrtc/icetransport.h:
	* gst-libs/gst/webrtc/webrtc-priv.h:
	  webrtc lib: Make the icetransport struct private
	  This will prevent any unsafe access.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2241>

2021-04-21 16:04:26 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst-libs/gst/webrtc/rtpreceiver.h:
	* gst-libs/gst/webrtc/webrtc-priv.h:
	  webrtc lib: Make the rtpreceiver struct private
	  This will prevent any unsafe access.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2241>

2021-04-21 16:00:57 -0400  Olivier Crête <olivier.crete@collabora.com>

	* ext/webrtc/gstwebrtcbin.c:
	* gst-libs/gst/webrtc/rtpsender.c:
	* gst-libs/gst/webrtc/rtpsender.h:
	* gst-libs/gst/webrtc/webrtc-priv.h:
	  webrtc lib: Make the rtpsender struct private
	  This will prevent any unsafe access.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2241>

2021-04-21 16:00:34 -0400  Olivier Crête <olivier.crete@collabora.com>

	* ext/webrtc/webrtctransceiver.h:
	* gst-libs/gst/webrtc/rtptransceiver.c:
	* gst-libs/gst/webrtc/rtptransceiver.h:
	* gst-libs/gst/webrtc/webrtc-priv.h:
	  webrtc lib: Make the transceiver struct private
	  This will prevent any unsafe access.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2241>

2021-06-18 19:26:35 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* ext/x265/gstx265enc.c:
	  x265enc: add negative DTS support
	  Use the same set_min_pts approach as x264enc.
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/304
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2340>

2021-06-17 20:10:35 +0900  Seungha Yang <seungha@centricular.com>

	* sys/decklink/gstdecklinkaudiosrc.cpp:
	  decklinkaudiosrc: Don't assume that stream time is always valid
	  As per SDK doc, IDeckLinkInputCallback::VideoInputFrameArrived
	  method might not provide video frame and it can be null.
	  In that case, given stream_time can be invalid.
	  So, we should not try to convert GST_CLOCK_TIME_NONE
	  by using gst_clock_adjust_with_calibration()
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2337>

2021-06-14 13:16:30 -0400  Thibault Saunier <tsaunier@igalia.com>

	* gst-libs/gst/transcoder/gsttranscoder.c:
	  transcoder: Fix usage of g_error_propagate
	  In the error callback we were propagating an error we were not owning
	  which is incorrect use of the API.
	  Also we were clearing a GError we already propagated which is wrong
	  as propagating gives ownership away.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2325>

2021-06-14 13:13:24 -0400  Thibault Saunier <tsaunier@igalia.com>

	* gst-libs/gst/transcoder/gsttranscoder.c:
	  transcoder: Add a missing object unlocking
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2325>

2021-06-14 15:07:05 +0200  Stéphane Cerveau <scerveau@collabora.com>

	* ext/faad/gstfaad.c:
	  faad: fix typo in element documentation
	  seealso is now see_also
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2323>

2021-06-17 20:17:14 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* tests/check/elements/msdkh264enc.c:
	  tests: msdkh264dec: Run test only if factory is available.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2336>

2021-06-17 11:25:11 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* sys/msdk/gstmsdkcontext.c:
	  msdk: Demote error log message to warning.
	  It is not an error that the available hardware doesn't support VA-API/MSDK. Just
	  none plugin features will be registered.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2336>

2021-06-20 18:48:21 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/d3d11/gstd3d11_private.h:
	* gst-libs/gst/d3d11/gstd3d11bufferpool.cpp:
	* gst-libs/gst/d3d11/gstd3d11device.cpp:
	* gst-libs/gst/d3d11/gstd3d11format.cpp:
	* gst-libs/gst/d3d11/gstd3d11memory.cpp:
	* gst-libs/gst/d3d11/gstd3d11utils.cpp:
	* gst-libs/gst/d3d11/meson.build:
	  libs: d3d11: Port to C++
	  In general, C++ COM APIs are slightly less verbose and more readable
	  than C APIs. And C++ supports some helper methods
	  (smart pointer and C++ only macros for example) which are not allowed for C.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2343>

2021-06-16 10:23:37 -0700  U. Artie Eoff <ullysses.a.eoff@intel.com>

	* sys/msdk/gstmsdk.c:
	* sys/msdk/meson.build:
	  msdk: declare external dependencies
	  Track kernel and VA driver dependencies so gstreamer
	  will re-inspect the plugin if any of them change.
	  Also, do not blacklist the plugin if !msdk_is_available
	  since it could be a transient issue caused by one or
	  more external dependency issues (e.g. wrong/missing
	  driver specified, but corrected by user later on).
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2335>

2021-06-17 01:00:33 +0900  Seungha Yang <seungha@centricular.com>

	* gst/videoparsers/gsth264parse.c:
	* gst/videoparsers/gsth265parse.c:
	  h264parse,h265parse: Push parameter set NAL units again per segment-done
	  Some decoder implementations might drain out internal buffers and
	  reset its status on segment-done event. So, in case that
	  upstream stream-format is packetized but downstream supports only
	  byte-format, required codec-data might not be forwarded toward
	  downstream if such parameter set NAL units don't exist in inband
	  bitstream. Therefore, parse elements should re-send parameter set NAL
	  units like the case of flush event.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2334>

2021-06-16 10:31:13 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst-libs/gst/codecs/gstvp8decoder.c:
	  vp8decoder: Drain the output queue on EOS/finish
	  The finish() virtual method was flushing the queue, instead push the
	  remaining buffers. It is not required to reset in finish() unlike
	  drain(). This a regression causing last frame to always be lost.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2333>

2021-06-16 10:30:18 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst-libs/gst/codecs/gstvp8decoder.c:
	  v4l2slvp8dec: Only ask for output delay once per negotiation
	  While it's technically possible to change it per frame, asking for
	  that every frame is not very useful. This mimic H264 decoder better.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2333>

2021-06-16 16:56:14 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvabasedec.c:
	  va: Improve the default mapping between rt_format and video format.
	  We add 12 bits entries into this default mapping. And the old mapping
	  is not precise. For example, the NV12 should not be used as the default
	  mapping for VA_RT_FORMAT_YUV422 and VA_RT_FORMAT_YUV444, it is even not
	  a 422 or 444 format.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2332>

2021-06-16 16:43:40 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvah265dec.c:
	  va: Add 12 bits rt_format setting in H265.
	  In order to support 12 bits format decoding, we need to add the
	  support for 12 bits rt_format in H265.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2332>

2021-06-16 16:32:30 +0800  He Junyan <junyan.he@intel.com>

	* sys/va/gstvavideoformat.c:
	  va: Fix a typo in video format mapping.
	  GST_VIDEO_FORMAT_Y412_LE is a 4:4:4 format and so should be mapped
	  to VA_RT_YUV444_12 rt format.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2332>

2021-06-15 21:36:43 +0800  He Junyan <junyan.he@intel.com>

	* gst/videoparsers/gsth265parse.c:
	  h265parse: Fix a typo in get_compatible_profile_caps().
	  The GST_H265_PROFILE_MAIN_444_10 profile should be compatible with
	  GST_H265_PROFILE_SCREEN_EXTENDED_MAIN_444_10, not the current
	  GST_H265_PROFILE_SCREEN_EXTENDED_MAIN_10.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2328>

2020-12-15 18:11:08 +0800  Randy Li (ayaka) <ayaka@soulik.info>

	* ext/wayland/gstwaylandsink.c:
	* ext/wayland/gstwaylandsink.h:
	* ext/wayland/wlwindow.c:
	* ext/wayland/wlwindow.h:
	  waylandsink: prevent frame callback being released twice
	  For those using context from the application which
	  would be the embedded video case, if the frame callback
	  is entering at the same time as window is finalizing,
	  a wayland proxy object would be destroyed twice, leading
	  the refcout less than zero in the second time, it can
	  throw an abort() in wayland.
	  For those top window case, which as a directly connection
	  to the compositor, they can stop the message queue then
	  the frame callback won't happen at the same time as the
	  window is finalizing. It doesn't think it would bother
	  them about this.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1883>

2021-06-14 16:04:52 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/codecalpha/gstalphadecodebin.c:
	* sys/v4l2codecs/gstv4l2codecalphadecodebin.c:
	  alphadecodebin: Fix stall due to QoS
	  alphacombine element is a simple element that assumes buffers are always
	  paired, or at least that missing buffers are signalled with a GAP. The QoS
	  implementation in the GstVideoDecoder base class allow decoders dropping
	  frames independently and that could lead to stall in alphacombine.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2326>

2021-02-02 11:02:02 +0100  Stéphane Cerveau <scerveau@collabora.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/openjpeg/gstopenjpegenc.c:
	* gst-libs/gst/codecparsers/gstjpeg2000sampling.c:
	* gst-libs/gst/codecparsers/gstjpeg2000sampling.h:
	* gst/videoparsers/gstjpeg2000parse.c:
	  jpeg2000parse, openjpeg: add support for YCrCb 4:1:1 sampling
	  Add YCrCb 4:1:1 support in openjpeg elements
	  and fix in jpeg2000parse the YCrCb 4:1:0 support
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2321>

2021-06-10 23:35:38 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11decoder.cpp:
	* sys/d3d11/gstd3d11h264dec.cpp:
	* sys/d3d11/gstd3d11h265dec.cpp:
	* sys/d3d11/gstd3d11mpeg2dec.cpp:
	* sys/d3d11/gstd3d11vp8dec.cpp:
	* sys/d3d11/gstd3d11vp9dec.cpp:
	  d3d11decoder: Don't print error log when no DPB texture is available
	  ... but we are flushing. The condition is quite expected situation
	  when pipeline is in the middle of seeking operation.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2320>

2021-05-23 18:17:38 +0800  Yinhang Liu <yinhang.liu@intel.com>

	* sys/msdk/gstmsdkenc.c:
	  msdkenc: add extbrc support in ext-coding-props property
	  The SDK can support external bitrate control [1], so add extbrc
	  to enable this feature.
	  [1] https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#mfxextcodingoption2
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2139>

2021-05-23 18:13:25 +0800  Yinhang Liu <yinhang.liu@intel.com>

	* docs/plugins/gst_plugins_cache.json:
	* sys/msdk/gstmsdkenc.c:
	* sys/msdk/gstmsdkenc.h:
	  msdkenc: add ext-coding-props for external coding options
	  This property supports passing multiple parameters using GstStructure.
	  Example usage:
	  ext-coding-props="props,key0=value0,key1=value1,..."
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2139>

2021-06-05 21:59:50 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/codecs/gsth265decoder.c:
	  codecs: Fix the H265 poc out of order warning.
	  We always get a warning such as:
	  h265decoder gsth265decoder.c:1432:gst_h265_decoder_do_output_picture: \
	  <vah265dec0> Outputting out of order 255 -> 0, likely a broken stream
	  in H265 decoder.
	  The problem is caused because we fail to reset the last_output_poc when
	  we get IDR and BLA. The incoming IDR and BLA frame already bump all the
	  frames in the DPB, but we forget to reset the last_output_poc, which
	  make the POC out of order and generate the warning all the time.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2294>

2021-06-10 01:09:44 +0900  Seungha Yang <seungha@centricular.com>

	* sys/wasapi2/gstwasapi2sink.c:
	  wasapi2sink: Fix ringbuffer object leak
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2315>

2021-06-10 00:24:24 +0900  Seungha Yang <seungha@centricular.com>

	* sys/wasapi2/gstwasapi2ringbuffer.cpp:
	  wasapi2ringbuffer: Implement GstAudioRingBuffer::pause()
	  WASAPI doesn't support PAUSE so it's not different from Stop().
	  When pipeline is in paused state, we don't need to waste CPU resource
	  for feeding silent buffers.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2315>

2021-06-07 01:49:26 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/d3d11/gstd3d11_fwd.h:
	* gst-libs/gst/d3d11/gstd3d11memory.c:
	* gst-libs/gst/d3d11/gstd3d11memory.h:
	  d3d11memory: Implement GstAllocator::mem_copy method
	  There are a few places which require deep copy
	  (basesink on drain for example). Also this implementation can be
	  useful for future use case.
	  One probable future use case is that copying DPB texture to
	  another texture for in-place transform since our DPB texture is never
	  writable, and therefore copying is unavoidable.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2308>

2021-06-08 21:35:20 +0900  Seungha Yang <seungha@centricular.com>

	* sys/wasapi2/gstwasapi2client.cpp:
	* sys/wasapi2/gstwasapi2client.h:
	* sys/wasapi2/gstwasapi2device.c:
	* sys/wasapi2/gstwasapi2ringbuffer.cpp:
	* sys/wasapi2/gstwasapi2src.c:
	* sys/wasapi2/gstwasapi2util.c:
	* sys/wasapi2/gstwasapi2util.h:
	  wasapi2src: Add support for loopback recording
	  ... and add various device error handling.
	  This loopback implementation is functionally identical to that of wasapisrc.
	  When it's enabled, wasapi2src will read data from render device instead of
	  capture device.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2311>

2021-05-10 20:45:28 +0900  Seungha Yang <seungha@centricular.com>

	* sys/wasapi2/gstwasapi2client.cpp:
	* sys/wasapi2/gstwasapi2client.h:
	* sys/wasapi2/gstwasapi2device.c:
	* sys/wasapi2/gstwasapi2ringbuffer.cpp:
	* sys/wasapi2/gstwasapi2ringbuffer.h:
	* sys/wasapi2/gstwasapi2sink.c:
	* sys/wasapi2/gstwasapi2sink.h:
	* sys/wasapi2/gstwasapi2src.c:
	* sys/wasapi2/gstwasapi2src.h:
	* sys/wasapi2/gstwasapi2util.c:
	* sys/wasapi2/gstwasapi2util.h:
	* sys/wasapi2/meson.build:
	* sys/wasapi2/plugin.c:
	  wasapi2: Rewrite plugin and implement audioringbuffer subclass
	  ... based on MediaFoundation work queue API.
	  By this commit, wasapi2 plugin will make use of pull mode scheduling
	  with audioringbuffer subclass.
	  There are several drawbacks of audiosrc/audiosink subclassing
	  (not audiobasesrc/audiobasesink) for WASAPI API, which are:
	  * audiosrc/audiosink classes try to set high priority to
	  read/write thread via MMCSS (Multimedia Class Scheduler Service)
	  but it's not allowed in case of UWP application.
	  In order to use MMCSS in UWP, application should use MediaFoundation
	  work queue indirectly.
	  Since audiosrc/audiosink scheduling model is not compatible with
	  MediaFoundation's work queue model, audioringbuffer subclassing
	  is required.
	  * WASAPI capture device might report larger packet size than expected
	  (i.e., larger frames we can read than expected frame size per period).
	  Meanwhile, in any case, application should drain all packets at that moment.
	  In order to handle the case, wasapi/wasapi2 plugins were making use of
	  GstAdapter which is obviously sub-optimal because it requires additional
	  memory allocation and copy.
	  By implementing audioringbuffer subclassing, we can avoid such inefficiency.
	  In this commit, all the device read/write operations will be moved
	  to newly implemented wasapi2ringbuffer class and
	  existing wasapi2client class will take care of device enumeration
	  and activation parts only.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2306>

2021-06-06 17:32:59 +0900  Seungha Yang <seungha@centricular.com>

	* sys/wasapi2/gstwasapi2client.cpp:
	  wasapi2: Use AUDCLNT_STREAMFLAGS_NOPERSIST flag
	  ... so that we can disable persistence of our mute/volume status
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2306>

2021-06-06 17:28:56 +0900  Seungha Yang <seungha@centricular.com>

	* sys/wasapi2/gstwasapi2src.c:
	  wasapi2src: Fix doc typo
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2306>

2021-05-26 00:12:59 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/wpe-extension/gstwpebusmsgforwarder.c:
	  wpe: Rename `undeserializable_type` to `not_deserializable_type`
	  Making it more readable.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2273>

2021-05-25 23:58:27 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/WPEThreadedView.cpp:
	* ext/wpe/gstwpesrcbin.cpp:
	* ext/wpe/wpe-extension/gstwpebusmsgforwarder.c:
	  wpe: Make forwarded messages layout more like GstBinForwaded messages
	  Making it look more like how we do this kind of things in other places.
	  See: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2252#note_927653
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2273>

2021-05-21 10:52:01 -0400  Thibault Saunier <tsaunier@igalia.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/wpe/gstwpesrcbin.cpp:
	* tests/examples/wpe/wpe.c:
	  wpe: Make wpesrc!video pad an always pad
	  There should always be a `video` pad no matter what.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2273>

2021-05-21 10:31:53 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/wpe-extension/gstwpeextension.c:
	  wpe: Remove unused env var
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2273>

2021-05-21 10:31:37 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/wpe-extension/gstwpeaudiosink.c:
	  wpe: Fix atomic usage
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2273>

2021-05-21 10:29:11 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/gstwpesrcbin.cpp:
	  wpe: Add a note able requiring tracing subsystem for message forwarding
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2273>

2021-05-21 10:18:21 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/wpe-extension/gstwpeaudiosink.c:
	  wpe: Fix check on whether MEMFD_CREATE is available
	  The ordering of the ifdef was wrong
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2273>

2021-05-21 10:13:01 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/gstwpesrcbin.cpp:
	* ext/wpe/wpe-extension/gstwpebusmsgforwarder.c:
	  wpe: Plug a leak
	  We were freeing after returning
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2273>

2021-05-21 09:54:33 -0400  Thibault Saunier <tsaunier@igalia.com>

	* ext/wpe/WPEThreadedView.cpp:
	  Revert "wpe: Properly respect LIBGL_ALWAYS_SOFTWARE"
	  This causes issues I didn't see:
	  https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2252#note_927633
	  Let's just tell people to use capsfilter to force software rendering in
	  `wpesrc` for now.
	  The intent was to allow forcing it easily in playbin2 for the CI, but
	  we will do it some other way and see when time comes.
	  This reverts commit 9415106b029e5469ca28d882dc46ecc38786d4c9.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2273>

2021-05-28 15:18:53 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* docs/plugins/gst_plugins_cache.json:
	* gst/debugutils/debugutilsbad.c:
	* gst/debugutils/gstdebugutilsbadelements.h:
	* gst/debugutils/gstvideocodectestsink.c:
	* gst/debugutils/gstvideocodectestsink.h:
	* gst/debugutils/meson.build:
	  debugutils: Introduce videocodectestsink
	  This is a video specific sink used to test video CODEC conformance. This is similar
	  to a combination of filesink and testsink, but will skip over any type of
	  padding that GStreamer Video library introduces. This is needed in order to obtain the
	  correct checksum or raw yuv data.
	  This element currently support writing back non-padded raw I420 through the
	  location property and will calculate an MD5 and post it as an element message
	  of type conformance/checksum. More output format or checksum type could be
	  added in the future as needed.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2287>

2021-06-04 01:44:47 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/vulkan/gstvkinstance.c:
	  vkinstance: Don't abort in case that system has no available vulkan device
	  Specification doesn't have restriction that returned
	  pPhysicalDeviceCount value must be non-zero
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2304>

2021-06-03 11:24:53 +0200  Edward Hervey <edward@centricular.com>

	* gst/mpegtsdemux/tsdemux.c:
	  tsdemux: Clear all streams when rewinding
	  This avoids sending out partial invalid data downstream which could cause
	  decoders (ex: `dvdlpmdec`) to error out.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2301>

2021-05-29 01:48:15 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/d3d11/gstd3d11device.c:
	* gst-libs/gst/d3d11/gstd3d11format.h:
	* sys/d3d11/gstd3d11converter.cpp:
	* tests/check/elements/d3d11colorconvert.c:
	  d3d11: Add support for YV12 and NV21 formats
	  Handle UV swapped 4:2:0 8bits formats
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2290>

2021-06-03 18:28:26 +0900  Seungha Yang <seungha@centricular.com>

	* sys/d3d11/gstd3d11window_win32.cpp:
	  d3d11window_win32: Ensure closing internal HWND from window thread
	  Window hand
Download .txt
gitextract_5dm82u6t/

├── .gitignore
├── .gitlab-ci.yml
├── .indentignore
├── AUTHORS
├── COPYING
├── ChangeLog
├── MAINTAINERS
├── NEWS
├── README
├── README.static-linking
├── RELEASE
├── REQUIREMENTS
├── data/
│   ├── meson.build
│   └── targets/
│       ├── device/
│       │   └── dvd.gep
│       ├── file-extension/
│       │   ├── avi.gep
│       │   ├── flv.gep
│       │   ├── mkv.gep
│       │   ├── mp3.gep
│       │   ├── mp4.gep
│       │   ├── oga.gep
│       │   ├── ogv.gep
│       │   ├── ts.gep
│       │   └── webm.gep
│       └── online-service/
│           └── youtube.gep
├── docs/
│   ├── gst_api_version.in
│   ├── index.md
│   ├── libs/
│   │   ├── adaptivedemux/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── audio/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── base/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── basecamerabinsrc/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── codecparsers/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── codecs/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── insertbin/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── mpegts/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── opencv/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── play/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── player/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── tools/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── transcoder/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── video/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── vulkan/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── vulkan-wayland/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   ├── vulkan-xcb/
│   │   │   ├── index.md
│   │   │   └── sitemap.txt
│   │   └── webrtc/
│   │       ├── index.md
│   │       └── sitemap.txt
│   ├── meson.build
│   ├── plugins/
│   │   ├── gst_plugins_cache.json
│   │   ├── index.md
│   │   ├── inspect/
│   │   │   ├── plugin-rist.xml
│   │   │   └── plugin-sctp.xml
│   │   └── sitemap.txt
│   ├── random/
│   │   ├── ChangeLog-0.8
│   │   ├── LICENSE
│   │   └── PORTED_09
│   └── sitemap.txt
├── ext/
│   ├── aes/
│   │   ├── gstaes.c
│   │   ├── gstaesdec.c
│   │   ├── gstaesdec.h
│   │   ├── gstaesenc.c
│   │   ├── gstaesenc.h
│   │   ├── gstaeshelper.c
│   │   ├── gstaeshelper.h
│   │   └── meson.build
│   ├── aom/
│   │   ├── gstaom.c
│   │   ├── gstaom.h
│   │   ├── gstav1dec.c
│   │   ├── gstav1dec.h
│   │   ├── gstav1enc.c
│   │   ├── gstav1enc.h
│   │   ├── gstav1utils.c
│   │   ├── gstav1utils.h
│   │   └── meson.build
│   ├── assrender/
│   │   ├── gstassrender.c
│   │   ├── gstassrender.h
│   │   └── meson.build
│   ├── avtp/
│   │   ├── gstavtp.c
│   │   ├── gstavtpaafdepay.c
│   │   ├── gstavtpaafdepay.h
│   │   ├── gstavtpaafpay.c
│   │   ├── gstavtpaafpay.h
│   │   ├── gstavtpbasedepayload.c
│   │   ├── gstavtpbasedepayload.h
│   │   ├── gstavtpbasepayload.c
│   │   ├── gstavtpbasepayload.h
│   │   ├── gstavtpcrfbase.c
│   │   ├── gstavtpcrfbase.h
│   │   ├── gstavtpcrfcheck.c
│   │   ├── gstavtpcrfcheck.h
│   │   ├── gstavtpcrfsync.c
│   │   ├── gstavtpcrfsync.h
│   │   ├── gstavtpcrfutil.c
│   │   ├── gstavtpcrfutil.h
│   │   ├── gstavtpcvfdepay.c
│   │   ├── gstavtpcvfdepay.h
│   │   ├── gstavtpcvfpay.c
│   │   ├── gstavtpcvfpay.h
│   │   ├── gstavtpsink.c
│   │   ├── gstavtpsink.h
│   │   ├── gstavtpsrc.c
│   │   ├── gstavtpsrc.h
│   │   └── meson.build
│   ├── bs2b/
│   │   ├── gstbs2b.c
│   │   ├── gstbs2b.h
│   │   └── meson.build
│   ├── bz2/
│   │   ├── gstbz2.c
│   │   ├── gstbz2dec.c
│   │   ├── gstbz2dec.h
│   │   ├── gstbz2enc.c
│   │   ├── gstbz2enc.h
│   │   └── meson.build
│   ├── chromaprint/
│   │   ├── gstchromaprint.c
│   │   ├── gstchromaprint.h
│   │   └── meson.build
│   ├── closedcaption/
│   │   ├── bcd.h
│   │   ├── bit_slicer.c
│   │   ├── bit_slicer.h
│   │   ├── decoder.c
│   │   ├── decoder.h
│   │   ├── gstcccombiner.c
│   │   ├── gstcccombiner.h
│   │   ├── gstccconverter.c
│   │   ├── gstccconverter.h
│   │   ├── gstccextractor.c
│   │   ├── gstccextractor.h
│   │   ├── gstcea708decoder.c
│   │   ├── gstcea708decoder.h
│   │   ├── gstceaccoverlay.c
│   │   ├── gstceaccoverlay.h
│   │   ├── gstclosedcaption.c
│   │   ├── gstline21dec.c
│   │   ├── gstline21dec.h
│   │   ├── gstline21enc.c
│   │   ├── gstline21enc.h
│   │   ├── hamm.h
│   │   ├── io-sim.c
│   │   ├── io-sim.h
│   │   ├── macros.h
│   │   ├── meson.build
│   │   ├── misc.h
│   │   ├── raw_decoder.c
│   │   ├── raw_decoder.h
│   │   ├── sampling_par.c
│   │   ├── sampling_par.h
│   │   └── sliced.h
│   ├── colormanagement/
│   │   ├── gstcolormanagement.c
│   │   ├── gstlcms.c
│   │   ├── gstlcms.h
│   │   └── meson.build
│   ├── curl/
│   │   ├── curltask.h
│   │   ├── gstcurl.c
│   │   ├── gstcurlbasesink.c
│   │   ├── gstcurlbasesink.h
│   │   ├── gstcurldefaults.h
│   │   ├── gstcurlelement.c
│   │   ├── gstcurlelements.h
│   │   ├── gstcurlfilesink.c
│   │   ├── gstcurlfilesink.h
│   │   ├── gstcurlftpsink.c
│   │   ├── gstcurlftpsink.h
│   │   ├── gstcurlhttpsink.c
│   │   ├── gstcurlhttpsink.h
│   │   ├── gstcurlhttpsrc.c
│   │   ├── gstcurlhttpsrc.h
│   │   ├── gstcurlqueue.c
│   │   ├── gstcurlqueue.h
│   │   ├── gstcurlsftpsink.c
│   │   ├── gstcurlsftpsink.h
│   │   ├── gstcurlsmtpsink.c
│   │   ├── gstcurlsmtpsink.h
│   │   ├── gstcurlsshsink.c
│   │   ├── gstcurlsshsink.h
│   │   ├── gstcurltlssink.c
│   │   ├── gstcurltlssink.h
│   │   └── meson.build
│   ├── dash/
│   │   ├── gstdash_debug.h
│   │   ├── gstdashdemux.c
│   │   ├── gstdashdemux.h
│   │   ├── gstdashsink.c
│   │   ├── gstdashsink.h
│   │   ├── gstmpdadaptationsetnode.c
│   │   ├── gstmpdadaptationsetnode.h
│   │   ├── gstmpdbaseurlnode.c
│   │   ├── gstmpdbaseurlnode.h
│   │   ├── gstmpdclient.c
│   │   ├── gstmpdclient.h
│   │   ├── gstmpdcontentcomponentnode.c
│   │   ├── gstmpdcontentcomponentnode.h
│   │   ├── gstmpddescriptortypenode.c
│   │   ├── gstmpddescriptortypenode.h
│   │   ├── gstmpdhelper.c
│   │   ├── gstmpdhelper.h
│   │   ├── gstmpdlocationnode.c
│   │   ├── gstmpdlocationnode.h
│   │   ├── gstmpdmetricsnode.c
│   │   ├── gstmpdmetricsnode.h
│   │   ├── gstmpdmetricsrangenode.c
│   │   ├── gstmpdmetricsrangenode.h
│   │   ├── gstmpdmultsegmentbasenode.c
│   │   ├── gstmpdmultsegmentbasenode.h
│   │   ├── gstmpdnode.c
│   │   ├── gstmpdnode.h
│   │   ├── gstmpdparser.c
│   │   ├── gstmpdparser.h
│   │   ├── gstmpdperiodnode.c
│   │   ├── gstmpdperiodnode.h
│   │   ├── gstmpdprograminformationnode.c
│   │   ├── gstmpdprograminformationnode.h
│   │   ├── gstmpdreportingnode.c
│   │   ├── gstmpdreportingnode.h
│   │   ├── gstmpdrepresentationbasenode.c
│   │   ├── gstmpdrepresentationbasenode.h
│   │   ├── gstmpdrepresentationnode.c
│   │   ├── gstmpdrepresentationnode.h
│   │   ├── gstmpdrootnode.c
│   │   ├── gstmpdrootnode.h
│   │   ├── gstmpdsegmentbasenode.c
│   │   ├── gstmpdsegmentbasenode.h
│   │   ├── gstmpdsegmentlistnode.c
│   │   ├── gstmpdsegmentlistnode.h
│   │   ├── gstmpdsegmenttemplatenode.c
│   │   ├── gstmpdsegmenttemplatenode.h
│   │   ├── gstmpdsegmenttimelinenode.c
│   │   ├── gstmpdsegmenttimelinenode.h
│   │   ├── gstmpdsegmenturlnode.c
│   │   ├── gstmpdsegmenturlnode.h
│   │   ├── gstmpdsnode.c
│   │   ├── gstmpdsnode.h
│   │   ├── gstmpdsubrepresentationnode.c
│   │   ├── gstmpdsubrepresentationnode.h
│   │   ├── gstmpdsubsetnode.c
│   │   ├── gstmpdsubsetnode.h
│   │   ├── gstmpdurltypenode.c
│   │   ├── gstmpdurltypenode.h
│   │   ├── gstmpdutctimingnode.c
│   │   ├── gstmpdutctimingnode.h
│   │   ├── gstplugin.c
│   │   ├── gstxmlhelper.c
│   │   ├── gstxmlhelper.h
│   │   └── meson.build
│   ├── dc1394/
│   │   ├── gstdc1394src.c
│   │   ├── gstdc1394src.h
│   │   └── meson.build
│   ├── directfb/
│   │   ├── dfb-example.c
│   │   ├── dfbvideosink.c
│   │   ├── dfbvideosink.h
│   │   └── meson.build
│   ├── dtls/
│   │   ├── README
│   │   ├── gstdtlsagent.c
│   │   ├── gstdtlsagent.h
│   │   ├── gstdtlscertificate.c
│   │   ├── gstdtlscertificate.h
│   │   ├── gstdtlsconnection.c
│   │   ├── gstdtlsconnection.h
│   │   ├── gstdtlsdec.c
│   │   ├── gstdtlsdec.h
│   │   ├── gstdtlselement.c
│   │   ├── gstdtlselements.h
│   │   ├── gstdtlsenc.c
│   │   ├── gstdtlsenc.h
│   │   ├── gstdtlssrtpbin.c
│   │   ├── gstdtlssrtpbin.h
│   │   ├── gstdtlssrtpdec.c
│   │   ├── gstdtlssrtpdec.h
│   │   ├── gstdtlssrtpdemux.c
│   │   ├── gstdtlssrtpdemux.h
│   │   ├── gstdtlssrtpenc.c
│   │   ├── gstdtlssrtpenc.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── dts/
│   │   ├── gstdtsdec.c
│   │   ├── gstdtsdec.h
│   │   └── meson.build
│   ├── faac/
│   │   ├── gstfaac.c
│   │   ├── gstfaac.h
│   │   └── meson.build
│   ├── faad/
│   │   ├── gstfaad.c
│   │   ├── gstfaad.h
│   │   └── meson.build
│   ├── fdkaac/
│   │   ├── gstfdkaac.c
│   │   ├── gstfdkaac.h
│   │   ├── gstfdkaacdec.c
│   │   ├── gstfdkaacdec.h
│   │   ├── gstfdkaacenc.c
│   │   ├── gstfdkaacenc.h
│   │   ├── gstfdkaacplugin.c
│   │   └── meson.build
│   ├── flite/
│   │   ├── gstflite.c
│   │   ├── gstflitetestsrc.c
│   │   └── meson.build
│   ├── fluidsynth/
│   │   ├── gstfluiddec.c
│   │   ├── gstfluiddec.h
│   │   └── meson.build
│   ├── gme/
│   │   ├── gstgme.c
│   │   ├── gstgme.h
│   │   └── meson.build
│   ├── gs/
│   │   ├── .clang-format
│   │   ├── README.md
│   │   ├── gstgs.cpp
│   │   ├── gstgscommon.cpp
│   │   ├── gstgscommon.h
│   │   ├── gstgssink.cpp
│   │   ├── gstgssink.h
│   │   ├── gstgssrc.cpp
│   │   ├── gstgssrc.h
│   │   └── meson.build
│   ├── gsm/
│   │   ├── gstgsm.c
│   │   ├── gstgsmdec.c
│   │   ├── gstgsmdec.h
│   │   ├── gstgsmenc.c
│   │   ├── gstgsmenc.h
│   │   └── meson.build
│   ├── hls/
│   │   ├── gsthlsdemux-util.c
│   │   ├── gsthlsdemux.c
│   │   ├── gsthlsdemux.h
│   │   ├── gsthlselement.c
│   │   ├── gsthlselements.h
│   │   ├── gsthlsplugin.c
│   │   ├── gsthlssink.c
│   │   ├── gsthlssink.h
│   │   ├── gsthlssink2.c
│   │   ├── gsthlssink2.h
│   │   ├── gstm3u8playlist.c
│   │   ├── gstm3u8playlist.h
│   │   ├── m3u8.c
│   │   ├── m3u8.h
│   │   └── meson.build
│   ├── iqa/
│   │   ├── iqa.c
│   │   ├── iqa.h
│   │   └── meson.build
│   ├── isac/
│   │   ├── gstisac.c
│   │   ├── gstisacdec.c
│   │   ├── gstisacdec.h
│   │   ├── gstisacenc.c
│   │   ├── gstisacenc.h
│   │   ├── gstisacutils.c
│   │   ├── gstisacutils.h
│   │   └── meson.build
│   ├── kate/
│   │   ├── README
│   │   ├── gstkate.c
│   │   ├── gstkatedec.c
│   │   ├── gstkatedec.h
│   │   ├── gstkateelement.c
│   │   ├── gstkateelements.h
│   │   ├── gstkateenc.c
│   │   ├── gstkateenc.h
│   │   ├── gstkateparse.c
│   │   ├── gstkateparse.h
│   │   ├── gstkatespu.c
│   │   ├── gstkatespu.h
│   │   ├── gstkatetag.c
│   │   ├── gstkatetag.h
│   │   ├── gstkatetiger.c
│   │   ├── gstkatetiger.h
│   │   ├── gstkateutil.c
│   │   ├── gstkateutil.h
│   │   └── meson.build
│   ├── ladspa/
│   │   ├── gstladspa.c
│   │   ├── gstladspa.h
│   │   ├── gstladspafilter.c
│   │   ├── gstladspafilter.h
│   │   ├── gstladspasink.c
│   │   ├── gstladspasink.h
│   │   ├── gstladspasource.c
│   │   ├── gstladspasource.h
│   │   ├── gstladspautils.c
│   │   ├── gstladspautils.h
│   │   └── meson.build
│   ├── ldac/
│   │   ├── gstldacenc.c
│   │   ├── gstldacenc.h
│   │   ├── ldac-plugin.c
│   │   └── meson.build
│   ├── libde265/
│   │   ├── gstlibde265.c
│   │   ├── libde265-dec.c
│   │   ├── libde265-dec.h
│   │   └── meson.build
│   ├── libmms/
│   │   ├── gstmms.c
│   │   ├── gstmms.h
│   │   └── meson.build
│   ├── lv2/
│   │   ├── README
│   │   ├── calf-lv2-port-groups.patch
│   │   ├── gstlv2.c
│   │   ├── gstlv2.h
│   │   ├── gstlv2filter.c
│   │   ├── gstlv2source.c
│   │   ├── gstlv2utils.c
│   │   ├── gstlv2utils.h
│   │   ├── meson.build
│   │   └── swh-lv2-port-groups.patch
│   ├── mdns/
│   │   ├── gstmicrodns.c
│   │   ├── gstmicrodnsdevice.c
│   │   ├── gstmicrodnsdevice.h
│   │   └── meson.build
│   ├── meson.build
│   ├── modplug/
│   │   ├── gstmodplug.cc
│   │   ├── gstmodplug.h
│   │   └── meson.build
│   ├── mpeg2enc/
│   │   ├── gstmpeg2enc.cc
│   │   ├── gstmpeg2enc.hh
│   │   ├── gstmpeg2encoder.cc
│   │   ├── gstmpeg2encoder.hh
│   │   ├── gstmpeg2encoptions.cc
│   │   ├── gstmpeg2encoptions.hh
│   │   ├── gstmpeg2encpicturereader.cc
│   │   ├── gstmpeg2encpicturereader.hh
│   │   ├── gstmpeg2encstreamwriter.cc
│   │   ├── gstmpeg2encstreamwriter.hh
│   │   └── meson.build
│   ├── mplex/
│   │   ├── gstmplex.cc
│   │   ├── gstmplex.hh
│   │   ├── gstmplexibitstream.cc
│   │   ├── gstmplexibitstream.hh
│   │   ├── gstmplexjob.cc
│   │   ├── gstmplexjob.hh
│   │   ├── gstmplexoutputstream.cc
│   │   ├── gstmplexoutputstream.hh
│   │   └── meson.build
│   ├── musepack/
│   │   ├── gstmusepackdec.c
│   │   ├── gstmusepackdec.h
│   │   ├── gstmusepackreader.c
│   │   ├── gstmusepackreader.h
│   │   └── meson.build
│   ├── neon/
│   │   ├── gstneonhttpsrc.c
│   │   ├── gstneonhttpsrc.h
│   │   └── meson.build
│   ├── ofa/
│   │   ├── gstofa.c
│   │   ├── gstofa.h
│   │   └── meson.build
│   ├── onnx/
│   │   ├── gstonnx.c
│   │   ├── gstonnxclient.cpp
│   │   ├── gstonnxclient.h
│   │   ├── gstonnxelement.c
│   │   ├── gstonnxelement.h
│   │   ├── gstonnxobjectdetector.cpp
│   │   ├── gstonnxobjectdetector.h
│   │   └── meson.build
│   ├── openal/
│   │   ├── gstopenal.c
│   │   ├── gstopenalelement.c
│   │   ├── gstopenalelements.h
│   │   ├── gstopenalsink.c
│   │   ├── gstopenalsink.h
│   │   ├── gstopenalsrc.c
│   │   ├── gstopenalsrc.h
│   │   └── meson.build
│   ├── openaptx/
│   │   ├── gstopenaptxdec.c
│   │   ├── gstopenaptxdec.h
│   │   ├── gstopenaptxenc.c
│   │   ├── gstopenaptxenc.h
│   │   ├── meson.build
│   │   ├── openaptx-plugin.c
│   │   └── openaptx-plugin.h
│   ├── opencv/
│   │   ├── MotionCells.cpp
│   │   ├── MotionCells.h
│   │   ├── cameraevent.cpp
│   │   ├── cameraevent.hpp
│   │   ├── camerautils.cpp
│   │   ├── camerautils.hpp
│   │   ├── fist.xml
│   │   ├── gstcameracalibrate.cpp
│   │   ├── gstcameracalibrate.h
│   │   ├── gstcameraundistort.cpp
│   │   ├── gstcameraundistort.h
│   │   ├── gstcvdilate.cpp
│   │   ├── gstcvdilate.h
│   │   ├── gstcvdilateerode.cpp
│   │   ├── gstcvdilateerode.h
│   │   ├── gstcvequalizehist.cpp
│   │   ├── gstcvequalizehist.h
│   │   ├── gstcverode.cpp
│   │   ├── gstcverode.h
│   │   ├── gstcvlaplace.cpp
│   │   ├── gstcvlaplace.h
│   │   ├── gstcvsmooth.cpp
│   │   ├── gstcvsmooth.h
│   │   ├── gstcvsobel.cpp
│   │   ├── gstcvsobel.h
│   │   ├── gstcvtracker.cpp
│   │   ├── gstcvtracker.h
│   │   ├── gstdewarp.cpp
│   │   ├── gstdewarp.h
│   │   ├── gstdisparity.cpp
│   │   ├── gstdisparity.h
│   │   ├── gstedgedetect.cpp
│   │   ├── gstedgedetect.h
│   │   ├── gstfaceblur.cpp
│   │   ├── gstfaceblur.h
│   │   ├── gstfacedetect.cpp
│   │   ├── gstfacedetect.h
│   │   ├── gstgrabcut.cpp
│   │   ├── gstgrabcut.h
│   │   ├── gsthanddetect.cpp
│   │   ├── gsthanddetect.h
│   │   ├── gstmotioncells.cpp
│   │   ├── gstmotioncells.h
│   │   ├── gstopencv.cpp
│   │   ├── gstretinex.cpp
│   │   ├── gstretinex.h
│   │   ├── gstsegmentation.cpp
│   │   ├── gstsegmentation.h
│   │   ├── gstskindetect.cpp
│   │   ├── gstskindetect.h
│   │   ├── gsttemplatematch.cpp
│   │   ├── gsttemplatematch.h
│   │   ├── gsttextoverlay.cpp
│   │   ├── gsttextoverlay.h
│   │   ├── meson.build
│   │   ├── motioncells_wrapper.cpp
│   │   ├── motioncells_wrapper.h
│   │   └── palm.xml
│   ├── openexr/
│   │   ├── gstopenexr.c
│   │   ├── gstopenexr.h
│   │   ├── gstopenexrdec.cpp
│   │   ├── gstopenexrdec.h
│   │   └── meson.build
│   ├── openh264/
│   │   ├── gstopenh264dec.cpp
│   │   ├── gstopenh264dec.h
│   │   ├── gstopenh264element.c
│   │   ├── gstopenh264elements.h
│   │   ├── gstopenh264enc.cpp
│   │   ├── gstopenh264enc.h
│   │   ├── gstopenh264plugin.c
│   │   └── meson.build
│   ├── openjpeg/
│   │   ├── gstopenjpeg.c
│   │   ├── gstopenjpeg.h
│   │   ├── gstopenjpegdec.c
│   │   ├── gstopenjpegdec.h
│   │   ├── gstopenjpegenc.c
│   │   ├── gstopenjpegenc.h
│   │   └── meson.build
│   ├── openmpt/
│   │   ├── gstopenmptdec.c
│   │   ├── gstopenmptdec.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── openni2/
│   │   ├── gstopenni2.cpp
│   │   ├── gstopenni2src.cpp
│   │   ├── gstopenni2src.h
│   │   └── meson.build
│   ├── opus/
│   │   ├── gstopus.c
│   │   ├── gstopusheader.c
│   │   ├── gstopusheader.h
│   │   ├── gstopusparse.c
│   │   ├── gstopusparse.h
│   │   └── meson.build
│   ├── qroverlay/
│   │   ├── gstbaseqroverlay.c
│   │   ├── gstbaseqroverlay.h
│   │   ├── gstdebugqroverlay.c
│   │   ├── gstdebugqroverlay.h
│   │   ├── gstqroverlay.c
│   │   ├── gstqroverlay.h
│   │   ├── gstqroverlayelement.c
│   │   ├── gstqroverlayelements.h
│   │   ├── gstqroverlayplugin.c
│   │   └── meson.build
│   ├── resindvd/
│   │   ├── gstmpegdefs.h
│   │   ├── gstmpegdemux.c
│   │   ├── gstmpegdemux.h
│   │   ├── gstmpegdesc.c
│   │   ├── gstmpegdesc.h
│   │   ├── gstpesfilter.c
│   │   ├── gstpesfilter.h
│   │   ├── meson.build
│   │   ├── plugin.c
│   │   ├── resin-play
│   │   ├── resin-play2
│   │   ├── resindvdbin.c
│   │   ├── resindvdbin.h
│   │   ├── resindvdsrc.c
│   │   ├── resindvdsrc.h
│   │   ├── rsndec.c
│   │   ├── rsndec.h
│   │   ├── rsninputselector.c
│   │   ├── rsninputselector.h
│   │   ├── rsnparsetter.c
│   │   └── rsnparsetter.h
│   ├── rsvg/
│   │   ├── gstrsvg.c
│   │   ├── gstrsvgdec.c
│   │   ├── gstrsvgdec.h
│   │   ├── gstrsvgoverlay.c
│   │   ├── gstrsvgoverlay.h
│   │   └── meson.build
│   ├── rtmp/
│   │   ├── README
│   │   ├── gstrtmp.c
│   │   ├── gstrtmpelement.c
│   │   ├── gstrtmpelements.h
│   │   ├── gstrtmpsink.c
│   │   ├── gstrtmpsink.h
│   │   ├── gstrtmpsrc.c
│   │   ├── gstrtmpsrc.h
│   │   └── meson.build
│   ├── sbc/
│   │   ├── gstsbcdec.c
│   │   ├── gstsbcdec.h
│   │   ├── gstsbcenc.c
│   │   ├── gstsbcenc.h
│   │   ├── meson.build
│   │   └── sbc-plugin.c
│   ├── sctp/
│   │   ├── gstsctpdec.c
│   │   ├── gstsctpdec.h
│   │   ├── gstsctpenc.c
│   │   ├── gstsctpenc.h
│   │   ├── gstsctpplugin.c
│   │   ├── meson.build
│   │   ├── sctpassociation.c
│   │   ├── sctpassociation.h
│   │   └── usrsctp/
│   │       ├── .gitignore
│   │       ├── LICENSE.md
│   │       ├── meson.build
│   │       ├── meson_options.txt
│   │       └── usrsctplib/
│   │           ├── Makefile.am
│   │           ├── meson.build
│   │           ├── netinet/
│   │           │   ├── meson.build
│   │           │   ├── sctp.h
│   │           │   ├── sctp_asconf.c
│   │           │   ├── sctp_asconf.h
│   │           │   ├── sctp_auth.c
│   │           │   ├── sctp_auth.h
│   │           │   ├── sctp_bsd_addr.c
│   │           │   ├── sctp_bsd_addr.h
│   │           │   ├── sctp_callout.c
│   │           │   ├── sctp_callout.h
│   │           │   ├── sctp_cc_functions.c
│   │           │   ├── sctp_constants.h
│   │           │   ├── sctp_crc32.c
│   │           │   ├── sctp_crc32.h
│   │           │   ├── sctp_header.h
│   │           │   ├── sctp_indata.c
│   │           │   ├── sctp_indata.h
│   │           │   ├── sctp_input.c
│   │           │   ├── sctp_input.h
│   │           │   ├── sctp_lock_userspace.h
│   │           │   ├── sctp_os.h
│   │           │   ├── sctp_os_userspace.h
│   │           │   ├── sctp_output.c
│   │           │   ├── sctp_output.h
│   │           │   ├── sctp_pcb.c
│   │           │   ├── sctp_pcb.h
│   │           │   ├── sctp_peeloff.c
│   │           │   ├── sctp_peeloff.h
│   │           │   ├── sctp_process_lock.h
│   │           │   ├── sctp_sha1.c
│   │           │   ├── sctp_sha1.h
│   │           │   ├── sctp_ss_functions.c
│   │           │   ├── sctp_structs.h
│   │           │   ├── sctp_sysctl.c
│   │           │   ├── sctp_sysctl.h
│   │           │   ├── sctp_timer.c
│   │           │   ├── sctp_timer.h
│   │           │   ├── sctp_uio.h
│   │           │   ├── sctp_userspace.c
│   │           │   ├── sctp_usrreq.c
│   │           │   ├── sctp_var.h
│   │           │   ├── sctputil.c
│   │           │   └── sctputil.h
│   │           ├── netinet6/
│   │           │   ├── meson.build
│   │           │   ├── sctp6_usrreq.c
│   │           │   └── sctp6_var.h
│   │           ├── user_atomic.h
│   │           ├── user_environment.c
│   │           ├── user_environment.h
│   │           ├── user_inpcb.h
│   │           ├── user_ip6_var.h
│   │           ├── user_ip_icmp.h
│   │           ├── user_malloc.h
│   │           ├── user_mbuf.c
│   │           ├── user_mbuf.h
│   │           ├── user_queue.h
│   │           ├── user_recv_thread.c
│   │           ├── user_recv_thread.h
│   │           ├── user_route.h
│   │           ├── user_socket.c
│   │           ├── user_socketvar.h
│   │           ├── user_uma.h
│   │           └── usrsctp.h
│   ├── smoothstreaming/
│   │   ├── gstmssdemux.c
│   │   ├── gstmssdemux.h
│   │   ├── gstmssfragmentparser.c
│   │   ├── gstmssfragmentparser.h
│   │   ├── gstmssmanifest.c
│   │   ├── gstmssmanifest.h
│   │   ├── gstsmoothstreaming-plugin.c
│   │   └── meson.build
│   ├── sndfile/
│   │   ├── gstsf.c
│   │   ├── gstsfdec.c
│   │   ├── gstsfdec.h
│   │   ├── gstsfelement.c
│   │   ├── gstsfelements.h
│   │   ├── gstsfsink.c
│   │   ├── gstsfsink.h
│   │   ├── gstsfsrc.c
│   │   ├── gstsfsrc.h
│   │   └── meson.build
│   ├── soundtouch/
│   │   ├── gstbpmdetect.cc
│   │   ├── gstbpmdetect.hh
│   │   ├── gstpitch.cc
│   │   ├── gstpitch.hh
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── spandsp/
│   │   ├── gstdtmfdetect.c
│   │   ├── gstdtmfdetect.h
│   │   ├── gstspandsp.c
│   │   ├── gstspanplc.c
│   │   ├── gstspanplc.h
│   │   ├── gsttonegeneratesrc.c
│   │   ├── gsttonegeneratesrc.h
│   │   └── meson.build
│   ├── srt/
│   │   ├── gstsrt-enums.h
│   │   ├── gstsrt.c
│   │   ├── gstsrtelement.c
│   │   ├── gstsrtelements.h
│   │   ├── gstsrtobject.c
│   │   ├── gstsrtobject.h
│   │   ├── gstsrtplugin.c
│   │   ├── gstsrtsink.c
│   │   ├── gstsrtsink.h
│   │   ├── gstsrtsrc.c
│   │   ├── gstsrtsrc.h
│   │   └── meson.build
│   ├── srtp/
│   │   ├── gstsrtp.c
│   │   ├── gstsrtp.h
│   │   ├── gstsrtpdec.c
│   │   ├── gstsrtpdec.h
│   │   ├── gstsrtpelement.c
│   │   ├── gstsrtpelements.h
│   │   ├── gstsrtpenc.c
│   │   ├── gstsrtpenc.h
│   │   ├── gstsrtpenums.h
│   │   ├── gstsrtpplugin.c
│   │   └── meson.build
│   ├── svthevcenc/
│   │   ├── gstsvthevcenc.c
│   │   ├── gstsvthevcenc.h
│   │   └── meson.build
│   ├── teletextdec/
│   │   ├── gstteletextdec.c
│   │   ├── gstteletextdec.h
│   │   └── meson.build
│   ├── ttml/
│   │   ├── gstttmlelement.c
│   │   ├── gstttmlelements.h
│   │   ├── gstttmlparse.c
│   │   ├── gstttmlparse.h
│   │   ├── gstttmlplugin.c
│   │   ├── gstttmlrender.c
│   │   ├── gstttmlrender.h
│   │   ├── meson.build
│   │   ├── subtitle.c
│   │   ├── subtitle.h
│   │   ├── subtitlemeta.c
│   │   ├── subtitlemeta.h
│   │   ├── ttmlparse.c
│   │   └── ttmlparse.h
│   ├── voaacenc/
│   │   ├── gstvoaac.c
│   │   ├── gstvoaacenc.c
│   │   ├── gstvoaacenc.h
│   │   └── meson.build
│   ├── voamrwbenc/
│   │   ├── GstVoAmrwbEnc.prs
│   │   ├── gstvoamrwb.c
│   │   ├── gstvoamrwbenc.c
│   │   ├── gstvoamrwbenc.h
│   │   └── meson.build
│   ├── vulkan/
│   │   ├── gstvulkan.c
│   │   ├── gstvulkanelement.c
│   │   ├── gstvulkanelements.h
│   │   ├── meson.build
│   │   ├── shaders/
│   │   │   ├── ayuv_to_rgb.frag
│   │   │   ├── bin2array.py
│   │   │   ├── color_convert_generic.glsl
│   │   │   ├── identity.frag
│   │   │   ├── identity.vert
│   │   │   ├── meson.build
│   │   │   ├── nv12_to_rgb.frag
│   │   │   ├── rgb_to_ayuv.frag
│   │   │   ├── rgb_to_nv12.frag
│   │   │   ├── rgb_to_yuy2.frag
│   │   │   ├── swizzle.frag
│   │   │   ├── swizzle.glsl
│   │   │   ├── swizzle_and_clobber_alpha.frag
│   │   │   ├── upsample_ayuv.glsl
│   │   │   ├── upsample_nv12.glsl
│   │   │   ├── upsample_yuy2.glsl
│   │   │   ├── view_convert.frag
│   │   │   ├── view_defines.h
│   │   │   └── yuy2_to_rgb.frag
│   │   ├── vkcolorconvert.c
│   │   ├── vkcolorconvert.h
│   │   ├── vkdeviceprovider.c
│   │   ├── vkdeviceprovider.h
│   │   ├── vkdownload.c
│   │   ├── vkdownload.h
│   │   ├── vkimageidentity.c
│   │   ├── vkimageidentity.h
│   │   ├── vksink.c
│   │   ├── vksink.h
│   │   ├── vkupload.c
│   │   ├── vkupload.h
│   │   ├── vkviewconvert.c
│   │   └── vkviewconvert.h
│   ├── wayland/
│   │   ├── gstwaylandsink.c
│   │   ├── gstwaylandsink.h
│   │   ├── meson.build
│   │   ├── wlbuffer.c
│   │   ├── wlbuffer.h
│   │   ├── wldisplay.c
│   │   ├── wldisplay.h
│   │   ├── wllinuxdmabuf.c
│   │   ├── wllinuxdmabuf.h
│   │   ├── wlshmallocator.c
│   │   ├── wlshmallocator.h
│   │   ├── wlvideoformat.c
│   │   ├── wlvideoformat.h
│   │   ├── wlwindow.c
│   │   └── wlwindow.h
│   ├── webp/
│   │   ├── gstwebp.c
│   │   ├── gstwebpdec.c
│   │   ├── gstwebpdec.h
│   │   ├── gstwebpenc.c
│   │   ├── gstwebpenc.h
│   │   └── meson.build
│   ├── webrtc/
│   │   ├── fwd.h
│   │   ├── gstwebrtc.c
│   │   ├── gstwebrtcbin.c
│   │   ├── gstwebrtcbin.h
│   │   ├── gstwebrtcice.c
│   │   ├── gstwebrtcice.h
│   │   ├── gstwebrtcstats.c
│   │   ├── gstwebrtcstats.h
│   │   ├── icestream.c
│   │   ├── icestream.h
│   │   ├── meson.build
│   │   ├── nicetransport.c
│   │   ├── nicetransport.h
│   │   ├── transportreceivebin.c
│   │   ├── transportreceivebin.h
│   │   ├── transportsendbin.c
│   │   ├── transportsendbin.h
│   │   ├── transportstream.c
│   │   ├── transportstream.h
│   │   ├── utils.c
│   │   ├── utils.h
│   │   ├── webrtcdatachannel.c
│   │   ├── webrtcdatachannel.h
│   │   ├── webrtcsctptransport.c
│   │   ├── webrtcsctptransport.h
│   │   ├── webrtcsdp.c
│   │   ├── webrtcsdp.h
│   │   ├── webrtctransceiver.c
│   │   └── webrtctransceiver.h
│   ├── webrtcdsp/
│   │   ├── gstwebrtcdsp.cpp
│   │   ├── gstwebrtcdsp.h
│   │   ├── gstwebrtcdspplugin.cpp
│   │   ├── gstwebrtcechoprobe.cpp
│   │   ├── gstwebrtcechoprobe.h
│   │   └── meson.build
│   ├── wildmidi/
│   │   ├── README
│   │   ├── gstwildmididec.c
│   │   ├── gstwildmididec.h
│   │   └── meson.build
│   ├── wpe/
│   │   ├── WPEThreadedView.cpp
│   │   ├── WPEThreadedView.h
│   │   ├── gstwpe.cpp
│   │   ├── gstwpe.h
│   │   ├── gstwpesrcbin.cpp
│   │   ├── gstwpesrcbin.h
│   │   ├── gstwpevideosrc.cpp
│   │   ├── gstwpevideosrc.h
│   │   ├── meson.build
│   │   └── wpe-extension/
│   │       ├── gstwpeaudiosink.c
│   │       ├── gstwpebusmsgforwarder.c
│   │       ├── gstwpeextension.c
│   │       ├── gstwpeextension.h
│   │       └── meson.build
│   ├── x265/
│   │   ├── gstx265enc.c
│   │   ├── gstx265enc.h
│   │   └── meson.build
│   ├── zbar/
│   │   ├── gstzbar.c
│   │   ├── gstzbar.h
│   │   └── meson.build
│   └── zxing/
│       ├── gstzxing.cpp
│       ├── gstzxing.h
│       ├── gstzxingplugin.c
│       └── meson.build
├── gst/
│   ├── accurip/
│   │   ├── gstaccurip.c
│   │   ├── gstaccurip.h
│   │   └── meson.build
│   ├── adpcmdec/
│   │   ├── adpcmdec.c
│   │   └── meson.build
│   ├── adpcmenc/
│   │   ├── adpcmenc.c
│   │   └── meson.build
│   ├── aiff/
│   │   ├── aiff.c
│   │   ├── aiffelements.h
│   │   ├── aiffmux.c
│   │   ├── aiffmux.h
│   │   ├── aiffparse.c
│   │   ├── aiffparse.h
│   │   ├── gstaiffelement.c
│   │   └── meson.build
│   ├── asfmux/
│   │   ├── gstasf.c
│   │   ├── gstasfmux.c
│   │   ├── gstasfmux.h
│   │   ├── gstasfobjects.c
│   │   ├── gstasfobjects.h
│   │   ├── gstasfparse.c
│   │   ├── gstasfparse.h
│   │   ├── gstrtpasfpay.c
│   │   ├── gstrtpasfpay.h
│   │   └── meson.build
│   ├── audiobuffersplit/
│   │   ├── gstaudiobuffersplit.c
│   │   ├── gstaudiobuffersplit.h
│   │   └── meson.build
│   ├── audiofxbad/
│   │   ├── gstaudiochannelmix.c
│   │   ├── gstaudiochannelmix.h
│   │   ├── gstaudiofxbad.c
│   │   └── meson.build
│   ├── audiolatency/
│   │   ├── gstaudiolatency.c
│   │   ├── gstaudiolatency.h
│   │   └── meson.build
│   ├── audiomixmatrix/
│   │   ├── gstaudiomixmatrix.c
│   │   ├── gstaudiomixmatrix.h
│   │   └── meson.build
│   ├── audiovisualizers/
│   │   ├── README
│   │   ├── gstdrawhelpers.h
│   │   ├── gstspacescope.c
│   │   ├── gstspacescope.h
│   │   ├── gstspectrascope.c
│   │   ├── gstspectrascope.h
│   │   ├── gstsynaescope.c
│   │   ├── gstsynaescope.h
│   │   ├── gstwavescope.c
│   │   ├── gstwavescope.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── autoconvert/
│   │   ├── gstautoconvert.c
│   │   ├── gstautoconvert.h
│   │   ├── gstautovideoconvert.c
│   │   ├── gstautovideoconvert.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── bayer/
│   │   ├── gstbayer.c
│   │   ├── gstbayer2rgb.c
│   │   ├── gstbayerelements.h
│   │   ├── gstbayerorc-dist.c
│   │   ├── gstbayerorc-dist.h
│   │   ├── gstbayerorc.orc
│   │   ├── gstrgb2bayer.c
│   │   ├── gstrgb2bayer.h
│   │   └── meson.build
│   ├── camerabin2/
│   │   ├── PORTING
│   │   ├── camerabin2-src.txt
│   │   ├── camerabingeneral.c
│   │   ├── camerabingeneral.h
│   │   ├── gstcamerabin2.c
│   │   ├── gstcamerabin2.h
│   │   ├── gstdigitalzoom.c
│   │   ├── gstdigitalzoom.h
│   │   ├── gstplugin.c
│   │   ├── gstviewfinderbin.c
│   │   ├── gstviewfinderbin.h
│   │   ├── gstwrappercamerabinsrc.c
│   │   ├── gstwrappercamerabinsrc.h
│   │   └── meson.build
│   ├── codecalpha/
│   │   ├── gstalphacombine.c
│   │   ├── gstalphacombine.h
│   │   ├── gstalphadecodebin.c
│   │   ├── gstalphadecodebin.h
│   │   ├── gstcodecalphademux.c
│   │   ├── gstcodecalphademux.h
│   │   ├── gstplugin.c
│   │   ├── gstvp8alphadecodebin.c
│   │   ├── gstvp8alphadecodebin.h
│   │   ├── gstvp9alphadecodebin.c
│   │   ├── gstvp9alphadecodebin.h
│   │   └── meson.build
│   ├── coloreffects/
│   │   ├── gstchromahold.c
│   │   ├── gstchromahold.h
│   │   ├── gstcoloreffects.c
│   │   ├── gstcoloreffects.h
│   │   ├── gstplugin.c
│   │   └── meson.build
│   ├── debugutils/
│   │   ├── debugutilsbad.c
│   │   ├── fpsdisplaysink.c
│   │   ├── fpsdisplaysink.h
│   │   ├── gstchecksumsink.c
│   │   ├── gstchecksumsink.h
│   │   ├── gstchopmydata.c
│   │   ├── gstchopmydata.h
│   │   ├── gstclockselect.c
│   │   ├── gstclockselect.h
│   │   ├── gstcompare.c
│   │   ├── gstcompare.h
│   │   ├── gstdebugspy.c
│   │   ├── gstdebugspy.h
│   │   ├── gstdebugutilsbadelements.h
│   │   ├── gsterrorignore.c
│   │   ├── gsterrorignore.h
│   │   ├── gstfakeaudiosink.c
│   │   ├── gstfakeaudiosink.h
│   │   ├── gstfakesinkutils.c
│   │   ├── gstfakesinkutils.h
│   │   ├── gstfakevideosink.c
│   │   ├── gstfakevideosink.h
│   │   ├── gsttestsrcbin.c
│   │   ├── gstvideocodectestsink.c
│   │   ├── gstvideocodectestsink.h
│   │   ├── gstwatchdog.c
│   │   ├── gstwatchdog.h
│   │   └── meson.build
│   ├── dvbsubenc/
│   │   ├── gstdvbsubenc-util.c
│   │   ├── gstdvbsubenc.c
│   │   ├── gstdvbsubenc.h
│   │   ├── libimagequant/
│   │   │   ├── CHANGELOG
│   │   │   ├── COPYRIGHT
│   │   │   ├── README.md
│   │   │   ├── blur.c
│   │   │   ├── blur.h
│   │   │   ├── libimagequant.c
│   │   │   ├── libimagequant.h
│   │   │   ├── mediancut.c
│   │   │   ├── mediancut.h
│   │   │   ├── mempool.c
│   │   │   ├── mempool.h
│   │   │   ├── nearest.c
│   │   │   ├── nearest.h
│   │   │   ├── pam.c
│   │   │   ├── pam.h
│   │   │   ├── viter.c
│   │   │   └── viter.h
│   │   └── meson.build
│   ├── dvbsuboverlay/
│   │   ├── TODO
│   │   ├── dvb-sub.c
│   │   ├── dvb-sub.h
│   │   ├── gstdvbsuboverlay.c
│   │   ├── gstdvbsuboverlay.h
│   │   └── meson.build
│   ├── dvdspu/
│   │   ├── Notes.txt
│   │   ├── gstdvdspu-render.c
│   │   ├── gstdvdspu.c
│   │   ├── gstdvdspu.h
│   │   ├── gstspu-common.h
│   │   ├── gstspu-pgs.c
│   │   ├── gstspu-pgs.h
│   │   ├── gstspu-vobsub-render.c
│   │   ├── gstspu-vobsub.c
│   │   ├── gstspu-vobsub.h
│   │   └── meson.build
│   ├── faceoverlay/
│   │   ├── gstfaceoverlay.c
│   │   ├── gstfaceoverlay.h
│   │   └── meson.build
│   ├── festival/
│   │   ├── gstfestival.c
│   │   ├── gstfestival.h
│   │   └── meson.build
│   ├── fieldanalysis/
│   │   ├── gstfieldanalysis.c
│   │   ├── gstfieldanalysis.h
│   │   ├── gstfieldanalysisorc-dist.c
│   │   ├── gstfieldanalysisorc-dist.h
│   │   ├── gstfieldanalysisorc.orc
│   │   └── meson.build
│   ├── freeverb/
│   │   ├── GstFreeverb.prs
│   │   ├── gstfreeverb.c
│   │   ├── gstfreeverb.h
│   │   └── meson.build
│   ├── frei0r/
│   │   ├── frei0r.h
│   │   ├── gstfrei0r.c
│   │   ├── gstfrei0r.h
│   │   ├── gstfrei0rfilter.c
│   │   ├── gstfrei0rfilter.h
│   │   ├── gstfrei0rmixer.c
│   │   ├── gstfrei0rmixer.h
│   │   ├── gstfrei0rsrc.c
│   │   ├── gstfrei0rsrc.h
│   │   └── meson.build
│   ├── gaudieffects/
│   │   ├── blur-example.py
│   │   ├── burn-example.py
│   │   ├── gstburn.c
│   │   ├── gstburn.h
│   │   ├── gstchromium.c
│   │   ├── gstchromium.h
│   │   ├── gstdilate.c
│   │   ├── gstdilate.h
│   │   ├── gstdodge.c
│   │   ├── gstdodge.h
│   │   ├── gstexclusion.c
│   │   ├── gstexclusion.h
│   │   ├── gstgaudieffectsorc-dist.c
│   │   ├── gstgaudieffectsorc-dist.h
│   │   ├── gstgaudieffectsorc.orc
│   │   ├── gstgaussblur.c
│   │   ├── gstgaussblur.h
│   │   ├── gstplugin.c
│   │   ├── gstsolarize.c
│   │   ├── gstsolarize.h
│   │   └── meson.build
│   ├── gdp/
│   │   ├── README
│   │   ├── dataprotocol.c
│   │   ├── dataprotocol.h
│   │   ├── dp-private.h
│   │   ├── gstgdp.c
│   │   ├── gstgdpdepay.c
│   │   ├── gstgdpdepay.h
│   │   ├── gstgdpelement.c
│   │   ├── gstgdpelements.h
│   │   ├── gstgdppay.c
│   │   ├── gstgdppay.h
│   │   └── meson.build
│   ├── geometrictransform/
│   │   ├── geometricmath.c
│   │   ├── geometricmath.h
│   │   ├── gstbulge.c
│   │   ├── gstbulge.h
│   │   ├── gstcircle.c
│   │   ├── gstcircle.h
│   │   ├── gstcirclegeometrictransform.c
│   │   ├── gstcirclegeometrictransform.h
│   │   ├── gstdiffuse.c
│   │   ├── gstdiffuse.h
│   │   ├── gstfisheye.c
│   │   ├── gstfisheye.h
│   │   ├── gstgeometrictransform.c
│   │   ├── gstgeometrictransform.h
│   │   ├── gstkaleidoscope.c
│   │   ├── gstkaleidoscope.h
│   │   ├── gstmarble.c
│   │   ├── gstmarble.h
│   │   ├── gstmirror.c
│   │   ├── gstmirror.h
│   │   ├── gstperspective.c
│   │   ├── gstperspective.h
│   │   ├── gstpinch.c
│   │   ├── gstpinch.h
│   │   ├── gstrotate.c
│   │   ├── gstrotate.h
│   │   ├── gstsphere.c
│   │   ├── gstsphere.h
│   │   ├── gstsquare.c
│   │   ├── gstsquare.h
│   │   ├── gststretch.c
│   │   ├── gststretch.h
│   │   ├── gsttunnel.c
│   │   ├── gsttunnel.h
│   │   ├── gsttwirl.c
│   │   ├── gsttwirl.h
│   │   ├── gstwaterripple.c
│   │   ├── gstwaterripple.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── id3tag/
│   │   ├── gstid3mux.c
│   │   ├── gstid3mux.h
│   │   ├── id3tag.c
│   │   ├── id3tag.h
│   │   └── meson.build
│   ├── inter/
│   │   ├── gstinter.c
│   │   ├── gstinteraudiosink.c
│   │   ├── gstinteraudiosink.h
│   │   ├── gstinteraudiosrc.c
│   │   ├── gstinteraudiosrc.h
│   │   ├── gstintersubsink.c
│   │   ├── gstintersubsink.h
│   │   ├── gstintersubsrc.c
│   │   ├── gstintersubsrc.h
│   │   ├── gstintersurface.c
│   │   ├── gstintersurface.h
│   │   ├── gstintertest.c
│   │   ├── gstintervideosink.c
│   │   ├── gstintervideosink.h
│   │   ├── gstintervideosrc.c
│   │   ├── gstintervideosrc.h
│   │   └── meson.build
│   ├── interlace/
│   │   ├── gstinterlace.c
│   │   └── meson.build
│   ├── ivfparse/
│   │   ├── gstivfparse.c
│   │   ├── gstivfparse.h
│   │   └── meson.build
│   ├── ivtc/
│   │   ├── gstcombdetect.c
│   │   ├── gstcombdetect.h
│   │   ├── gstivtc.c
│   │   ├── gstivtc.h
│   │   └── meson.build
│   ├── jp2kdecimator/
│   │   ├── gstjp2kdecimator.c
│   │   ├── gstjp2kdecimator.h
│   │   ├── jp2kcodestream.c
│   │   ├── jp2kcodestream.h
│   │   └── meson.build
│   ├── jpegformat/
│   │   ├── gstjifmux.c
│   │   ├── gstjifmux.h
│   │   ├── gstjpegformat.c
│   │   ├── gstjpegformat.h
│   │   ├── gstjpegparse.c
│   │   ├── gstjpegparse.h
│   │   └── meson.build
│   ├── librfb/
│   │   ├── d3des.c
│   │   ├── d3des.h
│   │   ├── gstrfbsrc.c
│   │   ├── gstrfbsrc.h
│   │   ├── meson.build
│   │   ├── rfbdecoder.c
│   │   └── rfbdecoder.h
│   ├── meson.build
│   ├── midi/
│   │   ├── meson.build
│   │   ├── midi.c
│   │   ├── midiparse.c
│   │   └── midiparse.h
│   ├── mpegdemux/
│   │   ├── gstmpegdefs.h
│   │   ├── gstmpegdemux.c
│   │   ├── gstmpegdemux.h
│   │   ├── gstpesfilter.c
│   │   ├── gstpesfilter.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── mpegpsmux/
│   │   ├── bits.h
│   │   ├── crc.h
│   │   ├── meson.build
│   │   ├── mpegpsmux.c
│   │   ├── mpegpsmux.h
│   │   ├── mpegpsmux_aac.c
│   │   ├── mpegpsmux_aac.h
│   │   ├── mpegpsmux_h264.c
│   │   ├── mpegpsmux_h264.h
│   │   ├── psmux.c
│   │   ├── psmux.h
│   │   ├── psmuxcommon.h
│   │   ├── psmuxstream.c
│   │   └── psmuxstream.h
│   ├── mpegtsdemux/
│   │   ├── TODO
│   │   ├── gstmpegdefs.h
│   │   ├── gstmpegdesc.h
│   │   ├── gsttsdemux.c
│   │   ├── meson.build
│   │   ├── mpegtsbase.c
│   │   ├── mpegtsbase.h
│   │   ├── mpegtspacketizer.c
│   │   ├── mpegtspacketizer.h
│   │   ├── mpegtsparse.c
│   │   ├── mpegtsparse.h
│   │   ├── pesparse.c
│   │   ├── pesparse.h
│   │   ├── tsdemux.c
│   │   └── tsdemux.h
│   ├── mpegtsmux/
│   │   ├── gstatscmux.c
│   │   ├── gstatscmux.h
│   │   ├── gstbasetsmux.c
│   │   ├── gstbasetsmux.h
│   │   ├── gstbasetsmuxaac.c
│   │   ├── gstbasetsmuxaac.h
│   │   ├── gstbasetsmuxjpeg2000.c
│   │   ├── gstbasetsmuxjpeg2000.h
│   │   ├── gstbasetsmuxopus.c
│   │   ├── gstbasetsmuxopus.h
│   │   ├── gstbasetsmuxttxt.c
│   │   ├── gstbasetsmuxttxt.h
│   │   ├── gstmpegtsmux.c
│   │   ├── gstmpegtsmux.h
│   │   ├── gstmpegtsmuxplugin.c
│   │   ├── meson.build
│   │   └── tsmux/
│   │       ├── tsmux.c
│   │       ├── tsmux.h
│   │       ├── tsmuxcommon.h
│   │       ├── tsmuxstream.c
│   │       └── tsmuxstream.h
│   ├── mxf/
│   │   ├── gstmxfelement.c
│   │   ├── gstmxfelements.h
│   │   ├── meson.build
│   │   ├── mxf.c
│   │   ├── mxfaes-bwf.c
│   │   ├── mxfaes-bwf.h
│   │   ├── mxfalaw.c
│   │   ├── mxfalaw.h
│   │   ├── mxfd10.c
│   │   ├── mxfd10.h
│   │   ├── mxfdemux.c
│   │   ├── mxfdemux.h
│   │   ├── mxfdms1.c
│   │   ├── mxfdms1.h
│   │   ├── mxfdv-dif.c
│   │   ├── mxfdv-dif.h
│   │   ├── mxfessence.c
│   │   ├── mxfessence.h
│   │   ├── mxfjpeg2000.c
│   │   ├── mxfjpeg2000.h
│   │   ├── mxfmetadata.c
│   │   ├── mxfmetadata.h
│   │   ├── mxfmpeg.c
│   │   ├── mxfmpeg.h
│   │   ├── mxfmux.c
│   │   ├── mxfmux.h
│   │   ├── mxfprores.c
│   │   ├── mxfprores.h
│   │   ├── mxfquark.c
│   │   ├── mxfquark.h
│   │   ├── mxftypes.c
│   │   ├── mxftypes.h
│   │   ├── mxful.c
│   │   ├── mxful.h
│   │   ├── mxfup.c
│   │   ├── mxfup.h
│   │   ├── mxfvanc.c
│   │   ├── mxfvanc.h
│   │   ├── mxfvc3.c
│   │   └── mxfvc3.h
│   ├── netsim/
│   │   ├── gstnetsim.c
│   │   ├── gstnetsim.h
│   │   └── meson.build
│   ├── onvif/
│   │   ├── gstrtponvif.c
│   │   ├── gstrtponvifparse.c
│   │   ├── gstrtponvifparse.h
│   │   ├── gstrtponviftimestamp.c
│   │   ├── gstrtponviftimestamp.h
│   │   └── meson.build
│   ├── pcapparse/
│   │   ├── gstirtspparse.c
│   │   ├── gstirtspparse.h
│   │   ├── gstpcapparse.c
│   │   ├── gstpcapparse.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── pnm/
│   │   ├── gstpnm.c
│   │   ├── gstpnmdec.c
│   │   ├── gstpnmdec.h
│   │   ├── gstpnmenc.c
│   │   ├── gstpnmenc.h
│   │   ├── gstpnmutils.c
│   │   ├── gstpnmutils.h
│   │   └── meson.build
│   ├── proxy/
│   │   ├── gstproxy-priv.h
│   │   ├── gstproxy.c
│   │   ├── gstproxysink.c
│   │   ├── gstproxysink.h
│   │   ├── gstproxysrc.c
│   │   ├── gstproxysrc.h
│   │   └── meson.build
│   ├── rawparse/
│   │   ├── README
│   │   ├── gstaudioparse.c
│   │   ├── gstaudioparse.h
│   │   ├── gstvideoparse.c
│   │   ├── gstvideoparse.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── removesilence/
│   │   ├── gstremovesilence.c
│   │   ├── gstremovesilence.h
│   │   ├── meson.build
│   │   ├── vad_private.c
│   │   └── vad_private.h
│   ├── rist/
│   │   ├── gstrist.c
│   │   ├── gstrist.h
│   │   ├── gstristplugin.c
│   │   ├── gstristrtpdeext.c
│   │   ├── gstristrtpext.c
│   │   ├── gstristrtxreceive.c
│   │   ├── gstristrtxsend.c
│   │   ├── gstristsink.c
│   │   ├── gstristsrc.c
│   │   ├── gstroundrobin.c
│   │   ├── gstroundrobin.h
│   │   └── meson.build
│   ├── rtmp2/
│   │   ├── TODO
│   │   ├── gstrtmp2.c
│   │   ├── gstrtmp2element.c
│   │   ├── gstrtmp2elements.h
│   │   ├── gstrtmp2locationhandler.c
│   │   ├── gstrtmp2locationhandler.h
│   │   ├── gstrtmp2sink.c
│   │   ├── gstrtmp2sink.h
│   │   ├── gstrtmp2src.c
│   │   ├── gstrtmp2src.h
│   │   ├── meson.build
│   │   └── rtmp/
│   │       ├── amf.c
│   │       ├── amf.h
│   │       ├── rtmpchunkstream.c
│   │       ├── rtmpchunkstream.h
│   │       ├── rtmpclient.c
│   │       ├── rtmpclient.h
│   │       ├── rtmpconnection.c
│   │       ├── rtmpconnection.h
│   │       ├── rtmphandshake.c
│   │       ├── rtmphandshake.h
│   │       ├── rtmpmessage.c
│   │       ├── rtmpmessage.h
│   │       ├── rtmputils.c
│   │       └── rtmputils.h
│   ├── rtp/
│   │   ├── gstrtp-utils.c
│   │   ├── gstrtp-utils.h
│   │   ├── gstrtpsink.c
│   │   ├── gstrtpsink.h
│   │   ├── gstrtpsrc.c
│   │   ├── gstrtpsrc.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── sdp/
│   │   ├── gstsdpdemux.c
│   │   ├── gstsdpdemux.h
│   │   ├── gstsdpelem.c
│   │   ├── gstsdpsrc.c
│   │   ├── gstsdpsrc.h
│   │   └── meson.build
│   ├── segmentclip/
│   │   ├── gstaudiosegmentclip.c
│   │   ├── gstaudiosegmentclip.h
│   │   ├── gstsegmentclip.c
│   │   ├── gstsegmentclip.h
│   │   ├── gstvideosegmentclip.c
│   │   ├── gstvideosegmentclip.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── siren/
│   │   ├── common.c
│   │   ├── common.h
│   │   ├── dct4.c
│   │   ├── dct4.h
│   │   ├── decoder.c
│   │   ├── decoder.h
│   │   ├── encoder.c
│   │   ├── encoder.h
│   │   ├── gstsiren.c
│   │   ├── gstsiren.h
│   │   ├── gstsirendec.c
│   │   ├── gstsirendec.h
│   │   ├── gstsirenenc.c
│   │   ├── gstsirenenc.h
│   │   ├── huffman.c
│   │   ├── huffman.h
│   │   ├── huffman_consts.h
│   │   ├── meson.build
│   │   ├── rmlt.c
│   │   ├── rmlt.h
│   │   └── siren7.h
│   ├── smooth/
│   │   ├── gstsmooth.c
│   │   ├── gstsmooth.h
│   │   └── meson.build
│   ├── speed/
│   │   ├── gstspeed.c
│   │   ├── gstspeed.h
│   │   └── meson.build
│   ├── subenc/
│   │   ├── gstsrtenc.c
│   │   ├── gstsrtenc.h
│   │   ├── gstsubenc.c
│   │   ├── gstwebvttenc.c
│   │   ├── gstwebvttenc.h
│   │   └── meson.build
│   ├── switchbin/
│   │   ├── gstswitchbin.c
│   │   ├── gstswitchbin.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── timecode/
│   │   ├── gstavwait.c
│   │   ├── gstavwait.h
│   │   ├── gsttimecodestamper.c
│   │   ├── gsttimecodestamper.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── transcode/
│   │   ├── gst-cpu-throttling-clock.c
│   │   ├── gst-cpu-throttling-clock.h
│   │   ├── gsttranscodebin.c
│   │   ├── gsttranscodeelement.c
│   │   ├── gsttranscodeelements.h
│   │   ├── gsttranscodeplugin.c
│   │   ├── gsttranscoding.h
│   │   ├── gsturitranscodebin.c
│   │   └── meson.build
│   ├── videofilters/
│   │   ├── gstscenechange.c
│   │   ├── gstscenechange.h
│   │   ├── gstscenechangeorc-dist.c
│   │   ├── gstscenechangeorc-dist.h
│   │   ├── gstscenechangeorc.orc
│   │   ├── gstvideodiff.c
│   │   ├── gstvideodiff.h
│   │   ├── gstvideofiltersbad.c
│   │   ├── gstzebrastripe.c
│   │   ├── gstzebrastripe.h
│   │   └── meson.build
│   ├── videoframe_audiolevel/
│   │   ├── gstvideoframe-audiolevel.c
│   │   ├── gstvideoframe-audiolevel.h
│   │   └── meson.build
│   ├── videoparsers/
│   │   ├── dirac_parse.c
│   │   ├── dirac_parse.h
│   │   ├── gstav1parse.c
│   │   ├── gstav1parse.h
│   │   ├── gstdiracparse.c
│   │   ├── gstdiracparse.h
│   │   ├── gsth263parse.c
│   │   ├── gsth263parse.h
│   │   ├── gsth264parse.c
│   │   ├── gsth264parse.h
│   │   ├── gsth265parse.c
│   │   ├── gsth265parse.h
│   │   ├── gstjpeg2000parse.c
│   │   ├── gstjpeg2000parse.h
│   │   ├── gstmpeg4videoparse.c
│   │   ├── gstmpeg4videoparse.h
│   │   ├── gstmpegvideoparse.c
│   │   ├── gstmpegvideoparse.h
│   │   ├── gstpngparse.c
│   │   ├── gstpngparse.h
│   │   ├── gstvc1parse.c
│   │   ├── gstvc1parse.h
│   │   ├── gstvideoparserselement.c
│   │   ├── gstvideoparserselements.h
│   │   ├── gstvideoparseutils.c
│   │   ├── gstvideoparseutils.h
│   │   ├── gstvp9parse.c
│   │   ├── gstvp9parse.h
│   │   ├── h263parse.c
│   │   ├── h263parse.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── videosignal/
│   │   ├── gstsimplevideomark.c
│   │   ├── gstsimplevideomark.h
│   │   ├── gstsimplevideomarkdetect.c
│   │   ├── gstsimplevideomarkdetect.h
│   │   ├── gstvideoanalyse.c
│   │   ├── gstvideoanalyse.h
│   │   ├── gstvideosignal.c
│   │   ├── gstvideosignal.h
│   │   └── meson.build
│   ├── vmnc/
│   │   ├── meson.build
│   │   ├── vmncdec.c
│   │   └── vmncdec.h
│   └── y4m/
│       ├── gsty4mdec.c
│       ├── gsty4mdec.h
│       └── meson.build
├── gst-libs/
│   ├── gst/
│   │   ├── adaptivedemux/
│   │   │   ├── adaptive-demux-prelude.h
│   │   │   ├── gstadaptivedemux.c
│   │   │   ├── gstadaptivedemux.h
│   │   │   └── meson.build
│   │   ├── audio/
│   │   │   ├── audio-bad-prelude.h
│   │   │   ├── gstnonstreamaudiodecoder.c
│   │   │   ├── gstnonstreamaudiodecoder.h
│   │   │   ├── gstplanaraudioadapter.c
│   │   │   ├── gstplanaraudioadapter.h
│   │   │   └── meson.build
│   │   ├── basecamerabinsrc/
│   │   │   ├── basecamerabinsrc-prelude.h
│   │   │   ├── gstbasecamerasrc.c
│   │   │   ├── gstbasecamerasrc.h
│   │   │   ├── gstcamerabin-enum.c
│   │   │   ├── gstcamerabin-enum.h
│   │   │   ├── gstcamerabinpreview.c
│   │   │   ├── gstcamerabinpreview.h
│   │   │   └── meson.build
│   │   ├── codecparsers/
│   │   │   ├── codecparsers-prelude.h
│   │   │   ├── dboolhuff.AUTHORS
│   │   │   ├── dboolhuff.LICENSE
│   │   │   ├── dboolhuff.PATENTS
│   │   │   ├── dboolhuff.c
│   │   │   ├── dboolhuff.h
│   │   │   ├── gstav1parser.c
│   │   │   ├── gstav1parser.h
│   │   │   ├── gsth264parser.c
│   │   │   ├── gsth264parser.h
│   │   │   ├── gsth265parser.c
│   │   │   ├── gsth265parser.h
│   │   │   ├── gstjpeg2000sampling.c
│   │   │   ├── gstjpeg2000sampling.h
│   │   │   ├── gstjpegparser.c
│   │   │   ├── gstjpegparser.h
│   │   │   ├── gstmpeg4parser.c
│   │   │   ├── gstmpeg4parser.h
│   │   │   ├── gstmpegvideometa.c
│   │   │   ├── gstmpegvideometa.h
│   │   │   ├── gstmpegvideoparser.c
│   │   │   ├── gstmpegvideoparser.h
│   │   │   ├── gstvc1parser.c
│   │   │   ├── gstvc1parser.h
│   │   │   ├── gstvp8parser.c
│   │   │   ├── gstvp8parser.h
│   │   │   ├── gstvp8rangedecoder.c
│   │   │   ├── gstvp8rangedecoder.h
│   │   │   ├── gstvp9parser.c
│   │   │   ├── gstvp9parser.h
│   │   │   ├── meson.build
│   │   │   ├── nalutils.c
│   │   │   ├── nalutils.h
│   │   │   ├── parserutils.c
│   │   │   ├── parserutils.h
│   │   │   ├── vp8utils.c
│   │   │   ├── vp8utils.h
│   │   │   ├── vp9utils.c
│   │   │   └── vp9utils.h
│   │   ├── codecs/
│   │   │   ├── codecs-prelude.h
│   │   │   ├── gstav1decoder.c
│   │   │   ├── gstav1decoder.h
│   │   │   ├── gstav1picture.c
│   │   │   ├── gstav1picture.h
│   │   │   ├── gsth264decoder.c
│   │   │   ├── gsth264decoder.h
│   │   │   ├── gsth264picture.c
│   │   │   ├── gsth264picture.h
│   │   │   ├── gsth265decoder.c
│   │   │   ├── gsth265decoder.h
│   │   │   ├── gsth265picture.c
│   │   │   ├── gsth265picture.h
│   │   │   ├── gstmpeg2decoder.c
│   │   │   ├── gstmpeg2decoder.h
│   │   │   ├── gstmpeg2picture.c
│   │   │   ├── gstmpeg2picture.h
│   │   │   ├── gstvp8decoder.c
│   │   │   ├── gstvp8decoder.h
│   │   │   ├── gstvp8picture.c
│   │   │   ├── gstvp8picture.h
│   │   │   ├── gstvp9decoder.c
│   │   │   ├── gstvp9decoder.h
│   │   │   ├── gstvp9picture.c
│   │   │   ├── gstvp9picture.h
│   │   │   ├── gstvp9statefulparser.c
│   │   │   ├── gstvp9statefulparser.h
│   │   │   └── meson.build
│   │   ├── d3d11/
│   │   │   ├── d3d11-prelude.h
│   │   │   ├── gstd3d11.h
│   │   │   ├── gstd3d11_fwd.h
│   │   │   ├── gstd3d11_private.h
│   │   │   ├── gstd3d11bufferpool.cpp
│   │   │   ├── gstd3d11bufferpool.h
│   │   │   ├── gstd3d11config.h.meson
│   │   │   ├── gstd3d11device.cpp
│   │   │   ├── gstd3d11device.h
│   │   │   ├── gstd3d11format.cpp
│   │   │   ├── gstd3d11format.h
│   │   │   ├── gstd3d11memory.cpp
│   │   │   ├── gstd3d11memory.h
│   │   │   ├── gstd3d11utils.cpp
│   │   │   ├── gstd3d11utils.h
│   │   │   └── meson.build
│   │   ├── gettext.h
│   │   ├── glib-compat-private.h
│   │   ├── gst-i18n-plugin.h
│   │   ├── insertbin/
│   │   │   ├── gstinsertbin.c
│   │   │   ├── gstinsertbin.h
│   │   │   └── meson.build
│   │   ├── interfaces/
│   │   │   ├── meson.build
│   │   │   ├── photography-prelude.h
│   │   │   ├── photography.c
│   │   │   └── photography.h
│   │   ├── isoff/
│   │   │   ├── gstisoff.c
│   │   │   ├── gstisoff.h
│   │   │   └── meson.build
│   │   ├── meson.build
│   │   ├── mpegts/
│   │   │   ├── gst-atsc-descriptor.h
│   │   │   ├── gst-atsc-section.c
│   │   │   ├── gst-atsc-section.h
│   │   │   ├── gst-dvb-descriptor.c
│   │   │   ├── gst-dvb-descriptor.h
│   │   │   ├── gst-dvb-section.c
│   │   │   ├── gst-dvb-section.h
│   │   │   ├── gst-hdmv-section.h
│   │   │   ├── gst-isdb-descriptor.h
│   │   │   ├── gst-scte-section.c
│   │   │   ├── gst-scte-section.h
│   │   │   ├── gstmpegts-private.h
│   │   │   ├── gstmpegtsdescriptor.c
│   │   │   ├── gstmpegtsdescriptor.h
│   │   │   ├── gstmpegtssection.c
│   │   │   ├── gstmpegtssection.h
│   │   │   ├── meson.build
│   │   │   ├── mpegts-prelude.h
│   │   │   ├── mpegts.c
│   │   │   └── mpegts.h
│   │   ├── opencv/
│   │   │   ├── gstopencvutils.cpp
│   │   │   ├── gstopencvutils.h
│   │   │   ├── gstopencvvideofilter.cpp
│   │   │   ├── gstopencvvideofilter.h
│   │   │   ├── meson.build
│   │   │   └── opencv-prelude.h
│   │   ├── play/
│   │   │   ├── gstplay-media-info-private.h
│   │   │   ├── gstplay-media-info.c
│   │   │   ├── gstplay-media-info.h
│   │   │   ├── gstplay-message-private.h
│   │   │   ├── gstplay-signal-adapter.c
│   │   │   ├── gstplay-signal-adapter.h
│   │   │   ├── gstplay-types.h
│   │   │   ├── gstplay-video-overlay-video-renderer.c
│   │   │   ├── gstplay-video-overlay-video-renderer.h
│   │   │   ├── gstplay-video-renderer-private.h
│   │   │   ├── gstplay-video-renderer.c
│   │   │   ├── gstplay-video-renderer.h
│   │   │   ├── gstplay-visualization.c
│   │   │   ├── gstplay-visualization.h
│   │   │   ├── gstplay.c
│   │   │   ├── gstplay.h
│   │   │   ├── meson.build
│   │   │   ├── play-prelude.h
│   │   │   └── play.h
│   │   ├── player/
│   │   │   ├── gstplayer-g-main-context-signal-dispatcher.c
│   │   │   ├── gstplayer-g-main-context-signal-dispatcher.h
│   │   │   ├── gstplayer-media-info-private.h
│   │   │   ├── gstplayer-media-info.c
│   │   │   ├── gstplayer-media-info.h
│   │   │   ├── gstplayer-signal-dispatcher-private.h
│   │   │   ├── gstplayer-signal-dispatcher.c
│   │   │   ├── gstplayer-signal-dispatcher.h
│   │   │   ├── gstplayer-types.h
│   │   │   ├── gstplayer-video-overlay-video-renderer.c
│   │   │   ├── gstplayer-video-overlay-video-renderer.h
│   │   │   ├── gstplayer-video-renderer-private.h
│   │   │   ├── gstplayer-video-renderer.c
│   │   │   ├── gstplayer-video-renderer.h
│   │   │   ├── gstplayer-visualization.c
│   │   │   ├── gstplayer-visualization.h
│   │   │   ├── gstplayer-wrapped-video-renderer-private.h
│   │   │   ├── gstplayer-wrapped-video-renderer.c
│   │   │   ├── gstplayer.c
│   │   │   ├── gstplayer.h
│   │   │   ├── meson.build
│   │   │   ├── player-prelude.h
│   │   │   └── player.h
│   │   ├── sctp/
│   │   │   ├── meson.build
│   │   │   ├── sctp-prelude.h
│   │   │   ├── sctpreceivemeta.c
│   │   │   ├── sctpreceivemeta.h
│   │   │   ├── sctpsendmeta.c
│   │   │   └── sctpsendmeta.h
│   │   ├── transcoder/
│   │   │   ├── gsttranscoder-private.h
│   │   │   ├── gsttranscoder-signal-adapter.c
│   │   │   ├── gsttranscoder-signal-adapter.h
│   │   │   ├── gsttranscoder.c
│   │   │   ├── gsttranscoder.h
│   │   │   ├── meson.build
│   │   │   └── transcoder-prelude.h
│   │   ├── uridownloader/
│   │   │   ├── gstfragment.c
│   │   │   ├── gstfragment.h
│   │   │   ├── gsturidownloader.c
│   │   │   ├── gsturidownloader.h
│   │   │   ├── gsturidownloader_debug.h
│   │   │   ├── meson.build
│   │   │   └── uridownloader-prelude.h
│   │   ├── va/
│   │   │   ├── gstvadisplay.c
│   │   │   ├── gstvadisplay.h
│   │   │   ├── gstvadisplay_drm.c
│   │   │   ├── gstvadisplay_drm.h
│   │   │   ├── gstvadisplay_wrapped.c
│   │   │   ├── gstvadisplay_wrapped.h
│   │   │   ├── meson.build
│   │   │   ├── va-prelude.h
│   │   │   └── va_fwd.h
│   │   ├── vulkan/
│   │   │   ├── android/
│   │   │   │   ├── gstvkdisplay_android.c
│   │   │   │   ├── gstvkdisplay_android.h
│   │   │   │   ├── gstvkwindow_android.c
│   │   │   │   └── gstvkwindow_android.h
│   │   │   ├── cocoa/
│   │   │   │   ├── gstvkcocoa_utils.h
│   │   │   │   ├── gstvkdisplay_cocoa.h
│   │   │   │   ├── gstvkdisplay_cocoa.m
│   │   │   │   ├── gstvkwindow_cocoa.h
│   │   │   │   └── gstvkwindow_cocoa.m
│   │   │   ├── gstvkapi.h
│   │   │   ├── gstvkbarrier.h
│   │   │   ├── gstvkbuffermemory.c
│   │   │   ├── gstvkbuffermemory.h
│   │   │   ├── gstvkbufferpool.c
│   │   │   ├── gstvkbufferpool.h
│   │   │   ├── gstvkcommandbuffer.c
│   │   │   ├── gstvkcommandbuffer.h
│   │   │   ├── gstvkcommandpool-private.h
│   │   │   ├── gstvkcommandpool.c
│   │   │   ├── gstvkcommandpool.h
│   │   │   ├── gstvkconfig.h.meson
│   │   │   ├── gstvkdebug-private.h
│   │   │   ├── gstvkdebug.c
│   │   │   ├── gstvkdebug.h
│   │   │   ├── gstvkdescriptorcache.c
│   │   │   ├── gstvkdescriptorcache.h
│   │   │   ├── gstvkdescriptorpool.c
│   │   │   ├── gstvkdescriptorpool.h
│   │   │   ├── gstvkdescriptorset.c
│   │   │   ├── gstvkdescriptorset.h
│   │   │   ├── gstvkdevice.c
│   │   │   ├── gstvkdevice.h
│   │   │   ├── gstvkdisplay.c
│   │   │   ├── gstvkdisplay.h
│   │   │   ├── gstvkerror.c
│   │   │   ├── gstvkerror.h
│   │   │   ├── gstvkfence.c
│   │   │   ├── gstvkfence.h
│   │   │   ├── gstvkformat.c
│   │   │   ├── gstvkformat.h
│   │   │   ├── gstvkfullscreenquad.c
│   │   │   ├── gstvkfullscreenquad.h
│   │   │   ├── gstvkhandle.c
│   │   │   ├── gstvkhandle.h
│   │   │   ├── gstvkhandlepool.c
│   │   │   ├── gstvkhandlepool.h
│   │   │   ├── gstvkimagebufferpool.c
│   │   │   ├── gstvkimagebufferpool.h
│   │   │   ├── gstvkimagememory.c
│   │   │   ├── gstvkimagememory.h
│   │   │   ├── gstvkimageview.c
│   │   │   ├── gstvkimageview.h
│   │   │   ├── gstvkinstance.c
│   │   │   ├── gstvkinstance.h
│   │   │   ├── gstvkmemory.c
│   │   │   ├── gstvkmemory.h
│   │   │   ├── gstvkphysicaldevice.c
│   │   │   ├── gstvkphysicaldevice.h
│   │   │   ├── gstvkqueue.c
│   │   │   ├── gstvkqueue.h
│   │   │   ├── gstvkswapper.c
│   │   │   ├── gstvkswapper.h
│   │   │   ├── gstvktrash.c
│   │   │   ├── gstvktrash.h
│   │   │   ├── gstvkutils.c
│   │   │   ├── gstvkutils.h
│   │   │   ├── gstvkvideofilter.c
│   │   │   ├── gstvkvideofilter.h
│   │   │   ├── gstvkwindow.c
│   │   │   ├── gstvkwindow.h
│   │   │   ├── ios/
│   │   │   │   ├── gstvkdisplay_ios.h
│   │   │   │   ├── gstvkdisplay_ios.m
│   │   │   │   ├── gstvkios_utils.h
│   │   │   │   ├── gstvkwindow_ios.h
│   │   │   │   └── gstvkwindow_ios.m
│   │   │   ├── meson.build
│   │   │   ├── vulkan-prelude.h
│   │   │   ├── vulkan.h
│   │   │   ├── vulkan_fwd.h
│   │   │   ├── vulkan_mkenum.py
│   │   │   ├── wayland/
│   │   │   │   ├── gstvkdisplay_wayland.c
│   │   │   │   ├── gstvkdisplay_wayland.h
│   │   │   │   ├── gstvkwindow_wayland.c
│   │   │   │   ├── gstvkwindow_wayland.h
│   │   │   │   ├── wayland.h
│   │   │   │   ├── wayland_event_source.c
│   │   │   │   └── wayland_event_source.h
│   │   │   ├── win32/
│   │   │   │   ├── gstvkwindow_win32.c
│   │   │   │   └── gstvkwindow_win32.h
│   │   │   └── xcb/
│   │   │       ├── gstvkdisplay_xcb.c
│   │   │       ├── gstvkdisplay_xcb.h
│   │   │       ├── gstvkwindow_xcb.c
│   │   │       ├── gstvkwindow_xcb.h
│   │   │       ├── xcb.h
│   │   │       ├── xcb_event_source.c
│   │   │       └── xcb_event_source.h
│   │   ├── wayland/
│   │   │   ├── meson.build
│   │   │   ├── wayland.c
│   │   │   └── wayland.h
│   │   └── webrtc/
│   │       ├── datachannel.c
│   │       ├── datachannel.h
│   │       ├── dtlstransport.c
│   │       ├── dtlstransport.h
│   │       ├── icetransport.c
│   │       ├── icetransport.h
│   │       ├── meson.build
│   │       ├── rtcsessiondescription.c
│   │       ├── rtcsessiondescription.h
│   │       ├── rtpreceiver.c
│   │       ├── rtpreceiver.h
│   │       ├── rtpsender.c
│   │       ├── rtpsender.h
│   │       ├── rtptransceiver.c
│   │       ├── rtptransceiver.h
│   │       ├── sctptransport.c
│   │       ├── sctptransport.h
│   │       ├── webrtc-priv.h
│   │       ├── webrtc.h
│   │       └── webrtc_fwd.h
│   └── meson.build
├── gst-plugins-bad.doap
├── hooks/
│   └── pre-commit.hook
├── meson.build
├── meson_options.txt
├── po/
│   ├── LINGUAS
│   ├── POTFILES
│   ├── POTFILES.skip
│   ├── af.po
│   ├── ast.po
│   ├── az.po
│   ├── bg.po
│   ├── ca.po
│   ├── cs.po
│   ├── da.po
│   ├── de.po
│   ├── el.po
│   ├── en_GB.po
│   ├── eo.po
│   ├── es.po
│   ├── eu.po
│   ├── fi.po
│   ├── fr.po
│   ├── fur.po
│   ├── gl.po
│   ├── hr.po
│   ├── hu.po
│   ├── id.po
│   ├── it.po
│   ├── ja.po
│   ├── ky.po
│   ├── lt.po
│   ├── lv.po
│   ├── meson.build
│   ├── mt.po
│   ├── nb.po
│   ├── nl.po
│   ├── or.po
│   ├── pl.po
│   ├── pt_BR.po
│   ├── ro.po
│   ├── ru.po
│   ├── sk.po
│   ├── sl.po
│   ├── sq.po
│   ├── sr.po
│   ├── sv.po
│   ├── tr.po
│   ├── uk.po
│   ├── vi.po
│   └── zh_CN.po
├── scripts/
│   ├── dist-translations.py
│   ├── extract-release-date-from-doap-file.py
│   ├── meson.build
│   └── update-orc-dist-files.py
├── sys/
│   ├── androidmedia/
│   │   ├── gst-android-graphics-imageformat.c
│   │   ├── gst-android-graphics-imageformat.h
│   │   ├── gst-android-hardware-camera.c
│   │   ├── gst-android-hardware-camera.h
│   │   ├── gst-android-hardware-sensor.c
│   │   ├── gst-android-hardware-sensor.h
│   │   ├── gstahcsrc.c
│   │   ├── gstahcsrc.h
│   │   ├── gstahssrc.c
│   │   ├── gstahssrc.h
│   │   ├── gstamc-codec.h
│   │   ├── gstamc-codeclist.h
│   │   ├── gstamc-constants.h
│   │   ├── gstamc-format.h
│   │   ├── gstamc.c
│   │   ├── gstamc.h
│   │   ├── gstamcaudiodec.c
│   │   ├── gstamcaudiodec.h
│   │   ├── gstamcsurfacetexture.c
│   │   ├── gstamcsurfacetexture.h
│   │   ├── gstamcvideodec.c
│   │   ├── gstamcvideodec.h
│   │   ├── gstamcvideoenc.c
│   │   ├── gstamcvideoenc.h
│   │   ├── gstjniutils.c
│   │   ├── gstjniutils.h
│   │   ├── gstsensors.h
│   │   ├── jni/
│   │   │   ├── gstamc-codec-jni.c
│   │   │   ├── gstamc-codeclist-jni.c
│   │   │   ├── gstamc-format-jni.c
│   │   │   ├── gstamc-internal-jni.h
│   │   │   ├── gstamcsurface.c
│   │   │   ├── gstamcsurface.h
│   │   │   ├── gstamcsurfacetexture-jni.c
│   │   │   └── gstamcsurfacetexture-jni.h
│   │   ├── magicleap/
│   │   │   ├── gstamc-codec-ml.c
│   │   │   ├── gstamc-codeclist-ml.c
│   │   │   ├── gstamc-format-ml.c
│   │   │   ├── gstamc-internal-ml.h
│   │   │   ├── gstamc-surfacetexture-ml.c
│   │   │   └── gstamc-surfacetexture-ml.h
│   │   ├── meson.build
│   │   └── org/
│   │       └── freedesktop/
│   │           └── gstreamer/
│   │               └── androidmedia/
│   │                   ├── GstAhcCallback.java
│   │                   ├── GstAhsCallback.java
│   │                   └── GstAmcOnFrameAvailableListener.java
│   ├── applemedia/
│   │   ├── atdec.c
│   │   ├── atdec.h
│   │   ├── avfassetsrc.h
│   │   ├── avfassetsrc.m
│   │   ├── avfdeviceprovider.h
│   │   ├── avfdeviceprovider.m
│   │   ├── avfvideosrc.h
│   │   ├── avfvideosrc.m
│   │   ├── avsamplevideosink.h
│   │   ├── avsamplevideosink.m
│   │   ├── coremediabuffer.c
│   │   ├── coremediabuffer.h
│   │   ├── corevideobuffer.c
│   │   ├── corevideobuffer.h
│   │   ├── corevideomemory.c
│   │   ├── corevideomemory.h
│   │   ├── glcontexthelper.c
│   │   ├── glcontexthelper.h
│   │   ├── iosassetsrc.h
│   │   ├── iosassetsrc.m
│   │   ├── iosglmemory.c
│   │   ├── iosglmemory.h
│   │   ├── iosurfaceglmemory.c
│   │   ├── iosurfaceglmemory.h
│   │   ├── iosurfacevulkanmemory.c
│   │   ├── iosurfacevulkanmemory.h
│   │   ├── meson.build
│   │   ├── metal-helpers.h
│   │   ├── plugin.m
│   │   ├── videotexturecache-gl.h
│   │   ├── videotexturecache-gl.m
│   │   ├── videotexturecache-vulkan.h
│   │   ├── videotexturecache-vulkan.mm
│   │   ├── videotexturecache.h
│   │   ├── videotexturecache.m
│   │   ├── vtdec.c
│   │   ├── vtdec.h
│   │   ├── vtenc.c
│   │   ├── vtenc.h
│   │   ├── vtutil.c
│   │   └── vtutil.h
│   ├── asio/
│   │   ├── gstasiodeviceprovider.cpp
│   │   ├── gstasiodeviceprovider.h
│   │   ├── gstasioobject.cpp
│   │   ├── gstasioobject.h
│   │   ├── gstasioringbuffer.cpp
│   │   ├── gstasioringbuffer.h
│   │   ├── gstasiosink.cpp
│   │   ├── gstasiosink.h
│   │   ├── gstasiosrc.cpp
│   │   ├── gstasiosrc.h
│   │   ├── gstasioutils.cpp
│   │   ├── gstasioutils.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── bluez/
│   │   ├── a2dp-codecs.h
│   │   ├── bluez-plugin.c
│   │   ├── gsta2dpsink.c
│   │   ├── gsta2dpsink.h
│   │   ├── gstavdtpsink.c
│   │   ├── gstavdtpsink.h
│   │   ├── gstavdtpsrc.c
│   │   ├── gstavdtpsrc.h
│   │   ├── gstavdtputil.c
│   │   ├── gstavdtputil.h
│   │   ├── gstavrcputil.c
│   │   ├── gstavrcputil.h
│   │   ├── gstbluezelement.c
│   │   ├── gstbluezelements.h
│   │   ├── meson.build
│   │   └── org.bluez.xml
│   ├── d3d11/
│   │   ├── gstd3d11av1dec.cpp
│   │   ├── gstd3d11av1dec.h
│   │   ├── gstd3d11basefilter.cpp
│   │   ├── gstd3d11basefilter.h
│   │   ├── gstd3d11compositor.cpp
│   │   ├── gstd3d11compositor.h
│   │   ├── gstd3d11compositorbin.cpp
│   │   ├── gstd3d11compositorbin.h
│   │   ├── gstd3d11convert.cpp
│   │   ├── gstd3d11convert.h
│   │   ├── gstd3d11converter.cpp
│   │   ├── gstd3d11converter.h
│   │   ├── gstd3d11decoder.cpp
│   │   ├── gstd3d11decoder.h
│   │   ├── gstd3d11deinterlace.cpp
│   │   ├── gstd3d11deinterlace.h
│   │   ├── gstd3d11desktopdup.cpp
│   │   ├── gstd3d11desktopdup.h
│   │   ├── gstd3d11desktopdupsrc.cpp
│   │   ├── gstd3d11desktopdupsrc.h
│   │   ├── gstd3d11download.cpp
│   │   ├── gstd3d11download.h
│   │   ├── gstd3d11h264dec.cpp
│   │   ├── gstd3d11h264dec.h
│   │   ├── gstd3d11h265dec.cpp
│   │   ├── gstd3d11h265dec.h
│   │   ├── gstd3d11mpeg2dec.cpp
│   │   ├── gstd3d11mpeg2dec.h
│   │   ├── gstd3d11overlaycompositor.cpp
│   │   ├── gstd3d11overlaycompositor.h
│   │   ├── gstd3d11pluginutils.cpp
│   │   ├── gstd3d11pluginutils.h
│   │   ├── gstd3d11shader.cpp
│   │   ├── gstd3d11shader.h
│   │   ├── gstd3d11upload.cpp
│   │   ├── gstd3d11upload.h
│   │   ├── gstd3d11videoprocessor.cpp
│   │   ├── gstd3d11videoprocessor.h
│   │   ├── gstd3d11videosink.cpp
│   │   ├── gstd3d11videosink.h
│   │   ├── gstd3d11vp8dec.cpp
│   │   ├── gstd3d11vp8dec.h
│   │   ├── gstd3d11vp9dec.cpp
│   │   ├── gstd3d11vp9dec.h
│   │   ├── gstd3d11window.cpp
│   │   ├── gstd3d11window.h
│   │   ├── gstd3d11window_corewindow.cpp
│   │   ├── gstd3d11window_corewindow.h
│   │   ├── gstd3d11window_dummy.cpp
│   │   ├── gstd3d11window_dummy.h
│   │   ├── gstd3d11window_swapchainpanel.cpp
│   │   ├── gstd3d11window_swapchainpanel.h
│   │   ├── gstd3d11window_win32.cpp
│   │   ├── gstd3d11window_win32.h
│   │   ├── meson.build
│   │   └── plugin.cpp
│   ├── d3dvideosink/
│   │   ├── d3dhelpers.c
│   │   ├── d3dhelpers.h
│   │   ├── d3dvideosink.c
│   │   ├── d3dvideosink.h
│   │   ├── gstd3d9overlay.c
│   │   ├── gstd3d9overlay.h
│   │   └── meson.build
│   ├── decklink/
│   │   ├── gstdecklink.cpp
│   │   ├── gstdecklink.h
│   │   ├── gstdecklinkaudiosink.cpp
│   │   ├── gstdecklinkaudiosink.h
│   │   ├── gstdecklinkaudiosrc.cpp
│   │   ├── gstdecklinkaudiosrc.h
│   │   ├── gstdecklinkdeviceprovider.cpp
│   │   ├── gstdecklinkdeviceprovider.h
│   │   ├── gstdecklinkplugin.cpp
│   │   ├── gstdecklinkvideosink.cpp
│   │   ├── gstdecklinkvideosink.h
│   │   ├── gstdecklinkvideosrc.cpp
│   │   ├── gstdecklinkvideosrc.h
│   │   ├── linux/
│   │   │   ├── DeckLinkAPI.h
│   │   │   ├── DeckLinkAPIConfiguration.h
│   │   │   ├── DeckLinkAPIDeckControl.h
│   │   │   ├── DeckLinkAPIDiscovery.h
│   │   │   ├── DeckLinkAPIDispatch.cpp
│   │   │   ├── DeckLinkAPIModes.h
│   │   │   ├── DeckLinkAPITypes.h
│   │   │   ├── DeckLinkAPIVersion.h
│   │   │   └── LinuxCOM.h
│   │   ├── meson.build
│   │   ├── osx/
│   │   │   ├── DeckLinkAPI.h
│   │   │   ├── DeckLinkAPIConfiguration.h
│   │   │   ├── DeckLinkAPIDeckControl.h
│   │   │   ├── DeckLinkAPIDiscovery.h
│   │   │   ├── DeckLinkAPIDispatch.cpp
│   │   │   ├── DeckLinkAPIModes.h
│   │   │   ├── DeckLinkAPIStreaming.h
│   │   │   ├── DeckLinkAPITypes.h
│   │   │   └── DeckLinkAPIVersion.h
│   │   └── win/
│   │       ├── DeckLinkAPI.h
│   │       ├── DeckLinkAPIDispatch.cpp
│   │       └── DeckLinkAPI_i.c
│   ├── directsound/
│   │   ├── gstdirectsounddevice.c
│   │   ├── gstdirectsounddevice.h
│   │   ├── gstdirectsoundplugin.c
│   │   ├── gstdirectsoundsrc.c
│   │   ├── gstdirectsoundsrc.h
│   │   └── meson.build
│   ├── dshowdecwrapper/
│   │   ├── CMakeLists.txt
│   │   ├── gstdshowaudiodec.cpp
│   │   ├── gstdshowaudiodec.h
│   │   ├── gstdshowdecwrapper.cpp
│   │   ├── gstdshowdecwrapper.h
│   │   ├── gstdshowfakesrc.cpp
│   │   ├── gstdshowfakesrc.h
│   │   ├── gstdshowutil.cpp
│   │   ├── gstdshowutil.h
│   │   ├── gstdshowvideodec.cpp
│   │   └── gstdshowvideodec.h
│   ├── dshowsrcwrapper/
│   │   ├── BUILD.txt
│   │   ├── CMakeLists.txt
│   │   ├── dshowdeviceprovider.cpp
│   │   ├── dshowdeviceprovider.h
│   │   ├── gstdshow.cpp
│   │   ├── gstdshow.h
│   │   ├── gstdshowaudiosrc.cpp
│   │   ├── gstdshowaudiosrc.h
│   │   ├── gstdshowfakesink.cpp
│   │   ├── gstdshowfakesink.h
│   │   ├── gstdshowsrcwrapper.cpp
│   │   ├── gstdshowvideosrc.cpp
│   │   └── gstdshowvideosrc.h
│   ├── dshowvideosink/
│   │   ├── README
│   │   ├── dshowvideofakesrc.cpp
│   │   ├── dshowvideofakesrc.h
│   │   ├── dshowvideosink.cpp
│   │   └── dshowvideosink.h
│   ├── dvb/
│   │   ├── AUTHORS
│   │   ├── cam.c
│   │   ├── cam.h
│   │   ├── camapplication.c
│   │   ├── camapplication.h
│   │   ├── camapplicationinfo.c
│   │   ├── camapplicationinfo.h
│   │   ├── camconditionalaccess.c
│   │   ├── camconditionalaccess.h
│   │   ├── camdevice.c
│   │   ├── camdevice.h
│   │   ├── camresourcemanager.c
│   │   ├── camresourcemanager.h
│   │   ├── camsession.c
│   │   ├── camsession.h
│   │   ├── camswclient.c
│   │   ├── camswclient.h
│   │   ├── camtransport.c
│   │   ├── camtransport.h
│   │   ├── camutils.c
│   │   ├── camutils.h
│   │   ├── dvbbasebin.c
│   │   ├── dvbbasebin.h
│   │   ├── gstdvb.c
│   │   ├── gstdvbelement.c
│   │   ├── gstdvbelements.h
│   │   ├── gstdvbsrc.c
│   │   ├── gstdvbsrc.h
│   │   ├── meson.build
│   │   ├── parsechannels.c
│   │   └── parsechannels.h
│   ├── fbdev/
│   │   ├── gstfbdevsink.c
│   │   ├── gstfbdevsink.h
│   │   └── meson.build
│   ├── ipcpipeline/
│   │   ├── gstipcpipeline.c
│   │   ├── gstipcpipelinecomm.c
│   │   ├── gstipcpipelinecomm.h
│   │   ├── gstipcpipelineelement.c
│   │   ├── gstipcpipelineelements.h
│   │   ├── gstipcpipelinesink.c
│   │   ├── gstipcpipelinesink.h
│   │   ├── gstipcpipelinesrc.c
│   │   ├── gstipcpipelinesrc.h
│   │   ├── gstipcslavepipeline.c
│   │   ├── gstipcslavepipeline.h
│   │   ├── meson.build
│   │   └── protocol.txt
│   ├── kms/
│   │   ├── gstkmsallocator.c
│   │   ├── gstkmsallocator.h
│   │   ├── gstkmsbufferpool.c
│   │   ├── gstkmsbufferpool.h
│   │   ├── gstkmssink.c
│   │   ├── gstkmssink.h
│   │   ├── gstkmsutils.c
│   │   ├── gstkmsutils.h
│   │   └── meson.build
│   ├── magicleap/
│   │   ├── meson.build
│   │   ├── mlaudiosink.c
│   │   ├── mlaudiosink.h
│   │   ├── mlaudiowrapper.cpp
│   │   ├── mlaudiowrapper.h
│   │   └── plugin.c
│   ├── mediafoundation/
│   │   ├── AsyncOperations.h
│   │   ├── gstmfaacenc.cpp
│   │   ├── gstmfaacenc.h
│   │   ├── gstmfaudioenc.cpp
│   │   ├── gstmfaudioenc.h
│   │   ├── gstmfcapturewinrt.cpp
│   │   ├── gstmfcapturewinrt.h
│   │   ├── gstmfdevice.c
│   │   ├── gstmfdevice.h
│   │   ├── gstmfh264enc.cpp
│   │   ├── gstmfh264enc.h
│   │   ├── gstmfh265enc.cpp
│   │   ├── gstmfh265enc.h
│   │   ├── gstmfmp3enc.cpp
│   │   ├── gstmfmp3enc.h
│   │   ├── gstmfsourceobject.c
│   │   ├── gstmfsourceobject.h
│   │   ├── gstmfsourcereader.cpp
│   │   ├── gstmfsourcereader.h
│   │   ├── gstmftransform.cpp
│   │   ├── gstmftransform.h
│   │   ├── gstmfutils.cpp
│   │   ├── gstmfutils.h
│   │   ├── gstmfvideobuffer.cpp
│   │   ├── gstmfvideobuffer.h
│   │   ├── gstmfvideoenc.cpp
│   │   ├── gstmfvideoenc.h
│   │   ├── gstmfvideosrc.c
│   │   ├── gstmfvideosrc.h
│   │   ├── gstmfvp9enc.cpp
│   │   ├── gstmfvp9enc.h
│   │   ├── gststrmif.h
│   │   ├── mediacapturewrapper.cpp
│   │   ├── mediacapturewrapper.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── meson.build
│   ├── msdk/
│   │   ├── gstmsdk.c
│   │   ├── gstmsdkallocator.h
│   │   ├── gstmsdkallocator_d3d.c
│   │   ├── gstmsdkallocator_libva.c
│   │   ├── gstmsdkallocator_libva.h
│   │   ├── gstmsdkav1dec.c
│   │   ├── gstmsdkav1dec.h
│   │   ├── gstmsdkbufferpool.c
│   │   ├── gstmsdkbufferpool.h
│   │   ├── gstmsdkcontext.c
│   │   ├── gstmsdkcontext.h
│   │   ├── gstmsdkcontextutil.c
│   │   ├── gstmsdkcontextutil.h
│   │   ├── gstmsdkdec.c
│   │   ├── gstmsdkdec.h
│   │   ├── gstmsdkdecproputil.c
│   │   ├── gstmsdkdecproputil.h
│   │   ├── gstmsdkenc.c
│   │   ├── gstmsdkenc.h
│   │   ├── gstmsdkh264dec.c
│   │   ├── gstmsdkh264dec.h
│   │   ├── gstmsdkh264enc.c
│   │   ├── gstmsdkh264enc.h
│   │   ├── gstmsdkh265dec.c
│   │   ├── gstmsdkh265dec.h
│   │   ├── gstmsdkh265enc.c
│   │   ├── gstmsdkh265enc.h
│   │   ├── gstmsdkmjpegdec.c
│   │   ├── gstmsdkmjpegdec.h
│   │   ├── gstmsdkmjpegenc.c
│   │   ├── gstmsdkmjpegenc.h
│   │   ├── gstmsdkmpeg2dec.c
│   │   ├── gstmsdkmpeg2dec.h
│   │   ├── gstmsdkmpeg2enc.c
│   │   ├── gstmsdkmpeg2enc.h
│   │   ├── gstmsdksystemmemory.c
│   │   ├── gstmsdksystemmemory.h
│   │   ├── gstmsdkvc1dec.c
│   │   ├── gstmsdkvc1dec.h
│   │   ├── gstmsdkvideomemory.c
│   │   ├── gstmsdkvideomemory.h
│   │   ├── gstmsdkvp8dec.c
│   │   ├── gstmsdkvp8dec.h
│   │   ├── gstmsdkvp9dec.c
│   │   ├── gstmsdkvp9dec.h
│   │   ├── gstmsdkvp9enc.c
│   │   ├── gstmsdkvp9enc.h
│   │   ├── gstmsdkvpp.c
│   │   ├── gstmsdkvpp.h
│   │   ├── gstmsdkvpputil.c
│   │   ├── gstmsdkvpputil.h
│   │   ├── meson.build
│   │   ├── msdk-enums.c
│   │   ├── msdk-enums.h
│   │   ├── msdk.c
│   │   ├── msdk.h
│   │   ├── msdk_d3d.c
│   │   ├── msdk_libva.c
│   │   └── msdk_libva.h
│   ├── nvcodec/
│   │   ├── cuda-converter.c
│   │   ├── cuda-converter.h
│   │   ├── cuviddec.h
│   │   ├── gstcudabasefilter.c
│   │   ├── gstcudabasefilter.h
│   │   ├── gstcudabasetransform.c
│   │   ├── gstcudabasetransform.h
│   │   ├── gstcudabufferpool.c
│   │   ├── gstcudabufferpool.h
│   │   ├── gstcudacontext.c
│   │   ├── gstcudacontext.h
│   │   ├── gstcudaconvert.c
│   │   ├── gstcudaconvert.h
│   │   ├── gstcudadownload.c
│   │   ├── gstcudadownload.h
│   │   ├── gstcudafilter.c
│   │   ├── gstcudafilter.h
│   │   ├── gstcudaloader.c
│   │   ├── gstcudaloader.h
│   │   ├── gstcudamemory.c
│   │   ├── gstcudamemory.h
│   │   ├── gstcudanvrtc.c
│   │   ├── gstcudanvrtc.h
│   │   ├── gstcudascale.c
│   │   ├── gstcudascale.h
│   │   ├── gstcudaupload.c
│   │   ├── gstcudaupload.h
│   │   ├── gstcudautils.c
│   │   ├── gstcudautils.h
│   │   ├── gstcuvidloader.c
│   │   ├── gstcuvidloader.h
│   │   ├── gstnvbaseenc.c
│   │   ├── gstnvbaseenc.h
│   │   ├── gstnvdec.c
│   │   ├── gstnvdec.h
│   │   ├── gstnvdecoder.c
│   │   ├── gstnvdecoder.h
│   │   ├── gstnvenc.c
│   │   ├── gstnvenc.h
│   │   ├── gstnvh264dec.c
│   │   ├── gstnvh264dec.h
│   │   ├── gstnvh264enc.c
│   │   ├── gstnvh264enc.h
│   │   ├── gstnvh265dec.c
│   │   ├── gstnvh265dec.h
│   │   ├── gstnvh265enc.c
│   │   ├── gstnvh265enc.h
│   │   ├── gstnvrtcloader.c
│   │   ├── gstnvrtcloader.h
│   │   ├── gstnvvp8dec.c
│   │   ├── gstnvvp8dec.h
│   │   ├── gstnvvp9dec.c
│   │   ├── gstnvvp9dec.h
│   │   ├── meson.build
│   │   ├── nvEncodeAPI.h
│   │   ├── nvcuvid.h
│   │   ├── plugin.c
│   │   └── stub/
│   │       ├── cuda.h
│   │       └── nvrtc.h
│   ├── opensles/
│   │   ├── meson.build
│   │   ├── opensles.c
│   │   ├── opensles.h
│   │   ├── openslescommon.c
│   │   ├── openslescommon.h
│   │   ├── openslesplugin.c
│   │   ├── openslesringbuffer.c
│   │   ├── openslesringbuffer.h
│   │   ├── openslessink.c
│   │   ├── openslessink.h
│   │   ├── openslessrc.c
│   │   └── openslessrc.h
│   ├── shm/
│   │   ├── gstshm.c
│   │   ├── gstshmsink.c
│   │   ├── gstshmsink.h
│   │   ├── gstshmsrc.c
│   │   ├── gstshmsrc.h
│   │   ├── meson.build
│   │   ├── shmalloc.c
│   │   ├── shmalloc.h
│   │   ├── shmpipe.c
│   │   └── shmpipe.h
│   ├── tinyalsa/
│   │   ├── meson.build
│   │   ├── tinyalsa.c
│   │   ├── tinyalsasink.c
│   │   └── tinyalsasink.h
│   ├── uvch264/
│   │   ├── gstuvch264.c
│   │   ├── gstuvch264_mjpgdemux.c
│   │   ├── gstuvch264_mjpgdemux.h
│   │   ├── gstuvch264_src.c
│   │   ├── gstuvch264_src.h
│   │   ├── gstuvch264deviceprovider.c
│   │   ├── gstuvch264deviceprovider.h
│   │   ├── meson.build
│   │   ├── uvc_h264.c
│   │   └── uvc_h264.h
│   ├── v4l2codecs/
│   │   ├── gstv4l2codecallocator.c
│   │   ├── gstv4l2codecallocator.h
│   │   ├── gstv4l2codecalphadecodebin.c
│   │   ├── gstv4l2codecalphadecodebin.h
│   │   ├── gstv4l2codecdevice.c
│   │   ├── gstv4l2codecdevice.h
│   │   ├── gstv4l2codech264dec.c
│   │   ├── gstv4l2codech264dec.h
│   │   ├── gstv4l2codecpool.c
│   │   ├── gstv4l2codecpool.h
│   │   ├── gstv4l2codecvp8dec.c
│   │   ├── gstv4l2codecvp8dec.h
│   │   ├── gstv4l2decoder.c
│   │   ├── gstv4l2decoder.h
│   │   ├── gstv4l2format.c
│   │   ├── gstv4l2format.h
│   │   ├── linux/
│   │   │   ├── media.h
│   │   │   ├── types-compat.h
│   │   │   ├── v4l2-common.h
│   │   │   ├── v4l2-controls.h
│   │   │   └── videodev2.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── va/
│   │   ├── gstvaallocator.c
│   │   ├── gstvaallocator.h
│   │   ├── gstvaav1dec.c
│   │   ├── gstvaav1dec.h
│   │   ├── gstvabasedec.c
│   │   ├── gstvabasedec.h
│   │   ├── gstvabasetransform.c
│   │   ├── gstvabasetransform.h
│   │   ├── gstvacaps.c
│   │   ├── gstvacaps.h
│   │   ├── gstvadecoder.c
│   │   ├── gstvadecoder.h
│   │   ├── gstvadeinterlace.c
│   │   ├── gstvadeinterlace.h
│   │   ├── gstvadevice.c
│   │   ├── gstvadevice.h
│   │   ├── gstvadisplay_priv.c
│   │   ├── gstvadisplay_priv.h
│   │   ├── gstvafilter.c
│   │   ├── gstvafilter.h
│   │   ├── gstvah264dec.c
│   │   ├── gstvah264dec.h
│   │   ├── gstvah265dec.c
│   │   ├── gstvah265dec.h
│   │   ├── gstvampeg2dec.c
│   │   ├── gstvampeg2dec.h
│   │   ├── gstvapool.c
│   │   ├── gstvapool.h
│   │   ├── gstvaprofile.c
│   │   ├── gstvaprofile.h
│   │   ├── gstvautils.c
│   │   ├── gstvautils.h
│   │   ├── gstvavideoformat.c
│   │   ├── gstvavideoformat.h
│   │   ├── gstvavp8dec.c
│   │   ├── gstvavp8dec.h
│   │   ├── gstvavp9dec.c
│   │   ├── gstvavp9dec.h
│   │   ├── gstvavpp.c
│   │   ├── gstvavpp.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── wasapi/
│   │   ├── gstaudioclient3.h
│   │   ├── gstmmdeviceenumerator.cpp
│   │   ├── gstmmdeviceenumerator.h
│   │   ├── gstwasapi.c
│   │   ├── gstwasapidevice.c
│   │   ├── gstwasapidevice.h
│   │   ├── gstwasapisink.c
│   │   ├── gstwasapisink.h
│   │   ├── gstwasapisrc.c
│   │   ├── gstwasapisrc.h
│   │   ├── gstwasapiutil.c
│   │   ├── gstwasapiutil.h
│   │   └── meson.build
│   ├── wasapi2/
│   │   ├── AsyncOperations.h
│   │   ├── gstwasapi2client.cpp
│   │   ├── gstwasapi2client.h
│   │   ├── gstwasapi2device.c
│   │   ├── gstwasapi2device.h
│   │   ├── gstwasapi2ringbuffer.cpp
│   │   ├── gstwasapi2ringbuffer.h
│   │   ├── gstwasapi2sink.c
│   │   ├── gstwasapi2sink.h
│   │   ├── gstwasapi2src.c
│   │   ├── gstwasapi2src.h
│   │   ├── gstwasapi2util.c
│   │   ├── gstwasapi2util.h
│   │   ├── meson.build
│   │   └── plugin.c
│   ├── winks/
│   │   ├── gstksclock.c
│   │   ├── gstksclock.h
│   │   ├── gstksvideodevice.c
│   │   ├── gstksvideodevice.h
│   │   ├── gstksvideosrc.c
│   │   ├── gstksvideosrc.h
│   │   ├── ksdeviceprovider.c
│   │   ├── ksdeviceprovider.h
│   │   ├── kshelpers.c
│   │   ├── kshelpers.h
│   │   ├── ksvideohelpers.c
│   │   ├── ksvideohelpers.h
│   │   └── meson.build
│   └── winscreencap/
│       ├── dxgicapture.c
│       ├── dxgicapture.h
│       ├── gstdx9screencapsrc.c
│       ├── gstdx9screencapsrc.h
│       ├── gstdxgiscreencapsrc.c
│       ├── gstdxgiscreencapsrc.h
│       ├── gstgdiscreencapsrc.c
│       ├── gstgdiscreencapsrc.h
│       ├── gstwinscreencap.c
│       ├── gstwinscreencap.h
│       └── meson.build
├── tests/
│   ├── check/
│   │   ├── elements/
│   │   │   ├── adaptive_demux_common.c
│   │   │   ├── adaptive_demux_common.h
│   │   │   ├── adaptive_demux_engine.c
│   │   │   ├── adaptive_demux_engine.h
│   │   │   ├── aesdec.c
│   │   │   ├── aesenc.c
│   │   │   ├── aiffparse.c
│   │   │   ├── asfmux.c
│   │   │   ├── assrender.c
│   │   │   ├── autoconvert.c
│   │   │   ├── autovideoconvert.c
│   │   │   ├── av1parse.c
│   │   │   ├── av1parse.h
│   │   │   ├── avtpaafdepay.c
│   │   │   ├── avtpaafpay.c
│   │   │   ├── avtpcrfbase.c
│   │   │   ├── avtpcrfcheck.c
│   │   │   ├── avtpcrfsync.c
│   │   │   ├── avtpcrfutil.c
│   │   │   ├── avtpcvfdepay.c
│   │   │   ├── avtpcvfpay.c
│   │   │   ├── avtpsink.c
│   │   │   ├── avtpsrc.c
│   │   │   ├── avwait.c
│   │   │   ├── camerabin.c
│   │   │   ├── cccombiner.c
│   │   │   ├── ccconverter.c
│   │   │   ├── ccextractor.c
│   │   │   ├── clockselect.c
│   │   │   ├── cudaconvert.c
│   │   │   ├── cudafilter.c
│   │   │   ├── curlfilesink.c
│   │   │   ├── curlftpsink.c
│   │   │   ├── curlhttpsink.c
│   │   │   ├── curlhttpsrc.c
│   │   │   ├── curlsftpsink.c
│   │   │   ├── curlsmtpsink.c
│   │   │   ├── d3d11colorconvert.c
│   │   │   ├── dash_demux.c
│   │   │   ├── dash_mpd.c
│   │   │   ├── dash_mpd_data/
│   │   │   │   ├── xlink_double_period.period
│   │   │   │   └── xlink_single_period.period
│   │   │   ├── dtls.c
│   │   │   ├── faac.c
│   │   │   ├── faad.c
│   │   │   ├── gdpdepay.c
│   │   │   ├── gdppay.c
│   │   │   ├── h263parse.c
│   │   │   ├── h264parse.c
│   │   │   ├── h265parse.c
│   │   │   ├── hls_demux.c
│   │   │   ├── hlsdemux_m3u8.c
│   │   │   ├── id3mux.c
│   │   │   ├── interlace.c
│   │   │   ├── jifmux.c
│   │   │   ├── jpeg2000parse.c
│   │   │   ├── jpegparse.c
│   │   │   ├── kate.c
│   │   │   ├── line21.c
│   │   │   ├── mfvideosrc.c
│   │   │   ├── mpeg2enc.c
│   │   │   ├── mpeg4videoparse.c
│   │   │   ├── mpegtsdemux.c
│   │   │   ├── mpegtsmux.c
│   │   │   ├── mpegvideoparse.c
│   │   │   ├── mplex.c
│   │   │   ├── msdkh264enc.c
│   │   │   ├── mssdemux.c
│   │   │   ├── mxfdemux.c
│   │   │   ├── mxfdemux.h
│   │   │   ├── mxfmux.c
│   │   │   ├── neonhttpsrc.c
│   │   │   ├── netsim.c
│   │   │   ├── nvdec.c
│   │   │   ├── nvenc.c
│   │   │   ├── ofa.c
│   │   │   ├── openjpeg.c
│   │   │   ├── parser.c
│   │   │   ├── parser.h
│   │   │   ├── pcapparse.c
│   │   │   ├── pnm.c
│   │   │   ├── ristrtpext.c
│   │   │   ├── rtponvifparse.c
│   │   │   ├── rtponviftimestamp.c
│   │   │   ├── rtpsink.c
│   │   │   ├── rtpsrc.c
│   │   │   ├── shm.c
│   │   │   ├── srtp.c
│   │   │   ├── svthevcenc.c
│   │   │   ├── switchbin.c
│   │   │   ├── templatematch.c
│   │   │   ├── test_http_src.c
│   │   │   ├── test_http_src.h
│   │   │   ├── uvch264demux.c
│   │   │   ├── uvch264demux_data/
│   │   │   │   ├── valid_h264_jpg.h264
│   │   │   │   ├── valid_h264_jpg.mjpg
│   │   │   │   ├── valid_h264_yuy2.h264
│   │   │   │   ├── valid_h264_yuy2.mjpg
│   │   │   │   └── valid_h264_yuy2.yuy2
│   │   │   ├── videoframe-audiolevel.c
│   │   │   ├── viewfinderbin.c
│   │   │   ├── vkcolorconvert.c
│   │   │   ├── vkdeviceprovider.c
│   │   │   ├── voaacenc.c
│   │   │   ├── voamrwbenc.c
│   │   │   ├── vp9parse.c
│   │   │   ├── vp9parse.h
│   │   │   ├── wasapi.c
│   │   │   ├── wasapi2.c
│   │   │   ├── webrtcbin.c
│   │   │   ├── x265enc.c
│   │   │   ├── zbar.c
│   │   │   └── zxing.c
│   │   ├── generic/
│   │   │   └── states.c
│   │   ├── gst-plugins-bad.supp
│   │   ├── libs/
│   │   │   ├── av1parser.c
│   │   │   ├── h264parser.c
│   │   │   ├── h265parser.c
│   │   │   ├── insertbin.c
│   │   │   ├── isoff.c
│   │   │   ├── isoff.h
│   │   │   ├── mpegts.c
│   │   │   ├── mpegvideoparser.c
│   │   │   ├── nalutils.c
│   │   │   ├── planaraudioadapter.c
│   │   │   ├── play.c
│   │   │   ├── vc1parser.c
│   │   │   ├── vkcommandpool.c
│   │   │   ├── vkdevice.c
│   │   │   ├── vkimage.c
│   │   │   ├── vkinstance.c
│   │   │   ├── vkmemory.c
│   │   │   ├── vkwindow.c
│   │   │   ├── vp8parser.c
│   │   │   └── vp9parser.c
│   │   ├── media/
│   │   │   ├── download-media
│   │   │   └── meson.build
│   │   ├── meson.build
│   │   └── pipelines/
│   │       ├── ipcpipeline.c
│   │       ├── mxf.c
│   │       └── streamheader.c
│   ├── examples/
│   │   ├── audiomixmatrix/
│   │   │   ├── meson.build
│   │   │   └── test-audiomixmatrix.c
│   │   ├── avsamplesink/
│   │   │   ├── main.m
│   │   │   └── meson.build
│   │   ├── camerabin2/
│   │   │   ├── gst-camera2.c
│   │   │   ├── gst-camera2.h
│   │   │   ├── gst-camera2.ui
│   │   │   ├── gst-camerabin2-test.c
│   │   │   └── meson.build
│   │   ├── codecparsers/
│   │   │   ├── meson.build
│   │   │   ├── parse-jpeg.c
│   │   │   └── parse-vp8.c
│   │   ├── d3d11videosink/
│   │   │   ├── d3d11device.cpp
│   │   │   ├── d3d11device.h
│   │   │   ├── d3d11videosink-kb.c
│   │   │   ├── d3d11videosink-kb.h
│   │   │   ├── d3d11videosink-shared-texture-d3d9ex.cpp
│   │   │   ├── d3d11videosink-shared-texture.cpp
│   │   │   ├── d3d11videosink.c
│   │   │   └── meson.build
│   │   ├── directfb/
│   │   │   ├── gstdfb.c
│   │   │   └── meson.build
│   │   ├── ipcpipeline/
│   │   │   ├── ipc-play.c
│   │   │   ├── ipcpipeline1.c
│   │   │   └── meson.build
│   │   ├── meson.build
│   │   ├── mpegts/
│   │   │   ├── meson.build
│   │   │   ├── ts-parser.c
│   │   │   ├── ts-scte-writer.c
│   │   │   ├── ts-section-writer.c
│   │   │   └── tsmux-prog-map.c
│   │   ├── msdk/
│   │   │   ├── meson.build
│   │   │   └── test-roi.c
│   │   ├── mxf/
│   │   │   ├── meson.build
│   │   │   └── mxfdemux-structure.c
│   │   ├── nvcodec/
│   │   │   ├── meson.build
│   │   │   ├── nvcodec-kb.c
│   │   │   ├── nvcodec.c
│   │   │   └── nvcodec.h
│   │   ├── opencv/
│   │   │   ├── gstfacedetect_test.c
│   │   │   ├── gsthanddetect_test.c
│   │   │   ├── gstmotioncells_dynamic_test.c
│   │   │   └── meson.build
│   │   ├── playout.c
│   │   ├── uvch264/
│   │   │   ├── boolean_property.glade
│   │   │   ├── enum_property.glade
│   │   │   ├── enum_property_gtk2.glade
│   │   │   ├── int_property.glade
│   │   │   ├── meson.build
│   │   │   ├── test-uvch264.c
│   │   │   └── window.glade
│   │   ├── va/
│   │   │   ├── main.c
│   │   │   ├── meson.build
│   │   │   └── multiple-vpp.c
│   │   ├── waylandsink/
│   │   │   ├── main.c
│   │   │   ├── meson.build
│   │   │   ├── wayland-threads.c
│   │   │   └── window.ui
│   │   ├── webrtc/
│   │   │   ├── meson.build
│   │   │   ├── webrtc.c
│   │   │   ├── webrtcbidirectional.c
│   │   │   ├── webrtcrenego.c
│   │   │   ├── webrtcswap.c
│   │   │   └── webrtctransceiver.c
│   │   └── wpe/
│   │       ├── meson.build
│   │       └── wpe.c
│   ├── files/
│   │   ├── s16be-id3v2.aiff
│   │   └── test.ts
│   ├── icles/
│   │   ├── meson.build
│   │   └── pitch-test.c
│   ├── meson.build
│   └── validate/
│       ├── meson.build
│       └── opencv/
│           ├── cvtracker/
│           │   └── flow-expectations/
│           │       └── log-tracker-src-expected
│           └── cvtracker.validatetest
└── tools/
    ├── element-templates/
    │   ├── audiodecoder
    │   ├── audioencoder
    │   ├── audiofilter
    │   ├── audiosink
    │   ├── audiosrc
    │   ├── baseparse
    │   ├── basesink
    │   ├── basesrc
    │   ├── basetransform
    │   ├── element
    │   ├── gobject
    │   ├── sinkpad
    │   ├── sinkpad-audio
    │   ├── sinkpad-simple
    │   ├── sinkpad-template
    │   ├── sinkpad-template-video
    │   ├── srcpad
    │   ├── srcpad-audio
    │   ├── srcpad-simple
    │   ├── srcpad-template
    │   ├── srcpad-template-video
    │   ├── videodecoder
    │   ├── videoencoder
    │   ├── videofilter
    │   └── videosink
    ├── gst-app-maker
    ├── gst-element-maker
    ├── gst-element-maker-test.sh
    ├── gst-project-maker
    ├── gst-transcoder.c
    ├── meson.build
    ├── utils.c
    └── utils.h
Download .txt
Showing preview only (1,791K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (28358 symbols across 2032 files)

FILE: ext/aes/gstaes.c
  function gboolean (line 41) | static gboolean

FILE: ext/aes/gstaesdec.c
  function gst_aes_dec_class_init (line 121) | static void
  function gst_aes_dec_init (line 234) | static void
  function gst_aes_dec_finalize (line 244) | static void
  function gst_aes_dec_set_property (line 254) | static void
  function gst_aes_dec_get_property (line 322) | static void
  function gboolean (line 350) | static gboolean
  function GstFlowReturn (line 430) | static GstFlowReturn
  function GstFlowReturn (line 526) | static GstFlowReturn
  function gboolean (line 558) | static gboolean
  function gboolean (line 578) | static gboolean
  function gboolean (line 596) | static gboolean
  function gboolean (line 608) | static gboolean

FILE: ext/aes/gstaesdec.h
  type _GstAesDec (line 62) | struct _GstAesDec
  type _GstAesDecClass (line 82) | struct _GstAesDecClass

FILE: ext/aes/gstaesenc.c
  function gst_aes_enc_class_init (line 120) | static void
  function gst_aes_enc_init (line 234) | static void
  function gst_aes_enc_finalize (line 244) | static void
  function gst_aes_enc_set_property (line 253) | static void
  function gst_aes_enc_get_property (line 320) | static void
  function gboolean (line 348) | static gboolean
  function GstFlowReturn (line 427) | static GstFlowReturn
  function GstFlowReturn (line 514) | static GstFlowReturn
  function gboolean (line 549) | static gboolean
  function gboolean (line 565) | static gboolean
  function gboolean (line 577) | static gboolean

FILE: ext/aes/gstaesenc.h
  type _GstAesEnc (line 62) | struct _GstAesEnc
  type _GstAesEncClass (line 84) | struct _GstAesEncClass

FILE: ext/aes/gstaeshelper.c
  function GType (line 53) | GType
  function gchar (line 77) | const gchar *
  function gchar (line 93) | gchar
  function gchar (line 110) | gchar *
  function guint (line 140) | guint

FILE: ext/aes/gstaeshelper.h
  type GstAesCipher (line 64) | typedef enum {

FILE: ext/aom/gstaom.c
  function gboolean (line 29) | static gboolean

FILE: ext/aom/gstav1dec.c
  function gst_av1_dec_class_init (line 100) | static void
  function gst_av1_dec_init (line 136) | static void
  function gst_av1_dec_set_property (line 148) | static void
  function gst_av1_dec_get_property (line 159) | static void
  function gboolean (line 170) | static gboolean
  function gboolean (line 182) | static gboolean
  function gboolean (line 205) | static gboolean
  function gboolean (line 229) | static gboolean
  function GstFlowReturn (line 247) | static GstFlowReturn
  function gst_av1_dec_handle_resolution_change (line 264) | static void
  function gst_av1_dec_image_to_buffer (line 285) | static void
  function gboolean (line 338) | gboolean
  function GstFlowReturn (line 413) | static GstFlowReturn

FILE: ext/aom/gstav1dec.h
  type GstAV1Dec (line 47) | typedef struct _GstAV1Dec GstAV1Dec;
  type GstAV1DecClass (line 48) | typedef struct _GstAV1DecClass GstAV1DecClass;
  type _GstAV1Dec (line 50) | struct _GstAV1Dec
  type _GstAV1DecClass (line 62) | struct _GstAV1DecClass

FILE: ext/aom/gstav1enc.c
  function GType (line 53) | static GType
  function GType (line 74) | static GType
  function GType (line 100) | static GType
  function gst_av1_enc_class_init (line 224) | static void
  function gst_av1_codec_error (line 408) | static void
  function gst_av1_enc_init (line 416) | static void
  function gst_av1_enc_finalize (line 457) | static void
  function gst_av1_enc_set_latency (line 473) | static void
  function gchar (line 497) | static const gchar *
  function gst_av1_enc_debug_encoder_cfg (line 514) | static void
  function gint (line 561) | static gint
  function gst_av1_enc_adjust_profile (line 600) | static void
  function gboolean (line 648) | static gboolean
  function GstFlowReturn (line 729) | static GstFlowReturn
  function gst_av1_enc_fill_image (line 771) | static void
  function GstFlowReturn (line 784) | static GstFlowReturn
  function GstFlowReturn (line 832) | static GstFlowReturn
  function gst_av1_enc_destroy_encoder (line 858) | static void
  function gboolean (line 869) | static gboolean
  function gst_av1_enc_set_property (line 878) | static void
  function gst_av1_enc_get_property (line 1004) | static void
  function gboolean (line 1092) | static gboolean
  function gboolean (line 1098) | static gboolean

FILE: ext/aom/gstav1enc.h
  type GstAV1Enc (line 49) | typedef struct _GstAV1Enc GstAV1Enc;
  type GstAV1EncClass (line 50) | typedef struct _GstAV1EncClass GstAV1EncClass;
  type GstAV1EncResizeMode (line 60) | typedef enum
  type GstAV1EncSuperresMode (line 78) | typedef enum
  type GstAV1EncEndUsageMode (line 97) | typedef enum
  type _GstAV1Enc (line 106) | struct _GstAV1Enc
  type _GstAV1EncClass (line 129) | struct _GstAV1EncClass

FILE: ext/aom/gstav1utils.c
  type AomImageFormat (line 26) | typedef struct
  function gint (line 66) | gint

FILE: ext/assrender/gstassrender.c
  function gst_ass_render_class_init (line 152) | static void
  function _libass_message_cb (line 193) | static void
  function gst_ass_render_init (line 213) | static void
  function gst_ass_render_finalize (line 277) | static void
  function gst_ass_render_reset_composition (line 302) | static void
  function gst_ass_render_set_property (line 311) | static void
  function gst_ass_render_get_property (line 338) | static void
  function gst_ass_render_pop_text (line 363) | static void
  function GstStateChangeReturn (line 379) | static GstStateChangeReturn
  function gboolean (line 430) | static gboolean
  function gboolean (line 455) | static gboolean
  function GstCaps (line 483) | static GstCaps *
  function GstCaps (line 518) | static GstCaps *
  function GstCaps (line 554) | static GstCaps *
  function GstCaps (line 615) | static GstCaps *
  function blit_bgra_premultiplied (line 678) | static void
  function gboolean (line 745) | static gboolean
  function gst_ass_render_update_render_size (line 759) | static void
  function gboolean (line 777) | static gboolean
  function gboolean (line 956) | static gboolean
  function gboolean (line 988) | static gboolean
  function gst_ass_render_process_text (line 1037) | static void
  function GstVideoOverlayComposition (line 1064) | static GstVideoOverlayComposition *
  function gboolean (line 1137) | static gboolean
  function GstFlowReturn (line 1166) | static GstFlowReturn
  function GstFlowReturn (line 1482) | static GstFlowReturn
  function gst_ass_render_handle_tag_sample (line 1550) | static void
  function gst_ass_render_handle_tags (line 1613) | static void
  function gboolean (line 1638) | static gboolean
  function gboolean (line 1725) | static gboolean
  function gboolean (line 1752) | static gboolean
  function gboolean (line 1880) | static gboolean

FILE: ext/assrender/gstassrender.h
  type GstAssRender (line 47) | typedef struct _GstAssRender GstAssRender;
  type GstAssRenderClass (line 48) | typedef struct _GstAssRenderClass GstAssRenderClass;
  type _GstAssRender (line 50) | struct _GstAssRender
  type _GstAssRenderClass (line 90) | struct _GstAssRenderClass

FILE: ext/avtp/gstavtp.c
  function gboolean (line 249) | static gboolean

FILE: ext/avtp/gstavtpaafdepay.c
  function gst_avtp_aaf_depay_class_init (line 65) | static void
  function gst_avtp_aaf_depay_init (line 86) | static void
  function gchar (line 95) | static const gchar *
  function gint (line 121) | static gint
  function gboolean (line 150) | static gboolean
  function gboolean (line 183) | static gboolean
  function GstFlowReturn (line 209) | static GstFlowReturn

FILE: ext/avtp/gstavtpaafdepay.h
  type GstAvtpAafDepay (line 41) | typedef struct _GstAvtpAafDepay GstAvtpAafDepay;
  type GstAvtpAafDepayClass (line 42) | typedef struct _GstAvtpAafDepayClass GstAvtpAafDepayClass;
  type _GstAvtpAafDepay (line 44) | struct _GstAvtpAafDepay
  type _GstAvtpAafDepayClass (line 54) | struct _GstAvtpAafDepayClass

FILE: ext/avtp/gstavtpaafpay.c
  function GType (line 66) | static GType
  function gst_avtp_aaf_pay_class_init (line 107) | static void
  function gst_avtp_aaf_pay_init (line 145) | static void
  function gst_avtp_aaf_pay_set_property (line 157) | static void
  function gst_avtp_aaf_pay_get_property (line 175) | static void
  function GstStateChangeReturn (line 193) | static GstStateChangeReturn
  function GstFlowReturn (line 263) | static GstFlowReturn
  function gst_to_avtp_rate (line 308) | static int
  function gst_to_avtp_format (line 337) | static int
  function gboolean (line 354) | static gboolean
  function gboolean (line 376) | static gboolean

FILE: ext/avtp/gstavtpaafpay.h
  type GstAvtpAafPay (line 41) | typedef struct _GstAvtpAafPay GstAvtpAafPay;
  type GstAvtpAafPayClass (line 42) | typedef struct _GstAvtpAafPayClass GstAvtpAafPayClass;
  type GstAvtpAafTimestampMode (line 43) | typedef enum _GstAvtpAafTimestampMode GstAvtpAafTimestampMode;
  type _GstAvtpAafTimestampMode (line 45) | enum _GstAvtpAafTimestampMode {
  type _GstAvtpAafPay (line 50) | struct _GstAvtpAafPay
  type _GstAvtpAafPayClass (line 63) | struct _GstAvtpAafPayClass

FILE: ext/avtp/gstavtpbasedepayload.c
  function GType (line 54) | GType
  function gst_avtp_base_depayload_class_init (line 81) | static void
  function gst_avtp_base_depayload_init (line 104) | static void
  function gst_avtp_base_depayload_set_property (line 136) | static void
  function gst_avtp_base_depayload_get_property (line 154) | static void
  function gboolean (line 172) | static gboolean
  function GstClockTime (line 204) | GstClockTime
  function gboolean (line 224) | gboolean

FILE: ext/avtp/gstavtpbasedepayload.h
  type GstAvtpBaseDepayload (line 39) | typedef struct _GstAvtpBaseDepayload GstAvtpBaseDepayload;
  type GstAvtpBaseDepayloadClass (line 40) | typedef struct _GstAvtpBaseDepayloadClass GstAvtpBaseDepayloadClass;
  type _GstAvtpBaseDepayload (line 42) | struct _GstAvtpBaseDepayload
  type _GstAvtpBaseDepayloadClass (line 57) | struct _GstAvtpBaseDepayloadClass

FILE: ext/avtp/gstavtpbasepayload.c
  function GType (line 59) | GType
  function gst_avtp_base_payload_class_init (line 86) | static void
  function gst_avtp_base_payload_init (line 122) | static void
  function gst_avtp_base_payload_set_property (line 157) | static void
  function gst_avtp_base_payload_get_property (line 184) | static void
  function gboolean (line 211) | static gboolean
  function GstClockTime (line 228) | GstClockTime

FILE: ext/avtp/gstavtpbasepayload.h
  type GstAvtpBasePayload (line 39) | typedef struct _GstAvtpBasePayload GstAvtpBasePayload;
  type GstAvtpBasePayloadClass (line 40) | typedef struct _GstAvtpBasePayloadClass GstAvtpBasePayloadClass;
  type _GstAvtpBasePayload (line 42) | struct _GstAvtpBasePayload
  type _GstAvtpBasePayloadClass (line 61) | struct _GstAvtpBasePayloadClass

FILE: ext/avtp/gstavtpcrfbase.c
  function gst_avtp_crf_base_class_init (line 80) | static void
  function gst_avtp_crf_base_init (line 119) | static void
  function GstStateChangeReturn (line 127) | static GstStateChangeReturn
  function setup_socket (line 174) | static int
  function gboolean (line 246) | static gboolean
  function gdouble (line 382) | static gdouble
  function calculate_average_period (line 404) | static void
  function crf_listener_thread_func (line 475) | static void
  function gst_avtp_crf_base_finalize (line 526) | static void
  function gst_avtp_crf_base_set_property (line 537) | static void
  function gst_avtp_crf_base_get_property (line 563) | static void

FILE: ext/avtp/gstavtpcrfbase.h
  type GstAvtpCrfBase (line 38) | typedef struct _GstAvtpCrfBase GstAvtpCrfBase;
  type GstAvtpCrfBaseClass (line 39) | typedef struct _GstAvtpCrfBaseClass GstAvtpCrfBaseClass;
  type GstAvtpCrfThreadData (line 40) | typedef struct _GstAvtpCrfThreadData GstAvtpCrfThreadData;
  type _GstAvtpCrfThreadData (line 42) | struct _GstAvtpCrfThreadData
  type _GstAvtpCrfBase (line 63) | struct _GstAvtpCrfBase
  type _GstAvtpCrfBaseClass (line 74) | struct _GstAvtpCrfBaseClass

FILE: ext/avtp/gstavtpcrfcheck.c
  function gst_avtp_crf_check_class_init (line 71) | static void
  function gst_avtp_crf_check_init (line 99) | static void
  function gst_avtp_crf_check_set_property (line 105) | static void
  function gst_avtp_crf_check_get_property (line 123) | static void
  function post_qos_message (line 141) | static void
  function GstFlowReturn (line 160) | static GstFlowReturn

FILE: ext/avtp/gstavtpcrfcheck.h
  type GstAvtpCrfCheck (line 38) | typedef struct _GstAvtpCrfCheck GstAvtpCrfCheck;
  type GstAvtpCrfCheckClass (line 39) | typedef struct _GstAvtpCrfCheckClass GstAvtpCrfCheckClass;
  type _GstAvtpCrfCheck (line 41) | struct _GstAvtpCrfCheck
  type _GstAvtpCrfCheckClass (line 48) | struct _GstAvtpCrfCheckClass

FILE: ext/avtp/gstavtpcrfsync.c
  function gst_avtp_crf_sync_class_init (line 62) | static void
  function gst_avtp_crf_sync_init (line 80) | static void
  function set_avtp_tstamp (line 86) | static void
  function set_avtp_mr_bit (line 112) | static void
  function GstFlowReturn (line 138) | static GstFlowReturn

FILE: ext/avtp/gstavtpcrfsync.h
  type GstAvtpCrfSync (line 38) | typedef struct _GstAvtpCrfSync GstAvtpCrfSync;
  type GstAvtpCrfSyncClass (line 39) | typedef struct _GstAvtpCrfSyncClass GstAvtpCrfSyncClass;
  type _GstAvtpCrfSync (line 41) | struct _GstAvtpCrfSync
  type _GstAvtpCrfSyncClass (line 46) | struct _GstAvtpCrfSyncClass

FILE: ext/avtp/gstavtpcrfutil.c
  function gboolean (line 29) | gboolean
  function GstClockTime (line 55) | GstClockTime
  function gboolean (line 93) | gboolean

FILE: ext/avtp/gstavtpcrfutil.h
  type avtp_stream_pdu (line 29) | struct avtp_stream_pdu
  type avtp_stream_pdu (line 30) | struct avtp_stream_pdu

FILE: ext/avtp/gstavtpcvfdepay.c
  function gst_avtp_cvf_depay_class_init (line 89) | static void
  function gst_avtp_cvf_depay_init (line 113) | static void
  function GstStateChangeReturn (line 121) | static GstStateChangeReturn
  function gboolean (line 143) | static gboolean
  function GstFlowReturn (line 178) | static GstFlowReturn
  function GstFlowReturn (line 272) | static GstFlowReturn
  function gboolean (line 294) | static gboolean
  function guint8 (line 399) | static guint8
  function gst_avtp_cvf_depay_get_avtp_timestamps (line 414) | static void
  function GstFlowReturn (line 448) | static GstFlowReturn
  function gst_avtp_cvf_depay_get_M (line 474) | static void
  function gst_avtp_cvf_depay_get_nalu_size (line 490) | static void
  function GstFlowReturn (line 507) | static GstFlowReturn
  function GstFlowReturn (line 563) | static GstFlowReturn
  function GstFlowReturn (line 645) | static GstFlowReturn
  function GstFlowReturn (line 689) | static GstFlowReturn

FILE: ext/avtp/gstavtpcvfdepay.h
  type GstAvtpCvfDepay (line 41) | typedef struct _GstAvtpCvfDepay GstAvtpCvfDepay;
  type GstAvtpCvfDepayClass (line 42) | typedef struct _GstAvtpCvfDepayClass GstAvtpCvfDepayClass;
  type _GstAvtpCvfDepay (line 44) | struct _GstAvtpCvfDepay
  type _GstAvtpCvfDepayClass (line 53) | struct _GstAvtpCvfDepayClass

FILE: ext/avtp/gstavtpcvfpay.c
  function gst_avtp_cvf_pay_class_init (line 103) | static void
  function gst_avtp_cvf_pay_init (line 150) | static void
  function gst_avtp_cvf_set_property (line 161) | static void
  function gst_avtp_cvf_get_property (line 185) | static void
  function GstStateChangeReturn (line 209) | static GstStateChangeReturn
  function gst_avtp_cvf_pay_extract_nals (line 254) | static void
  function gboolean (line 326) | static gboolean
  function GstBuffer (line 337) | static GstBuffer *
  function gst_avtp_cvf_pay_spread_ts (line 414) | static void
  function gboolean (line 522) | static gboolean
  function GstFlowReturn (line 639) | static GstFlowReturn
  function GstFlowReturn (line 659) | static GstFlowReturn
  function gboolean (line 691) | static gboolean
  function gboolean (line 734) | static gboolean

FILE: ext/avtp/gstavtpcvfpay.h
  type GstAvtpCvfPay (line 41) | typedef struct _GstAvtpCvfPay GstAvtpCvfPay;
  type GstAvtpCvfPayClass (line 42) | typedef struct _GstAvtpCvfPayClass GstAvtpCvfPayClass;
  type _GstAvtpCvfPay (line 44) | struct _GstAvtpCvfPay
  type _GstAvtpCvfPayClass (line 58) | struct _GstAvtpCvfPayClass

FILE: ext/avtp/gstavtpsink.c
  function gst_avtp_sink_class_init (line 102) | static void
  function gst_avtp_sink_init (line 144) | static void
  function gst_avtp_sink_finalize (line 156) | static void
  function gst_avtp_sink_set_property (line 167) | static void
  function gst_avtp_sink_get_property (line 193) | static void
  function gboolean (line 217) | static gboolean
  function gst_avtp_sink_init_msghdr (line 283) | static void
  function gboolean (line 305) | static gboolean
  function gboolean (line 320) | static gboolean
  function GstClockTime (line 337) | static GstClockTime
  function gst_avtp_sink_process_error_queue (line 370) | static void
  function GstFlowReturn (line 415) | static GstFlowReturn
  function gst_avtp_sink_get_times (line 468) | static void

FILE: ext/avtp/gstavtpsink.h
  type GstAvtpSink (line 41) | typedef struct _GstAvtpSink GstAvtpSink;
  type GstAvtpSinkClass (line 42) | typedef struct _GstAvtpSinkClass GstAvtpSinkClass;
  type _GstAvtpSink (line 44) | struct _GstAvtpSink
  type _GstAvtpSinkClass (line 57) | struct _GstAvtpSinkClass

FILE: ext/avtp/gstavtpsrc.c
  function gst_avtp_src_class_init (line 92) | static void
  function gst_avtp_src_init (line 129) | static void
  function gst_avtp_src_finalize (line 141) | static void
  function gst_avtp_src_set_property (line 152) | static void
  function gst_avtp_src_get_property (line 175) | static void
  function gboolean (line 196) | static gboolean
  function gboolean (line 258) | static gboolean
  function GstFlowReturn (line 269) | static GstFlowReturn

FILE: ext/avtp/gstavtpsrc.h
  type GstAvtpSrc (line 40) | typedef struct _GstAvtpSrc GstAvtpSrc;
  type GstAvtpSrcClass (line 41) | typedef struct _GstAvtpSrcClass GstAvtpSrcClass;
  type _GstAvtpSrc (line 43) | struct _GstAvtpSrc
  type _GstAvtpSrcClass (line 53) | struct _GstAvtpSrcClass

FILE: ext/bs2b/gstbs2b.c
  type GstBs2bPreset (line 78) | typedef struct
  function gchar (line 117) | static gchar **
  function gchar (line 131) | static gchar **
  function gboolean (line 142) | static gboolean
  function gboolean (line 160) | static gboolean
  function gst_preset_interface_init (line 178) | static void
  function gst_bs2b_class_init (line 195) | static void
  function gst_bs2b_init (line 236) | static void
  function gboolean (line 243) | static gboolean
  function gst_bs2b_finalize (line 330) | static void
  function GstFlowReturn (line 341) | static GstFlowReturn
  function gst_bs2b_set_property (line 363) | static void
  function gst_bs2b_get_property (line 388) | static void
  function gboolean (line 411) | static gboolean

FILE: ext/bs2b/gstbs2b.h
  type GstBs2b (line 40) | typedef struct _GstBs2b GstBs2b;
  type GstBs2bClass (line 41) | typedef struct _GstBs2bClass GstBs2bClass;
  type _GstBs2b (line 44) | struct _GstBs2b
  type _GstBs2bClass (line 55) | struct _GstBs2bClass

FILE: ext/bz2/gstbz2.c
  function gboolean (line 30) | static gboolean

FILE: ext/bz2/gstbz2dec.c
  type _GstBz2dec (line 39) | struct _GstBz2dec
  type _GstBz2decClass (line 55) | struct _GstBz2decClass
  function gst_bz2dec_decompress_end (line 74) | static void
  function gst_bz2dec_decompress_init (line 86) | static void
  function GstFlowReturn (line 105) | static GstFlowReturn
  function gst_bz2dec_init (line 194) | static void
  function gst_bz2dec_finalize (line 211) | static void
  function gst_bz2dec_get_property (line 221) | static void
  function gst_bz2dec_set_property (line 239) | static void
  function GstStateChangeReturn (line 257) | static GstStateChangeReturn
  function gst_bz2dec_class_init (line 277) | static void

FILE: ext/bz2/gstbz2dec.h
  type GstBz2dec (line 31) | typedef struct _GstBz2dec GstBz2dec;
  type GstBz2decClass (line 32) | typedef struct _GstBz2decClass GstBz2decClass;

FILE: ext/bz2/gstbz2enc.c
  type _GstBz2enc (line 47) | struct _GstBz2enc
  type _GstBz2encClass (line 63) | struct _GstBz2encClass
  function gst_bz2enc_compress_end (line 72) | static void
  function gst_bz2enc_compress_init (line 84) | static void
  function gboolean (line 103) | static gboolean
  function GstFlowReturn (line 169) | static GstFlowReturn
  function gst_bz2enc_init (line 240) | static void
  function gst_bz2enc_finalize (line 258) | static void
  function gst_bz2enc_get_property (line 268) | static void
  function gst_bz2enc_set_property (line 286) | static void
  function gst_bz2enc_class_init (line 305) | static void

FILE: ext/bz2/gstbz2enc.h
  type GstBz2enc (line 31) | typedef struct _GstBz2enc GstBz2enc;
  type GstBz2encClass (line 32) | typedef struct _GstBz2encClass GstBz2encClass;

FILE: ext/chromaprint/gstchromaprint.c
  function gst_chromaprint_class_init (line 80) | static void
  function gst_chromaprint_reset (line 123) | static void
  function gst_chromaprint_create_fingerprint (line 136) | static void
  function gst_chromaprint_init (line 161) | static void
  function gst_chromaprint_finalize (line 172) | static void
  function GstFlowReturn (line 192) | static GstFlowReturn
  function gboolean (line 238) | static gboolean
  function gst_chromaprint_set_property (line 262) | static void
  function gst_chromaprint_get_property (line 278) | static void
  function gboolean (line 297) | static gboolean
  function gboolean (line 319) | static gboolean

FILE: ext/chromaprint/gstchromaprint.h
  type GstChromaprint (line 47) | typedef struct _GstChromaprint      GstChromaprint;
  type GstChromaprintClass (line 48) | typedef struct _GstChromaprintClass GstChromaprintClass;
  type _GstChromaprint (line 55) | struct _GstChromaprint
  type _GstChromaprintClass (line 68) | struct _GstChromaprintClass

FILE: ext/closedcaption/bcd.h
  type vbi_pgno (line 75) | typedef int vbi_pgno;
  type vbi_subno (line 86) | typedef int vbi_subno;
  function vbi_dec2bcd (line 108) | _vbi_inline unsigned int
  function vbi_bcd2dec (line 132) | _vbi_inline unsigned int
  function vbi_add_bcd (line 158) | _vbi_inline unsigned int
  function _vbi_inline (line 182) | _vbi_inline vbi_bool
  function _vbi_inline (line 205) | _vbi_inline vbi_bool

FILE: ext/closedcaption/bit_slicer.c
  function vbi_bool (line 283) | static vbi_bool
  function vbi_bool (line 456) | static vbi_bool
  function vbi_bool (line 503) | vbi_bool
  function vbi_bool (line 576) | vbi_bool
  function vbi_bool (line 648) | vbi_bool
  function vbi3_bit_slicer_set_log_fn (line 926) | void
  function _vbi3_bit_slicer_destroy (line 943) | void
  function vbi_bool (line 955) | vbi_bool
  function vbi3_bit_slicer_delete (line 973) | void
  function vbi3_bit_slicer (line 990) | vbi3_bit_slicer *

FILE: ext/closedcaption/bit_slicer.h
  type vbi3_bit_slicer (line 71) | typedef struct _vbi3_bit_slicer vbi3_bit_slicer;
  type vbi3_bit_slicer_bit (line 73) | typedef enum {
  type vbi3_bit_slicer_point (line 85) | typedef struct {
  type vbi_bool (line 146) | typedef vbi_bool
  type _vbi3_bit_slicer (line 154) | struct _vbi3_bit_slicer {

FILE: ext/closedcaption/decoder.c
  function sample (line 67) | static inline unsigned int
  function vbi_bool (line 102) | static inline vbi_bool
  function vbi_bool (line 240) | static vbi_bool
  function vbi_bool (line 246) | static vbi_bool
  function vbi_bool (line 252) | static vbi_bool
  function vbi_bool (line 258) | static vbi_bool
  function vbi_bool (line 264) | static vbi_bool
  function vbi_bool (line 270) | static vbi_bool
  function vbi_bool (line 276) | static vbi_bool
  function vbi_bool (line 282) | static vbi_bool
  function vbi_bool (line 288) | static vbi_bool
  function vbi_bool (line 294) | static vbi_bool
  function vbi_bit_slicer_init (line 338) | void
  function vbi_raw_decode (line 507) | int
  function vbi_raw_decoder_resize (line 538) | void
  function vbi_raw_decoder_remove_services (line 592) | unsigned int
  function vbi_raw_decoder_check_services (line 625) | unsigned int
  function vbi_raw_decoder_add_services (line 670) | unsigned int
  function vbi_raw_decoder_parameters (line 721) | unsigned int
  function vbi_raw_decoder_reset (line 765) | void
  function vbi_raw_decoder_destroy (line 792) | void
  function vbi_raw_decoder_init (line 813) | void
  function vbi_initialize_gst_debug (line 831) | void

FILE: ext/closedcaption/decoder.h
  type vbi_pixfmt (line 135) | typedef enum {
  type vbi_pixfmt_set (line 168) | typedef uint64_t vbi_pixfmt_set;
  type vbi_modulation (line 211) | typedef enum {
  type vbi_bit_slicer (line 244) | typedef struct vbi_bit_slicer {
  function _vbi_inline (line 294) | _vbi_inline vbi_bool
  type vbi_raw_decoder (line 309) | typedef struct vbi_raw_decoder {

FILE: ext/closedcaption/gstcccombiner.c
  type CaptionData (line 69) | typedef struct
  type CaptionQueueItem (line 75) | typedef struct
  function caption_data_clear (line 82) | static void
  function clear_scheduled (line 88) | static void
  function gst_cc_combiner_finalize (line 94) | static void
  function guint8 (line 109) | static const guint8 *
  type cdp_fps_entry (line 193) | struct cdp_fps_entry
  type cdp_fps_entry (line 203) | struct cdp_fps_entry
  type cdp_fps_entry (line 205) | struct cdp_fps_entry
  function GstBuffer (line 217) | static GstBuffer *
  function GstBuffer (line 326) | static GstBuffer *
  function queue_caption (line 390) | static void
  function schedule_cdp (line 437) | static void
  function schedule_cea608_s334_1a (line 480) | static void
  function schedule_cea708_raw (line 548) | static void
  function schedule_cea608_raw (line 639) | static void
  function schedule_caption (line 653) | static void
  function dequeue_caption (line 685) | static void
  function GstFlowReturn (line 702) | static GstFlowReturn
  function GstFlowReturn (line 945) | static GstFlowReturn
  function gboolean (line 1083) | static gboolean
  function gboolean (line 1158) | static gboolean
  function GstFlowReturn (line 1178) | static GstFlowReturn
  function GstAggregatorPad (line 1200) | static GstAggregatorPad *
  function gboolean (line 1225) | static gboolean
  function gboolean (line 1261) | static gboolean
  function GstSample (line 1330) | static GstSample *
  function GstStateChangeReturn (line 1381) | static GstStateChangeReturn
  function gst_cc_combiner_set_property (line 1398) | static void
  function gst_cc_combiner_get_property (line 1417) | static void
  function gst_cc_combiner_class_init (line 1436) | static void
  function gst_cc_combiner_init (line 1532) | static void

FILE: ext/closedcaption/gstcccombiner.h
  type GstCCCombiner (line 40) | typedef struct _GstCCCombiner GstCCCombiner;
  type GstCCCombinerClass (line 41) | typedef struct _GstCCCombinerClass GstCCCombinerClass;
  type cdp_fps_entry (line 43) | struct cdp_fps_entry
  type _GstCCCombiner (line 52) | struct _GstCCCombiner
  type _GstCCCombinerClass (line 77) | struct _GstCCCombinerClass

FILE: ext/closedcaption/gstccconverter.c
  function GType (line 78) | static GType
  function gboolean (line 103) | static gboolean
  function GstCaps (line 121) | static GstCaps *
  function GstCaps (line 368) | static GstCaps *
  function gboolean (line 427) | static gboolean
  type cdp_fps_entry (line 474) | struct cdp_fps_entry
  type cdp_fps_entry (line 483) | struct cdp_fps_entry
  type cdp_fps_entry (line 493) | struct cdp_fps_entry
  type cdp_fps_entry (line 495) | struct cdp_fps_entry
  type cdp_fps_entry (line 506) | struct cdp_fps_entry
  function get_framerate_output_scale (line 517) | static void
  function gboolean (line 534) | static gboolean
  function guint (line 603) | static guint
  function gint (line 650) | static gint
  function store_cc_data (line 720) | static void
  function gboolean (line 756) | static gboolean
  function gboolean (line 868) | static gboolean
  function guint (line 1037) | static guint
  function guint (line 1155) | static guint
  function gboolean (line 1300) | static gboolean
  function gboolean (line 1374) | static gboolean
  function gboolean (line 1468) | static gboolean
  function GstFlowReturn (line 1494) | static GstFlowReturn
  function GstFlowReturn (line 1535) | static GstFlowReturn
  function GstFlowReturn (line 1576) | static GstFlowReturn
  function GstFlowReturn (line 1647) | static GstFlowReturn
  function GstFlowReturn (line 1687) | static GstFlowReturn
  function GstFlowReturn (line 1724) | static GstFlowReturn
  function GstFlowReturn (line 1805) | static GstFlowReturn
  function GstFlowReturn (line 1849) | static GstFlowReturn
  function GstFlowReturn (line 1891) | static GstFlowReturn
  function GstFlowReturn (line 1960) | static GstFlowReturn
  function GstFlowReturn (line 2000) | static GstFlowReturn
  function GstFlowReturn (line 2054) | static GstFlowReturn
  function GstFlowReturn (line 2103) | static GstFlowReturn
  function GstFlowReturn (line 2148) | static GstFlowReturn
  function gboolean (line 2288) | static gboolean
  function gboolean (line 2302) | static gboolean
  function reset_counters (line 2332) | static void
  function GstFlowReturn (line 2344) | static GstFlowReturn
  function GstFlowReturn (line 2391) | static GstFlowReturn
  function gboolean (line 2454) | static gboolean
  function gboolean (line 2476) | static gboolean
  function gboolean (line 2493) | static gboolean
  function gst_cc_converter_set_property (line 2504) | static void
  function gst_cc_converter_get_property (line 2520) | static void
  function gst_cc_converter_class_init (line 2536) | static void
  function gst_cc_converter_init (line 2599) | static void

FILE: ext/closedcaption/gstccconverter.h
  type GstCCConverter (line 40) | typedef struct _GstCCConverter GstCCConverter;
  type GstCCConverterClass (line 41) | typedef struct _GstCCConverterClass GstCCConverterClass;
  type GstCCConverterCDPMode (line 46) | typedef enum {
  type _GstCCConverter (line 52) | struct _GstCCConverter
  type _GstCCConverterClass (line 84) | struct _GstCCConverterClass

FILE: ext/closedcaption/gstccextractor.c
  function gst_cc_extractor_class_init (line 88) | static void
  function GstIterator (line 133) | static GstIterator *
  function gst_cc_extractor_reset (line 157) | static void
  function gst_cc_extractor_init (line 174) | static void
  function GstEvent (line 205) | static GstEvent *
  function gboolean (line 224) | static gboolean
  function gboolean (line 261) | static gboolean
  function GstCaps (line 293) | static GstCaps *
  function gboolean (line 305) | static gboolean
  function GstFlowReturn (line 342) | static GstFlowReturn
  function gboolean (line 412) | static gboolean
  function GstFlowReturn (line 421) | static GstFlowReturn
  function GstStateChangeReturn (line 461) | static GstStateChangeReturn
  function gst_cc_extractor_finalize (line 496) | static void
  function gst_cc_extractor_set_property (line 506) | static void
  function gst_cc_extractor_get_property (line 522) | static void

FILE: ext/closedcaption/gstccextractor.h
  type GstCCExtractor (line 40) | typedef struct _GstCCExtractor GstCCExtractor;
  type GstCCExtractorClass (line 41) | typedef struct _GstCCExtractorClass GstCCExtractorClass;
  type _GstCCExtractor (line 43) | struct _GstCCExtractor
  type _GstCCExtractorClass (line 57) | struct _GstCCExtractorClass

FILE: ext/closedcaption/gstcea708decoder.c
  function gst_cea708_decoder_init_debug (line 29) | void
  function Cea708Dec (line 160) | Cea708Dec *
  function gst_cea708dec_free (line 178) | void
  function gst_cea708dec_set_service_number (line 192) | void
  function gboolean (line 209) | gboolean
  function gst_cea708dec_process_dtvcc_byte (line 268) | static void
  function gst_cea708dec_print_command_name (line 320) | static void
  function gst_cea708dec_render_pangocairo (line 415) | static void
  function gst_cea708dec_adjust_values_with_fontdesc (line 484) | static void
  function gint (line 496) | static gint
  function PangoAlignment (line 514) | static const PangoAlignment
  function gchar (line 536) | static const gchar *
  function guint8 (line 573) | static guint8
  function gst_cea708dec_set_pen_color (line 614) | static void
  function gst_cea708dec_set_window_attributes (line 638) | static void
  function gst_cea708dec_set_pen_style (line 668) | static void
  function gst_cea708dec_set_window_style (line 720) | static void
  function gst_cea708dec_define_window (line 772) | static void
  function pango_span_markup_init (line 918) | static inline void
  function pango_span_markup_start (line 929) | static inline void
  function pango_span_markup_txt (line 946) | static inline void
  function pango_span_markup_end (line 962) | static inline void
  function gst_cea708dec_show_pango_window (line 982) | static void
  function gst_cea708dec_clear_window_text (line 1272) | static void
  function gst_cea708dec_scroll_window_up (line 1288) | static void
  function gst_cea708dec_clear_window (line 1316) | static void
  function gst_cea708dec_init_window (line 1323) | static void
  function gst_cea708dec_set_pen_attributes (line 1395) | static void
  function gst_cea708dec_for_each_window (line 1424) | static void
  function gst_cea708dec_process_command (line 1467) | static void
  function get_cea708dec_bufcat (line 1598) | static void
  function gboolean (line 1606) | static gboolean
  function gst_cea708dec_window_add_char (line 1652) | static void
  function gst_cea708dec_process_c2 (line 1767) | static void
  function gst_cea708dec_process_g2 (line 1782) | static void
  function gst_cea708dec_process_c3 (line 1790) | static void
  function gst_cea708dec_process_g3 (line 1805) | static void
  function gst_cea708dec_set_video_width_height (line 1812) | void

FILE: ext/closedcaption/gstcea708decoder.h
  type Cea708Dec (line 141) | typedef struct _Cea708Dec Cea708Dec;
  type Cea708ColorType (line 143) | typedef enum
  type VisibilityControl (line 156) | typedef enum
  type Opacity (line 164) | typedef enum
  type WindowStyle (line 172) | typedef enum
  type PenStyle (line 183) | typedef enum
  type AnchorPoint (line 194) | typedef enum
  type TagType (line 207) | typedef enum
  type JUSTIFY_MODE (line 227) | typedef enum
  type PRINT_DIRECTION (line 235) | typedef enum
  type SCROLL_DIRECTION (line 243) | typedef enum
  type DisplayEffect (line 251) | typedef enum
  type EFFECT_DIRECTION (line 258) | typedef enum
  type BORDER_TYPE (line 266) | typedef enum
  type PenSize (line 274) | typedef enum
  type PenOffset (line 282) | typedef enum
  type EdgeType (line 290) | typedef enum
  type FontStyle (line 302) | typedef enum
  type cea708PenColor (line 314) | typedef struct
  type cea708PangoSpanControl (line 323) | typedef struct
  type cea708PenAttributes (line 340) | typedef struct
  type cea708char (line 352) | typedef struct
  type cea708Window (line 368) | typedef struct
  type _Cea708Dec (line 447) | struct _Cea708Dec

FILE: ext/closedcaption/gstceaccoverlay.c
  function GType (line 104) | static GType
  function GType (line 173) | GType
  function gst_base_cea_cc_overlay_base_init (line 201) | static void
  function gst_base_cea_cc_overlay_class_init (line 221) | static void
  function gst_cea_cc_overlay_finalize (line 295) | static void
  function gst_base_cea_cc_overlay_init (line 318) | static void
  function gboolean (line 385) | static gboolean
  function gboolean (line 495) | static gboolean
  function gboolean (line 509) | static gboolean
  function gst_cea_cc_overlay_set_property (line 547) | static void
  function gst_cea_cc_overlay_get_property (line 599) | static void
  function gboolean (line 628) | static gboolean
  function gboolean (line 657) | static gboolean
  function GstCaps (line 686) | static GstCaps *
  function GstCaps (line 722) | static GstCaps *
  function GstCaps (line 757) | static GstCaps *
  function GstCaps (line 818) | static GstCaps *
  function GstFlowReturn (line 887) | static GstFlowReturn
  function GstPadLinkReturn (line 929) | static GstPadLinkReturn
  function gst_cea_cc_overlay_cc_pad_unlink (line 945) | static void
  function gboolean (line 960) | static gboolean
  function gboolean (line 1073) | static gboolean
  function gboolean (line 1147) | static gboolean
  function gst_cea_cc_overlay_pop_text (line 1177) | static void
  function gst_cea_cc_overlay_image_to_argb (line 1195) | static void
  function gst_cea_cc_overlay_image_to_ayuv (line 1225) | static void
  function gst_cea_cc_overlay_create_and_push_buffer (line 1263) | static void
  function gst_cea_cc_overlay_process_packet (line 1425) | static void
  function gst_cea_cc_overlay_user_data_decode (line 1505) | static void
  function gboolean (line 1574) | static gboolean
  function GstFlowReturn (line 1656) | static GstFlowReturn
  function GstFlowReturn (line 1733) | static GstFlowReturn
  function GstStateChangeReturn (line 1945) | static GstStateChangeReturn

FILE: ext/closedcaption/gstceaccoverlay.h
  type GstCeaCcOverlay (line 43) | typedef struct _GstCeaCcOverlay GstCeaCcOverlay;
  type GstCeaCcOverlayClass (line 44) | typedef struct _GstCeaCcOverlayClass GstCeaCcOverlayClass;
  type DtvccType (line 46) | typedef enum
  type GstCeaCcOverlayWinHPos (line 63) | typedef enum
  type _GstCeaCcOverlay (line 76) | struct _GstCeaCcOverlay
  type _GstCeaCcOverlayClass (line 125) | struct _GstCeaCcOverlayClass

FILE: ext/closedcaption/gstclosedcaption.c
  function gboolean (line 35) | static gboolean

FILE: ext/closedcaption/gstline21dec.c
  function GType (line 77) | static GType
  function gst_line_21_decoder_set_property (line 113) | static void
  function gst_line_21_decoder_get_property (line 132) | static void
  function gst_line_21_decoder_class_init (line 151) | static void
  function gst_line_21_decoder_init (line 223) | static void
  function vbi_pixfmt (line 235) | static vbi_pixfmt
  function gboolean (line 264) | static gboolean
  function GstFlowReturn (line 410) | static GstFlowReturn
  function convert_line_v210_luma (line 429) | static void
  function guint8 (line 453) | static guint8 *
  function gboolean (line 476) | static gboolean
  function gboolean (line 487) | static gboolean
  function GstFlowReturn (line 571) | static GstFlowReturn
  function gboolean (line 584) | static gboolean
  function gst_line_21_decoder_finalize (line 598) | static void

FILE: ext/closedcaption/gstline21dec.h
  type GstLine21Decoder (line 41) | typedef struct _GstLine21Decoder GstLine21Decoder;
  type GstLine21DecoderClass (line 42) | typedef struct _GstLine21DecoderClass GstLine21DecoderClass;
  type GstLine21DecoderMode (line 44) | typedef enum {
  type _GstLine21Decoder (line 50) | struct _GstLine21Decoder
  type _GstLine21DecoderClass (line 74) | struct _GstLine21DecoderClass

FILE: ext/closedcaption/gstline21enc.c
  function gst_line_21_encoder_class_init (line 77) | static void
  function gst_line_21_encoder_init (line 123) | static void
  function gst_line_21_encoder_set_property (line 128) | static void
  function gst_line_21_encoder_get_property (line 144) | static void
  function vbi_pixfmt (line 160) | static vbi_pixfmt
  function gboolean (line 181) | static gboolean
  function guint (line 221) | static guint
  function guint (line 312) | static guint
  function gint (line 359) | static gint
  function GstFlowReturn (line 429) | static GstFlowReturn

FILE: ext/closedcaption/gstline21enc.h
  type GstLine21Encoder (line 41) | typedef struct _GstLine21Encoder GstLine21Encoder;
  type GstLine21EncoderClass (line 42) | typedef struct _GstLine21EncoderClass GstLine21EncoderClass;
  type _GstLine21Encoder (line 44) | struct _GstLine21Encoder
  type _GstLine21EncoderClass (line 55) | struct _GstLine21EncoderClass

FILE: ext/closedcaption/hamm.h
  function vbi_rev8 (line 56) | _vbi_inline unsigned int
  function vbi_rev16 (line 72) | _vbi_inline unsigned int
  function vbi_rev16p (line 90) | _vbi_inline unsigned int
  function vbi_par8 (line 106) | _vbi_inline unsigned int
  function _vbi_inline (line 126) | _vbi_inline int
  function vbi_ham8 (line 168) | _vbi_inline unsigned int
  function _vbi_inline (line 186) | _vbi_inline int
  function _vbi_inline (line 206) | _vbi_inline int

FILE: ext/closedcaption/io-sim.c
  function _vbi_inline (line 105) | _vbi_inline void
  function signal_teletext (line 114) | static void
  function signal_vps (line 155) | static void
  function wss_biphase (line 205) | static void
  function signal_wss_625 (line 246) | static void
  function signal_closed_caption (line 278) | static void
  function clear_image (line 363) | static void
  function vbi_bool (line 405) | vbi_bool
  function vbi_bool (line 495) | static vbi_bool
  function vbi_bool (line 633) | vbi_bool
  function vbi_bool (line 776) | vbi_bool
  function vbi_bool (line 1068) | vbi_bool
  function vbi_bool (line 1124) | vbi_bool

FILE: ext/closedcaption/macros.h
  type vbi_bool (line 86) | typedef int vbi_bool;
  type vbi_log_mask (line 111) | typedef enum {
  type _vbi_log_hook (line 153) | typedef struct {

FILE: ext/closedcaption/misc.h
  function _vbi_inline (line 259) | _vbi_inline int
  type _vbi_key_value_pair (line 273) | typedef struct {
  function VBI_CAT_LEVEL_LOG_valist (line 318) | static inline void
  function VBI_CAT_LEVEL_LOG (line 328) | static inline void
  function VBI_CAT_LEVEL_LOG (line 341) | static inline void
  function _vbi_inline (line 463) | _vbi_inline time_t
  function _vbi_inline (line 480) | _vbi_inline time_t

FILE: ext/closedcaption/raw_decoder.c
  function _vbi_inline (line 257) | _vbi_inline const _vbi_service_par *
  function vbi_sliced_payload_bits (line 310) | unsigned int
  function dump_pattern_line (line 335) | static void
  function _vbi3_raw_decoder_dump (line 377) | void
  function _vbi_inline (line 411) | _vbi_inline int
  function vbi_bool (line 432) | static vbi_bool
  function _vbi_inline (line 450) | _vbi_inline vbi_sliced *
  function vbi3_raw_decoder_decode (line 577) | unsigned int
  function vbi3_raw_decoder_reset (line 633) | void
  function remove_job_from_pattern (line 651) | static void
  function vbi_service_set (line 700) | vbi_service_set
  function vbi_bool (line 731) | static vbi_bool
  function lines_containing_data (line 812) | static void
  function vbi_service_set (line 881) | vbi_service_set
  function vbi_bool (line 1041) | vbi_bool
  function vbi_bool (line 1059) | vbi_bool
  function vbi_service_set (line 1111) | vbi_service_set
  function vbi_service_set (line 1136) | vbi_service_set
  function vbi3_raw_decoder_get_sampling_par (line 1168) | void vbi3_raw_decoder_get_sampling_par
  function vbi3_raw_decoder_set_log_fn (line 1177) | void
  function _vbi3_raw_decoder_destroy (line 1202) | void
  function vbi_bool (line 1218) | vbi_bool
  function vbi3_raw_decoder_delete (line 1241) | void
  function vbi3_raw_decoder (line 1267) | vbi3_raw_decoder *

FILE: ext/closedcaption/raw_decoder.h
  type _vbi3_raw_decoder (line 42) | struct _vbi3_raw_decoder
  type _vbi3_raw_decoder_job (line 102) | typedef struct {
  type _vbi3_raw_decoder_sp_line (line 108) | typedef struct {
  type _vbi3_raw_decoder (line 118) | struct _vbi3_raw_decoder {
  type _vbi_service_par_flag (line 135) | typedef enum {
  type _vbi_service_par (line 142) | typedef struct _vbi_service_par _vbi_service_par;
  type _vbi_service_par (line 145) | struct _vbi_service_par {

FILE: ext/closedcaption/sampling_par.c
  function vbi_videostd_set (line 48) | vbi_videostd_set
  function _vbi_inline (line 65) | _vbi_inline vbi_bool
  function vbi_bool (line 80) | vbi_bool
  function vbi_bool (line 169) | static vbi_bool
  function vbi_service_set (line 332) | vbi_service_set
  function vbi_service_set (line 357) | vbi_service_set
  function vbi_service_set (line 503) | vbi_service_set
  function vbi_service_set (line 535) | vbi_service_set

FILE: ext/closedcaption/sampling_par.h
  type vbi_videostd_set (line 40) | typedef uint64_t vbi_videostd_set;

FILE: ext/closedcaption/sliced.h
  type vbi_service_set (line 311) | typedef unsigned int vbi_service_set;
  type vbi_sliced (line 321) | typedef struct {

FILE: ext/colormanagement/gstcolormanagement.c
  function gboolean (line 27) | static gboolean

FILE: ext/colormanagement/gstlcms.c
  function GType (line 67) | GType
  function GType (line 90) | static GType
  function gst_lcms_class_init (line 163) | static void
  function gst_lcms_init (line 234) | static void
  function gst_lcms_finalize (line 243) | static void
  function gst_lcms_set_intent (line 254) | static void
  function GstLcmsIntent (line 278) | static GstLcmsIntent
  function gst_lcms_set_lookup_method (line 285) | static void
  function GstLcmsLookupMethod (line 309) | static GstLcmsLookupMethod
  function gst_lcms_set_property (line 316) | static void
  function gst_lcms_get_property (line 376) | static void
  function GstStateChangeReturn (line 407) | static GstStateChangeReturn
  function gst_lcms_get_ready (line 456) | static void
  function gst_lcms_cleanup_cms (line 487) | static void
  function gst_lcms_init_lookup_table (line 504) | static void
  function cmsUInt32Number (line 540) | static cmsUInt32Number
  function gboolean (line 573) | static gboolean
  function gst_lcms_create_transform (line 612) | static void
  function gboolean (line 633) | static gboolean
  function gst_lcms_handle_tag_sample (line 659) | static void
  function gst_lcms_handle_tags (line 699) | static void
  function GstFlowReturn (line 721) | static GstFlowReturn
  function GstFlowReturn (line 730) | static GstFlowReturn
  function gst_lcms_process_rgb (line 740) | static void

FILE: ext/colormanagement/gstlcms.h
  type GstLcmsLookupMethod (line 44) | typedef enum
  type GstLcms (line 61) | typedef struct _GstLcms GstLcms;
  type GstLcmsClass (line 62) | typedef struct _GstLcmsClass GstLcmsClass;
  type _GstLcms (line 69) | struct _GstLcms
  type _GstLcmsClass (line 93) | struct _GstLcmsClass

FILE: ext/curl/gstcurl.c
  function gboolean (line 26) | static gboolean

FILE: ext/curl/gstcurlbasesink.c
  function gboolean (line 155) | static gboolean
  function gboolean (line 161) | static gboolean
  function gst_curl_base_sink_class_init (line 175) | static void
  function gst_curl_base_sink_init (line 243) | static void
  function gst_curl_base_sink_finalize (line 262) | static void
  function gst_curl_base_sink_transfer_thread_notify_unlocked (line 287) | void
  function gst_curl_base_sink_transfer_thread_close (line 298) | void
  function gst_curl_base_sink_set_live (line 314) | void
  function gboolean (line 324) | gboolean
  function GstFlowReturn (line 338) | static GstFlowReturn
  function gboolean (line 410) | static gboolean
  function gboolean (line 436) | static gboolean
  function gboolean (line 462) | static gboolean
  function gboolean (line 476) | static gboolean
  function gboolean (line 489) | static gboolean
  function gst_curl_base_sink_set_property (line 502) | static void
  function gst_curl_base_sink_get_property (line 583) | static void
  function gboolean (line 617) | static gboolean
  function gboolean (line 744) | static gboolean
  function transfer_data_buffer (line 777) | static size_t
  function gst_curl_base_sink_transfer_data_buffer (line 800) | static size_t
  function gst_curl_base_sink_transfer_read_cb (line 820) | static size_t
  function gst_curl_base_sink_transfer_write_cb (line 877) | static size_t
  function gst_curl_base_sink_transfer_seek_cb (line 902) | static int
  function CURLcode (line 941) | CURLcode
  function handle_transfer (line 969) | static void
  function gst_curl_base_sink_debug_cb (line 1084) | static int
  function gst_curl_base_sink_transfer_socket_cb (line 1139) | static int
  function gboolean (line 1178) | static gboolean
  function gpointer (line 1203) | static gpointer
  function gboolean (line 1301) | static gboolean
  function gst_curl_base_sink_transfer_cleanup (line 1333) | static void
  function gboolean (line 1350) | static gboolean
  function gst_curl_base_sink_new_file_notify_unlocked (line 1373) | static void
  function gst_curl_base_sink_wait_for_transfer_thread_to_send_unlocked (line 1381) | static void
  function gst_curl_base_sink_data_sent_notify (line 1397) | static void
  function gst_curl_base_sink_wait_for_response (line 1408) | static void
  function gst_curl_base_sink_got_response_notify (line 1422) | static void
  function gint (line 1433) | static gint

FILE: ext/curl/gstcurlbasesink.h
  type GstCurlBaseSink (line 40) | typedef struct _GstCurlBaseSink GstCurlBaseSink;
  type GstCurlBaseSinkClass (line 41) | typedef struct _GstCurlBaseSinkClass GstCurlBaseSinkClass;
  type TransferBuffer (line 43) | typedef struct _TransferBuffer TransferBuffer;
  type TransferCondition (line 44) | typedef struct _TransferCondition TransferCondition;
  type _TransferBuffer (line 46) | struct _TransferBuffer
  type _TransferCondition (line 53) | struct _TransferCondition
  type _GstCurlBaseSink (line 61) | struct _GstCurlBaseSink
  type _GstCurlBaseSinkClass (line 88) | struct _GstCurlBaseSinkClass

FILE: ext/curl/gstcurlelement.c
  function curl_element_init (line 27) | void

FILE: ext/curl/gstcurlfilesink.c
  function gst_curl_file_sink_class_init (line 101) | static void
  function gst_curl_file_sink_init (line 131) | static void
  function gst_curl_file_sink_set_property (line 136) | static void
  function gst_curl_file_sink_get_property (line 165) | static void
  function gboolean (line 184) | static gboolean
  function gboolean (line 201) | static gboolean
  function gboolean (line 216) | static gboolean

FILE: ext/curl/gstcurlfilesink.h
  type GstCurlFileSink (line 39) | typedef struct _GstCurlFileSink GstCurlFileSink;
  type GstCurlFileSinkClass (line 40) | typedef struct _GstCurlFileSinkClass GstCurlFileSinkClass;
  type _GstCurlFileSink (line 42) | struct _GstCurlFileSink
  type _GstCurlFileSinkClass (line 50) | struct _GstCurlFileSinkClass

FILE: ext/curl/gstcurlftpsink.c
  function gst_curl_ftp_sink_class_init (line 108) | static void
  function gst_curl_ftp_sink_init (line 157) | static void
  function gst_curl_ftp_sink_finalize (line 162) | static void
  function gboolean (line 179) | static gboolean
  function gboolean (line 261) | static gboolean
  function gst_curl_ftp_sink_set_property (line 314) | static void
  function gst_curl_ftp_sink_get_property (line 362) | static void

FILE: ext/curl/gstcurlftpsink.h
  type GstCurlFtpSink (line 39) | typedef struct _GstCurlFtpSink GstCurlFtpSink;
  type GstCurlFtpSinkClass (line 40) | typedef struct _GstCurlFtpSinkClass GstCurlFtpSinkClass;
  type _GstCurlFtpSink (line 42) | struct _GstCurlFtpSink
  type _GstCurlFtpSinkClass (line 55) | struct _GstCurlFtpSinkClass

FILE: ext/curl/gstcurlhttpsink.c
  function gst_curl_http_sink_class_init (line 121) | static void
  function gst_curl_http_sink_init (line 178) | static void
  function gst_curl_http_sink_finalize (line 193) | static void
  function gst_curl_http_sink_set_property (line 212) | static void
  function gst_curl_http_sink_get_property (line 283) | static void
  function gboolean (line 317) | static gboolean
  function gboolean (line 384) | static gboolean
  function gboolean (line 424) | static gboolean
  function gst_curl_http_sink_transfer_prepare_poll_wait (line 442) | static void
  function gst_curl_http_sink_set_mime_type (line 467) | static void
  function gboolean (line 489) | static gboolean

FILE: ext/curl/gstcurlhttpsink.h
  type GstCurlHttpSink (line 39) | typedef struct _GstCurlHttpSink GstCurlHttpSink;
  type GstCurlHttpSinkClass (line 40) | typedef struct _GstCurlHttpSinkClass GstCurlHttpSinkClass;
  type _GstCurlHttpSink (line 42) | struct _GstCurlHttpSink
  type _GstCurlHttpSinkClass (line 61) | struct _GstCurlHttpSinkClass

FILE: ext/curl/gstcurlhttpsrc.c
  function GType (line 235) | static GType
  function gst_curl_http_src_class_init (line 261) | static void
  function gst_curl_http_src_set_property (line 497) | static void
  function gst_curl_http_src_get_property (line 596) | static void
  function gst_curl_http_src_init (line 679) | static void
  function gst_curl_http_src_ref_multi (line 751) | static void
  function gst_curl_http_src_unref_multi (line 810) | static void
  function gst_curl_http_src_finalize (line 846) | static void
  function GstFlowReturn (line 867) | static GstFlowReturn
  function gboolean (line 1058) | static gboolean
  function CURL (line 1078) | static CURL *
  function GstFlowReturn (line 1220) | static GstFlowReturn
  function gboolean (line 1373) | static gboolean
  function gst_curl_http_src_destroy_easy_handle (line 1411) | static inline void
  function GstStateChangeReturn (line 1426) | static GstStateChangeReturn
  function gst_curl_http_src_cleanup_instance (line 1465) | static void
  function gboolean (line 1518) | static gboolean
  function gboolean (line 1544) | static gboolean
  function gboolean (line 1571) | static gboolean
  function gboolean (line 1580) | static gboolean
  function gst_curl_http_src_uri_handler_init (line 1624) | static void
  function guint (line 1635) | static guint
  function gchar (line 1641) | static const gchar *const *
  function gchar (line 1649) | static gchar *
  function gboolean (line 1668) | static gboolean
  function gboolean (line 1703) | static gboolean
  function gboolean (line 1741) | static gboolean
  function gst_curl_http_src_curl_multi_loop (line 1758) | static void
  function gst_curl_http_src_get_header (line 1902) | static size_t
  function gst_curl_http_src_get_chunks (line 2054) | static size_t
  function gst_curl_http_src_request_remove (line 2082) | static void
  function gst_curl_http_src_wait_until_removed (line 2104) | static void
  function gst_curl_http_src_get_debug (line 2120) | static int

FILE: ext/curl/gstcurlhttpsrc.h
  type GstCurlHttpSrc (line 82) | typedef struct _GstCurlHttpSrc GstCurlHttpSrc;
  type GstCurlHttpSrcClass (line 83) | typedef struct _GstCurlHttpSrcClass GstCurlHttpSrcClass;
  type GstCurlHttpSrcMultiTaskContext (line 84) | typedef struct _GstCurlHttpSrcMultiTaskContext GstCurlHttpSrcMultiTaskCo...
  type GstCurlHttpSrcQueueElement (line 85) | typedef struct _GstCurlHttpSrcQueueElement GstCurlHttpSrcQueueElement;
  type GstCurlHttpVersion (line 94) | typedef enum
  type GstCGstCurlHttpSrcSeekable (line 105) | typedef enum _GstCGstCurlHttpSrcSeekable
  type _GstCurlHttpSrcMultiTaskContext (line 112) | struct _GstCurlHttpSrcMultiTaskContext
  type _GstCurlHttpSrcClass (line 132) | struct _GstCurlHttpSrcClass
  type _GstCurlHttpSrc (line 142) | struct _GstCurlHttpSrc

FILE: ext/curl/gstcurlqueue.c
  function gboolean (line 58) | gboolean
  function gboolean (line 100) | gboolean
  function gboolean (line 147) | gboolean

FILE: ext/curl/gstcurlqueue.h
  type _GstCurlHttpSrcQueueElement (line 51) | struct _GstCurlHttpSrcQueueElement

FILE: ext/curl/gstcurlsftpsink.c
  function gst_curl_sftp_sink_class_init (line 99) | static void
  function gst_curl_sftp_sink_init (line 132) | static void
  function gst_curl_sftp_sink_finalize (line 137) | static void
  function gboolean (line 144) | static gboolean
  function gboolean (line 161) | static gboolean
  function gst_curl_sftp_sink_set_property (line 191) | static void
  function gst_curl_sftp_sink_get_property (line 220) | static void

FILE: ext/curl/gstcurlsftpsink.h
  type GstCurlSftpSink (line 39) | typedef struct _GstCurlSftpSink GstCurlSftpSink;
  type GstCurlSftpSinkClass (line 40) | typedef struct _GstCurlSftpSinkClass GstCurlSftpSinkClass;
  type _GstCurlSftpSink (line 43) | struct _GstCurlSftpSink
  type _GstCurlSftpSinkClass (line 51) | struct _GstCurlSftpSinkClass

FILE: ext/curl/gstcurlsmtpsink.c
  function gst_curl_smtp_sink_notify_transfer_end_unlocked (line 141) | static void
  function gst_curl_smtp_sink_wait_for_transfer_end_unlocked (line 149) | static void
  function add_final_boundary_unlocked (line 160) | static void
  function gboolean (line 197) | static gboolean
  function gboolean (line 229) | static gboolean
  function gst_curl_smtp_sink_class_init (line 248) | static void
  function gst_curl_smtp_sink_init (line 324) | static void
  function gst_curl_smtp_sink_finalize (line 349) | static void
  function gst_curl_smtp_sink_set_property (line 389) | static void
  function gst_curl_smtp_sink_get_property (line 482) | static void
  function gboolean (line 529) | static gboolean
  function gchar (line 588) | static gchar *
  function gboolean (line 616) | static gboolean
  function gst_curl_smtp_sink_set_mime_type (line 744) | static void
  function gst_curl_smtp_sink_flush_data_unlocked (line 760) | static size_t
  function transfer_chunk (line 830) | static size_t
  function gst_curl_smtp_sink_transfer_data_buffer (line 912) | static size_t
  function transfer_payload_headers (line 951) | static size_t
  function gboolean (line 971) | static gboolean

FILE: ext/curl/gstcurlsmtpsink.h
  type GstCurlSmtpSink (line 39) | typedef struct _GstCurlSmtpSink GstCurlSmtpSink;
  type GstCurlSmtpSinkClass (line 40) | typedef struct _GstCurlSmtpSinkClass GstCurlSmtpSinkClass;
  type Base64Chunk (line 42) | typedef struct _Base64Chunk Base64Chunk;
  type _Base64Chunk (line 44) | struct _Base64Chunk
  type _GstCurlSmtpSink (line 51) | struct _GstCurlSmtpSink
  type _GstCurlSmtpSinkClass (line 80) | struct _GstCurlSmtpSinkClass

FILE: ext/curl/gstcurlsshsink.c
  type curl_khkey (line 75) | struct curl_khkey
  type curl_khkey (line 75) | struct curl_khkey
  type curl_khmatch (line 76) | enum curl_khmatch
  function GType (line 97) | static GType
  function gst_curl_ssh_sink_class_init (line 114) | static void
  function gst_curl_ssh_sink_init (line 180) | static void
  function gst_curl_ssh_sink_finalize (line 192) | static void
  function gst_curl_ssh_sink_set_property (line 208) | static void
  function gst_curl_ssh_sink_get_property (line 278) | static void
  function gboolean (line 322) | static gboolean
  function gint (line 443) | static gint

FILE: ext/curl/gstcurlsshsink.h
  type GstCurlSshAuthType (line 42) | typedef enum
  type GstCurlSshSink (line 50) | typedef struct _GstCurlSshSink GstCurlSshSink;
  type GstCurlSshSinkClass (line 51) | typedef struct _GstCurlSshSinkClass GstCurlSshSinkClass;
  type _GstCurlSshSink (line 54) | struct _GstCurlSshSink
  type _GstCurlSshSinkClass (line 79) | struct _GstCurlSshSinkClass

FILE: ext/curl/gstcurltlssink.c
  function gst_curl_tls_sink_class_init (line 91) | static void
  function gst_curl_tls_sink_init (line 138) | static void
  function gst_curl_tls_sink_finalize (line 147) | static void
  function gst_curl_tls_sink_set_property (line 161) | static void
  function gst_curl_tls_sink_get_property (line 207) | static void
  function gboolean (line 235) | static gboolean

FILE: ext/curl/gstcurltlssink.h
  type GstCurlTlsSink (line 41) | typedef struct _GstCurlTlsSink GstCurlTlsSink;
  type GstCurlTlsSinkClass (line 42) | typedef struct _GstCurlTlsSinkClass GstCurlTlsSinkClass;
  type _GstCurlTlsSink (line 44) | struct _GstCurlTlsSink
  type _GstCurlTlsSinkClass (line 55) | struct _GstCurlTlsSinkClass

FILE: ext/dash/gstdashdemux.c
  type _GstDashDemuxClockDrift (line 348) | struct _GstDashDemuxClockDrift
  type GstDashStreamSyncSample (line 359) | typedef struct
  function GstSidxBoxEntry (line 429) | static inline GstSidxBoxEntry *
  function gst_dash_demux_dispose (line 449) | static void
  function gboolean (line 469) | static gboolean
  function GstClockTime (line 519) | static GstClockTime
  function GstClockTime (line 530) | static GstClockTime
  function gst_dash_demux_class_init (line 538) | static void
  function gst_dash_demux_init (line 659) | static void
  function gst_dash_demux_set_property (line 677) | static void
  function gst_dash_demux_get_property (line 714) | static void
  function gboolean (line 753) | static gboolean
  function gboolean (line 775) | static gboolean
  function gst_dash_demux_send_content_protection_event (line 882) | static void
  function GstClockTime (line 915) | static GstClockTime
  function gboolean (line 925) | static gboolean
  function gboolean (line 935) | static gboolean
  function gboolean (line 1024) | static gboolean
  function GstPad (line 1066) | static GstPad *
  function gst_dash_demux_reset (line 1106) | static void
  function GstCaps (line 1133) | static GstCaps *
  function GstCaps (line 1169) | static GstCaps *
  function GstCaps (line 1198) | static GstCaps *
  function GstCaps (line 1214) | static GstCaps *
  function gst_dash_demux_stream_update_headers_info (line 1229) | static void
  function GstFlowReturn (line 1260) | static GstFlowReturn
  function gint (line 1385) | static gint
  function GstFlowReturn (line 1398) | static GstFlowReturn
  function GstFlowReturn (line 1469) | static GstFlowReturn
  function gboolean (line 1550) | static gboolean
  function gboolean (line 1569) | static gboolean
  function gboolean (line 1587) | static gboolean
  function gboolean (line 1692) | static gboolean
  function gboolean (line 1731) | static gboolean
  function GstClockTime (line 1760) | static GstClockTime
  function GstFlowReturn (line 1980) | static GstFlowReturn
  function gboolean (line 2170) | static gboolean
  function gboolean (line 2296) | static gboolean
  function gint64 (line 2392) | static gint64
  function GstFlowReturn (line 2400) | static GstFlowReturn
  function gint64 (line 2539) | static gint64
  function gboolean (line 2574) | static gboolean
  function gst_dash_demux_advance_period (line 2585) | static void
  function GstBuffer (line 2608) | static GstBuffer *
  function gboolean (line 2620) | static gboolean
  function GstFlowReturn (line 2647) | static GstFlowReturn
  function gboolean (line 2687) | static gboolean
  function GstFlowReturn (line 2804) | static GstFlowReturn
  function gboolean (line 3038) | static gboolean
  function GstFlowReturn (line 3272) | static GstFlowReturn
  function GstFlowReturn (line 3442) | static GstFlowReturn
  function gst_dash_demux_stream_free (line 3551) | static void
  function GstDashDemuxClockDrift (line 3565) | static GstDashDemuxClockDrift *
  function gst_dash_demux_clock_drift_free (line 3578) | static void
  function GstDateTime (line 3600) | static GstDateTime *
  type Rfc5322TimeZone (line 3666) | struct Rfc5322TimeZone
  function GstDateTime (line 3677) | static GstDateTime *
  function GstDateTime (line 3798) | static GstDateTime *
  function GstDateTime (line 3832) | static GstDateTime *
  function gboolean (line 3850) | static gboolean
  function GTimeSpan (line 3987) | static GTimeSpan
  function GDateTime (line 4000) | static GDateTime *

FILE: ext/dash/gstdashdemux.h
  type GstDashDemuxClockDrift (line 55) | typedef struct _GstDashDemuxClockDrift GstDashDemuxClockDrift;
  type GstDashDemuxStream (line 56) | typedef struct _GstDashDemuxStream GstDashDemuxStream;
  type GstDashDemux (line 57) | typedef struct _GstDashDemux GstDashDemux;
  type GstDashDemuxClass (line 58) | typedef struct _GstDashDemuxClass GstDashDemuxClass;
  type _GstDashDemuxStream (line 60) | struct _GstDashDemuxStream
  type _GstDashDemux (line 122) | struct _GstDashDemux
  type _GstDashDemuxClass (line 151) | struct _GstDashDemuxClass

FILE: ext/dash/gstdashsink.c
  type GstDashSinkMuxerType (line 105) | typedef enum
  type DashSinkMuxer (line 111) | typedef struct _DashSinkMuxer
  function GType (line 120) | static GType
  type GstDashSinkStreamType (line 197) | typedef enum
  type GstDashSinkStreamVideoInfo (line 205) | typedef struct _GstDashSinkStreamVideoInfo
  type GstDashSinkStreamAudioInfo (line 211) | typedef struct _GstDashSinkStreamAudioInfo
  type GstDashSinkStreamSubtitleInfo (line 217) | typedef struct GstDashSinkStreamSubtitleInfo
  type GstDashSinkStreamInfo (line 222) | typedef union _GstDashSinkStreamInfo
  type _GstDashSink (line 229) | struct _GstDashSink
  type GstDashSinkStream (line 254) | typedef struct _GstDashSinkStream
  function GstDashSinkStream (line 311) | static GstDashSinkStream *
  function GstDashSinkStream (line 324) | static GstDashSinkStream *
  function gchar (line 337) | static gchar *
  function gst_dash_sink_stream_free (line 368) | static void
  function gst_dash_sink_dispose (line 381) | static void
  function gst_dash_sink_finalize (line 389) | static void
  function GOutputStream (line 407) | static GOutputStream *
  function GOutputStream (line 429) | static GOutputStream *
  function gst_dash_sink_class_init (line 451) | static void
  function gchar (line 574) | static gchar *
  function gboolean (line 623) | static gboolean
  function gst_dash_sink_init (line 668) | static void
  function gst_dash_sink_reset (line 690) | static void
  function gst_dash_sink_get_stream_metadata (line 696) | static void
  function gst_dash_sink_generate_mpd_content (line 736) | static void
  function gst_dash_sink_write_mpd_file (line 843) | static void
  function gst_dash_sink_handle_message (line 891) | static void
  function GstPadProbeReturn (line 931) | static GstPadProbeReturn
  function GstPad (line 946) | static GstPad *
  function gst_dash_sink_release_pad (line 1012) | static void
  function GstStateChangeReturn (line 1042) | static GstStateChangeReturn
  function gst_dash_sink_set_property (line 1074) | static void
  function gst_dash_sink_get_property (line 1123) | static void

FILE: ext/dash/gstmpdadaptationsetnode.c
  function gst_mpd_adaptation_set_node_set_property (line 36) | static void
  function gst_mpd_adaptation_set_node_get_property (line 55) | static void
  function gst_mpd_adaptation_set_node_finalize (line 73) | static void
  function xmlNodePtr (line 109) | static xmlNodePtr
  function gst_mpd_adaptation_set_node_class_init (line 194) | static void
  function gst_mpd_adaptation_set_node_init (line 219) | static void
  function GstMPDAdaptationSetNode (line 262) | GstMPDAdaptationSetNode *
  function gst_mpd_adaptation_set_node_free (line 268) | void

FILE: ext/dash/gstmpdadaptationsetnode.h
  type _GstMPDAdaptationSetNode (line 35) | struct _GstMPDAdaptationSetNode

FILE: ext/dash/gstmpdbaseurlnode.c
  function gst_mpd_baseurl_node_set_property (line 36) | static void
  function gst_mpd_baseurl_node_get_property (line 60) | static void
  function gst_mpd_baseurl_node_finalize (line 81) | static void
  function xmlNodePtr (line 95) | static xmlNodePtr
  function gst_mpd_baseurl_node_class_init (line 117) | static void
  function gst_mpd_baseurl_node_init (line 147) | static void
  function GstMPDBaseURLNode (line 155) | GstMPDBaseURLNode *
  function gst_mpd_baseurl_node_free (line 161) | void

FILE: ext/dash/gstmpdbaseurlnode.h
  type _GstMPDBaseURLNode (line 32) | struct _GstMPDBaseURLNode

FILE: ext/dash/gstmpdclient.c
  type GstMPDNode (line 51) | typedef GstMPDNode *(*MpdClientStringIDFilter) (GList * list, gchar * da...
  type GstMPDNode (line 52) | typedef GstMPDNode *(*MpdClientIDFilter) (GList * list, guint data);
  function GstMPDNode (line 54) | static GstMPDNode *
  function GstMPDNode (line 68) | static GstMPDNode *
  function GstMPDNode (line 82) | static GstMPDNode *
  function gchar (line 97) | static gchar *
  function guint (line 114) | static guint
  function GstMPDRepresentationNode (line 127) | static GstMPDRepresentationNode *
  function GstMPDRepresentationNode (line 148) | static GstMPDRepresentationNode *
  function GstMPDRepresentationNode (line 161) | static GstMPDRepresentationNode *
  function GstMPDSegmentListNode (line 185) | static GstMPDSegmentListNode *
  function GstMPDSegmentBaseNode (line 281) | static GstMPDSegmentBaseNode *
  function GstMPDSegmentListNode (line 322) | static GstMPDSegmentListNode *
  function GstClockTime (line 362) | static GstClockTime
  function gst_mpd_client_active_streams_free (line 396) | void
  function gst_mpd_client_finalize (line 407) | static void
  function gst_mpd_client_class_init (line 434) | static void
  function gst_mpd_client_init (line 441) | static void
  function GstMPDClient (line 446) | GstMPDClient *
  function GstMPDClient (line 454) | GstMPDClient *
  function gst_mpd_client_free (line 470) | void
  function gboolean (line 477) | gboolean
  function gboolean (line 494) | gboolean
  function GstDateTime (line 509) | GstDateTime *
  function gst_mpd_client_set_uri_downloader (line 523) | void
  function gst_mpd_client_check_profiles (line 532) | void
  function gst_mpd_client_fetch_on_load_external_resources (line 549) | void
  function GstStreamPeriod (line 685) | static GstStreamPeriod *
  function gchar (line 694) | const gchar *
  function gchar (line 708) | gchar *
  function GstClockTime (line 759) | static GstClockTime
  function gboolean (line 780) | static gboolean
  function gst_mpd_client_stream_update_presentation_time_offset (line 809) | static void
  function gboolean (line 839) | gboolean
  function GList (line 1121) | static GList *
  function gboolean (line 1211) | gboolean
  function GList (line 1454) | static GList *
  function GList (line 1529) | static GList *
  function GList (line 1584) | GList *
  function gboolean (line 1598) | gboolean
  function gboolean (line 1661) | gboolean
  function gint64 (line 1797) | gint64
  function GstDateTime (line 1813) | GstDateTime *
  function gboolean (line 1835) | gboolean
  function gboolean (line 1877) | gboolean
  function GstClockTime (line 1915) | GstClockTime
  function GstClockTime (line 1929) | GstClockTime
  function gchar (line 1957) | gchar **
  function gboolean (line 1979) | gboolean
  function gboolean (line 2139) | gboolean
  function GstFlowReturn (line 2166) | GstFlowReturn
  function gboolean (line 2281) | gboolean
  function gboolean (line 2329) | gboolean
  function GstClockTime (line 2364) | GstClockTime
  function GstClockTime (line 2396) | GstClockTime
  function gboolean (line 2413) | gboolean
  function gboolean (line 2444) | gboolean
  function guint (line 2465) | guint
  function gchar (line 2476) | const gchar *
  function gboolean (line 2490) | gboolean
  function gboolean (line 2506) | gboolean
  function gint (line 2523) | gint
  function gint (line 2544) | gint
  function gst_mpd_client_seek_to_first_segment (line 2600) | void
  function guint (line 2618) | static guint
  function gboolean (line 2639) | gboolean
  function guint (line 2648) | guint
  function guint (line 2656) | guint
  function GstActiveStream (line 2668) | GstActiveStream *
  function gboolean (line 2678) | gboolean
  function GstCaps (line 2704) | GstCaps *
  function gboolean (line 2733) | gboolean
  function guint (line 2742) | guint
  function guint (line 2759) | guint
  function gboolean (line 2777) | gboolean
  function guint (line 2835) | guint
  function guint (line 2856) | guint
  function guint (line 2866) | guint
  function GstDateTime (line 2908) | GstDateTime *
  function gboolean (line 2968) | gboolean
  function gboolean (line 3001) | gboolean
  function gint64 (line 3017) | gint64
  function GstClockTime (line 3047) | GstClockTime
  function guint (line 3073) | guint
  function gboolean (line 3112) | gboolean
  function gboolean (line 3129) | gboolean
  function gchar (line 3151) | gchar *
  function guint (line 3184) | guint
  function gchar (line 3225) | gchar *
  function gboolean (line 3270) | gboolean
  function gboolean (line 3307) | gboolean
  function gboolean (line 3344) | gboolean

FILE: ext/dash/gstmpdclient.h
  type _GstMPDClient (line 31) | struct _GstMPDClient

FILE: ext/dash/gstmpdcontentcomponentnode.c
  function gst_mpd_content_component_node_finalize (line 29) | static void
  function xmlNodePtr (line 54) | static xmlNodePtr
  function gst_mpd_content_component_node_class_init (line 81) | static void
  function gst_mpd_content_component_node_init (line 96) | static void
  function GstMPDContentComponentNode (line 109) | GstMPDContentComponentNode *
  function gst_mpd_content_component_node_free (line 115) | void

FILE: ext/dash/gstmpdcontentcomponentnode.h
  type _GstMPDContentComponentNode (line 32) | struct _GstMPDContentComponentNode

FILE: ext/dash/gstmpddescriptortypenode.c
  function gst_mpd_descriptor_type_node_finalize (line 29) | static void
  function xmlNodePtr (line 45) | static xmlNodePtr
  function gst_mpd_descriptor_type_node_class_init (line 62) | static void
  function gst_mpd_descriptor_type_node_init (line 76) | static void
  function GstMPDDescriptorTypeNode (line 85) | GstMPDDescriptorTypeNode *
  function gst_mpd_descriptor_type_node_free (line 94) | void

FILE: ext/dash/gstmpddescriptortypenode.h
  type _GstMPDDescriptorTypeNode (line 33) | struct _GstMPDDescriptorTypeNode

FILE: ext/dash/gstmpdhelper.c
  function gboolean (line 25) | gboolean
  function gboolean (line 55) | gboolean
  function gchar (line 81) | const gchar *
  function gchar (line 109) | const gchar *
  function gchar (line 136) | const gchar *
  function GstUri (line 157) | GstUri *
  function gst_mpd_helper_strncmp_ext (line 187) | int

FILE: ext/dash/gstmpdhelper.h
  type GstMPDFileType (line 45) | typedef enum
  type GstMPDXLinkActuate (line 53) | typedef enum

FILE: ext/dash/gstmpdlocationnode.c
  function gst_mpd_location_node_finalize (line 28) | static void
  function xmlNodePtr (line 40) | static xmlNodePtr
  function gst_mpd_location_node_class_init (line 54) | static void
  function gst_mpd_location_node_init (line 67) | static void
  function GstMPDLocationNode (line 73) | GstMPDLocationNode *
  function gst_mpd_location_node_free (line 79) | void

FILE: ext/dash/gstmpdlocationnode.h
  type _GstMPDLocationNode (line 33) | struct _GstMPDLocationNode

FILE: ext/dash/gstmpdmetricsnode.c
  function gst_mpd_metrics_node_finalize (line 28) | static void
  function xmlNodePtr (line 42) | static xmlNodePtr
  function gst_mpd_metrics_node_class_init (line 61) | static void
  function gst_mpd_metrics_node_init (line 75) | static void
  function GstMPDMetricsNode (line 83) | GstMPDMetricsNode *
  function gst_mpd_metrics_node_free (line 89) | void

FILE: ext/dash/gstmpdmetricsnode.h
  type _GstMPDMetricsNode (line 33) | struct _GstMPDMetricsNode

FILE: ext/dash/gstmpdmetricsrangenode.c
  function xmlNodePtr (line 29) | static xmlNodePtr
  function gst_mpd_metrics_range_node_class_init (line 47) | static void
  function gst_mpd_metrics_range_node_init (line 57) | static void
  function GstMPDMetricsRangeNode (line 64) | GstMPDMetricsRangeNode *
  function gst_mpd_metrics_range_node_free (line 70) | void

FILE: ext/dash/gstmpdmetricsrangenode.h
  type _GstMPDMetricsRangeNode (line 32) | struct _GstMPDMetricsRangeNode

FILE: ext/dash/gstmpdmultsegmentbasenode.c
  function gst_mpd_mult_segment_base_node_set_property (line 36) | static void
  function gst_mpd_mult_segment_base_node_get_property (line 54) | static void
  function gst_mpd_mult_segment_base_node_finalize (line 72) | static void
  function gst_mpd_mult_segment_base_get_xml_node (line 87) | static void
  function gst_mpd_mult_segment_base_node_class_init (line 110) | static void
  function gst_mpd_mult_segment_base_node_init (line 134) | static void
  function gst_mpd_mult_segment_base_node_add_child_node (line 144) | void

FILE: ext/dash/gstmpdmultsegmentbasenode.h
  type _GstMPDMultSegmentBaseNode (line 31) | struct _GstMPDMultSegmentBaseNode

FILE: ext/dash/gstmpdnode.c
  function gst_mpd_node_class_init (line 27) | static void
  function gst_mpd_node_init (line 32) | static void
  function gst_mpd_node_get_list_item (line 37) | void
  function gst_mpd_node_add_child_node (line 47) | void
  function gboolean (line 54) | gboolean
  function xmlNodePtr (line 67) | xmlNodePtr

FILE: ext/dash/gstmpdnode.h
  type gboolean (line 31) | typedef gboolean (*GstMPDGetXMLBuffer) (GstMPDNode * n, gchar ** doc_con...
  type xmlNodePtr (line 32) | typedef xmlNodePtr (*GstMPDGetXMLNode) (GstMPDNode * n);
  type _GstMPDNodeClass (line 34) | struct _GstMPDNodeClass {

FILE: ext/dash/gstmpdparser.c
  function gst_mpdparser_parse_baseURL_node (line 103) | static void
  function gst_mpdparser_parse_descriptor_type (line 121) | static void
  function gst_mpdparser_parse_content_component_node (line 139) | static void
  function gst_mpdparser_parse_location_node (line 176) | static void
  function gst_mpdparser_parse_subrepresentation_node (line 190) | static void
  function gst_mpdparser_parse_segment_url_node (line 215) | static void
  function gst_mpdparser_parse_url_type_node (line 232) | static void
  function gst_mpdparser_parse_seg_base_type_ext (line 248) | static void
  function gst_mpdparser_parse_s_node (line 320) | static void
  function gst_mpdparser_parse_segment_timeline_node (line 336) | static void
  function gboolean (line 360) | static gboolean
  function gboolean (line 426) | static gboolean
  function gst_mpdparser_parse_content_protection_node (line 503) | static void
  function gst_mpdparser_parse_representation_base (line 516) | static void
  function gboolean (line 574) | static gboolean
  function gboolean (line 644) | static gboolean
  function gst_mpdparser_parse_subset_node (line 763) | static void
  function gboolean (line 776) | static gboolean
  function gboolean (line 828) | static gboolean
  function gst_mpdparser_parse_program_info_node (line 901) | static void
  function gst_mpdparser_parse_metrics_range_node (line 930) | static void
  function gst_mpdparser_parse_metrics_node (line 945) | static void
  function gst_mpdparser_parse_utctiming_node (line 977) | static void
  function gboolean (line 1013) | static gboolean
  function gboolean (line 1090) | static gboolean
  function gchar (line 1126) | static gchar *
  function gboolean (line 1160) | static gboolean
  function gst_mpdparser_media_fragment_info_clear (line 1180) | void
  function gboolean (line 1188) | gboolean
  function GstMPDSegmentListNode (line 1234) | GstMPDSegmentListNode *
  function GList (line 1264) | GList *
  function GList (line 1304) | GList *
  function gst_mpdparser_free_stream_period (line 1330) | void
  function gst_mpdparser_free_media_segment (line 1338) | void
  function gst_mpdparser_init_active_stream_segments (line 1346) | void
  function gst_mpdparser_free_active_stream (line 1355) | void
  function gchar (line 1369) | const gchar *
  function gchar (line 1384) | gchar *
  function GstStreamMimeType (line 1400) | GstStreamMimeType
  function gchar (line 1423) | gchar *

FILE: ext/dash/gstmpdparser.h
  type _GstActiveStream (line 62) | struct _GstActiveStream
  type GstStreamPeriod (line 63) | typedef struct _GstStreamPeriod           GstStreamPeriod;
  type GstMediaFragmentInfo (line 64) | typedef struct _GstMediaFragmentInfo      GstMediaFragmentInfo;
  type GstMediaSegment (line 65) | typedef struct _GstMediaSegment           GstMediaSegment;
  type GstStreamMimeType (line 70) | typedef enum
  type _GstStreamPeriod (line 83) | struct _GstStreamPeriod
  type _GstMediaSegment (line 96) | struct _GstMediaSegment
  type _GstMediaFragmentInfo (line 107) | struct _GstMediaFragmentInfo
  type _GstActiveStream (line 127) | struct _GstActiveStream

FILE: ext/dash/gstmpdperiodnode.c
  function gst_mpd_period_node_set_property (line 37) | static void
  function gst_mpd_period_node_get_property (line 62) | static void
  function gst_mpd_period_node_finalize (line 86) | static void
  function xmlNodePtr (line 108) | static xmlNodePtr
  function gst_mpd_period_node_class_init (line 146) | static void
  function gst_mpd_period_node_init (line 186) | static void
  function GstMPDPeriodNode (line 203) | GstMPDPeriodNode *
  function gst_mpd_period_node_free (line 209) | void

FILE: ext/dash/gstmpdperiodnode.h
  type _GstMPDPeriodNode (line 36) | struct _GstMPDPeriodNode

FILE: ext/dash/gstmpdprograminformationnode.c
  function gst_mpd_program_information_node_finalize (line 29) | static void
  function xmlNodePtr (line 52) | static xmlNodePtr
  function gst_mpd_program_information_node_class_init (line 89) | static void
  function gst_mpd_program_information_node_init (line 104) | static void
  function GstMPDProgramInformationNode (line 114) | GstMPDProgramInformationNode *
  function gst_mpd_program_information_node_free (line 120) | void

FILE: ext/dash/gstmpdprograminformationnode.h
  type _GstMPDProgramInformationNode (line 32) | struct _GstMPDProgramInformationNode

FILE: ext/dash/gstmpdreportingnode.c
  function xmlNodePtr (line 28) | static xmlNodePtr
  function gst_mpd_reporting_node_class_init (line 38) | static void
  function gst_mpd_reporting_node_init (line 48) | static void
  function GstMPDReportingNode (line 53) | GstMPDReportingNode *
  function gst_mpd_reporting_node_free (line 59) | void

FILE: ext/dash/gstmpdreportingnode.h
  type _GstMPDReportingNode (line 32) | struct _GstMPDReportingNode

FILE: ext/dash/gstmpdrepresentationbasenode.c
  function gst_mpd_representation_base_node_set_property (line 50) | static void
  function gst_mpd_representation_base_node_get_property (line 125) | static void
  function gst_mpd_representation_base_node_finalize (line 187) | static void
  function gst_mpd_representation_base_get_xml_node (line 222) | static void
  function gst_mpd_representation_base_node_class_init (line 278) | static void
  function gst_mpd_representation_base_node_init (line 314) | static void
  function gst_mpd_representation_base_node_get_list_item (line 338) | void

FILE: ext/dash/gstmpdrepresentationbasenode.h
  type _GstMPDRepresentationBaseNode (line 32) | struct _GstMPDRepresentationBaseNode

FILE: ext/dash/gstmpdrepresentationnode.c
  function gst_mpd_representation_node_set_property (line 37) | static void
  function gst_mpd_representation_node_get_property (line 59) | static void
  function gst_mpd_representation_node_finalize (line 80) | static void
  function xmlNodePtr (line 101) | static xmlNodePtr
  function gst_mpd_representation_node_class_init (line 146) | static void
  function gst_mpd_representation_node_init (line 172) | static void
  function GstMPDRepresentationNode (line 187) | GstMPDRepresentationNode *
  function gst_mpd_representation_node_free (line 193) | void

FILE: ext/dash/gstmpdrepresentationnode.h
  type _GstMPDRepresentationNode (line 35) | struct _GstMPDRepresentationNode

FILE: ext/dash/gstmpdrootnode.c
  function gst_mpd_root_node_set_property (line 50) | static void
  function gst_mpd_root_node_get_property (line 113) | static void
  function gst_mpd_root_node_finalize (line 164) | static void
  function xmlNodePtr (line 199) | static xmlNodePtr
  function gboolean (line 265) | static gboolean
  function gst_mpd_root_node_class_init (line 285) | static void
  function gst_mpd_root_node_init (line 360) | static void
  function GstMPDRootNode (line 394) | GstMPDRootNode *
  function gst_mpd_root_node_free (line 400) | void

FILE: ext/dash/gstmpdrootnode.h
  type _GstMPDRootNode (line 32) | struct _GstMPDRootNode

FILE: ext/dash/gstmpdsegmentbasenode.c
  function gst_mpd_segment_base_node_finalize (line 29) | static void
  function xmlNodePtr (line 44) | static xmlNodePtr
  function gst_mpd_segment_base_node_class_init (line 74) | static void
  function gst_mpd_segment_base_node_init (line 88) | static void
  function GstMPDSegmentBaseNode (line 101) | GstMPDSegmentBaseNode *
  function gst_mpd_segment_base_node_free (line 107) | void

FILE: ext/dash/gstmpdsegmentbasenode.h
  type _GstMPDSegmentBaseNode (line 33) | struct _GstMPDSegmentBaseNode

FILE: ext/dash/gstmpdsegmentlistnode.c
  function gst_mpd_segment_list_node_finalize (line 29) | static void
  function xmlNodePtr (line 44) | static xmlNodePtr
  function gst_mpd_segment_list_node_class_init (line 62) | static void
  function gst_mpd_segment_list_node_init (line 76) | static void
  function GstMPDSegmentListNode (line 84) | GstMPDSegmentListNode *
  function gst_mpd_segment_list_node_free (line 90) | void
  function gst_mpd_segment_list_node_add_segment (line 97) | void

FILE: ext/dash/gstmpdsegmentlistnode.h
  type _GstMPDSegmentListNode (line 35) | struct _GstMPDSegmentListNode

FILE: ext/dash/gstmpdsegmenttemplatenode.c
  function gst_mpd_segment_template_node_set_property (line 38) | static void
  function gst_mpd_segment_template_node_get_property (line 62) | static void
  function gst_mpd_segment_template_node_finalize (line 86) | static void
  function xmlNodePtr (line 106) | static xmlNodePtr
  function gst_mpd_segment_template_node_class_init (line 133) | static void
  function gst_mpd_segment_template_node_init (line 166) | static void
  function GstMPDSegmentTemplateNode (line 175) | GstMPDSegmentTemplateNode *
  function gst_mpd_segment_template_node_free (line 181) | void

FILE: ext/dash/gstmpdsegmenttemplatenode.h
  type _GstMPDSegmentTemplateNode (line 33) | struct _GstMPDSegmentTemplateNode

FILE: ext/dash/gstmpdsegmenttimelinenode.c
  function gst_mpd_segment_timeline_node_finalize (line 29) | static void
  function xmlNodePtr (line 43) | static xmlNodePtr
  function gst_mpd_segment_timeline_node_class_init (line 57) | static void
  function gst_mpd_segment_timeline_node_init (line 72) | static void
  function GstMPDSegmentTimelineNode (line 78) | GstMPDSegmentTimelineNode *
  function gst_mpd_segment_timeline_node_free (line 84) | void
  function GstMPDSegmentTimelineNode (line 91) | GstMPDSegmentTimelineNode *

FILE: ext/dash/gstmpdsegmenttimelinenode.h
  type _GstMPDSegmentTimelineNode (line 32) | struct _GstMPDSegmentTimelineNode

FILE: ext/dash/gstmpdsegmenturlnode.c
  function gst_mpd_segment_url_node_set_property (line 36) | static void
  function gst_mpd_segment_url_node_get_property (line 52) | static void
  function gst_mpd_segment_url_node_finalize (line 67) | static void
  function xmlNodePtr (line 84) | static xmlNodePtr
  function gst_mpd_segment_url_node_class_init (line 109) | static void
  function gst_mpd_segment_url_node_init (line 130) | static void
  function GstMPDSegmentURLNode (line 139) | GstMPDSegmentURLNode *
  function gst_mpd_segment_url_node_free (line 145) | void
  function GstMPDSegmentURLNode (line 152) | GstMPDSegmentURLNode *

FILE: ext/dash/gstmpdsegmenturlnode.h
  type _GstMPDSegmentURLNode (line 32) | struct _GstMPDSegmentURLNode

FILE: ext/dash/gstmpdsnode.c
  function xmlNodePtr (line 28) | static xmlNodePtr
  function gst_mpd_s_node_class_init (line 48) | static void
  function gst_mpd_s_node_init (line 58) | static void
  function GstMPDSNode (line 66) | GstMPDSNode *
  function gst_mpd_s_node_free (line 72) | void
  function GstMPDSNode (line 79) | GstMPDSNode *

FILE: ext/dash/gstmpdsnode.h
  type _GstMPDSNode (line 32) | struct _GstMPDSNode

FILE: ext/dash/gstmpdsubrepresentationnode.c
  function gst_mpd_sub_representation_node_finalize (line 29) | static void
  function xmlNodePtr (line 44) | static xmlNodePtr
  function gst_mpd_sub_representation_node_class_init (line 73) | static void
  function gst_mpd_sub_representation_node_init (line 88) | static void
  function GstMPDSubRepresentationNode (line 98) | GstMPDSubRepresentationNode *
  function gst_mpd_sub_representation_node_free (line 104) | void

FILE: ext/dash/gstmpdsubrepresentationnode.h
  type _GstMPDSubRepresentationNode (line 33) | struct _GstMPDSubRepresentationNode

FILE: ext/dash/gstmpdsubsetnode.c
  function gst_mpd_subset_node_finalize (line 28) | static void
  function xmlNodePtr (line 41) | static xmlNodePtr
  function gst_mpd_subset_node_class_init (line 56) | static void
  function gst_mpd_subset_node_init (line 70) | static void
  function GstMPDSubsetNode (line 77) | GstMPDSubsetNode *
  function gst_mpd_subset_node_free (line 83) | void

FILE: ext/dash/gstmpdsubsetnode.h
  type _GstMPDSubsetNode (line 32) | struct _GstMPDSubsetNode
  type _GstMPDSubsetNodeClass (line 39) | struct _GstMPDSubsetNodeClass {

FILE: ext/dash/gstmpdurltypenode.c
  function gst_mpd_url_type_node_finalize (line 28) | static void
  function xmlNodePtr (line 43) | static xmlNodePtr
  function gst_mpd_url_type_node_class_init (line 58) | static void
  function gst_mpd_url_type_node_init (line 72) | static void
  function GstMPDURLTypeNode (line 80) | GstMPDURLTypeNode *
  function gst_mpd_url_type_node_free (line 88) | void
  function GstMPDURLTypeNode (line 95) | GstMPDURLTypeNode *

FILE: ext/dash/gstmpdurltypenode.h
  type _GstMPDURLTypeNode (line 32) | struct _GstMPDURLTypeNode

FILE: ext/dash/gstmpdutctimingnode.c
  type GstMPDUTCTimingMethod (line 26) | struct GstMPDUTCTimingMethod
  function gst_mpd_utctiming_node_finalize (line 51) | static void
  function xmlNodePtr (line 63) | static xmlNodePtr
  function gst_mpd_utctiming_node_class_init (line 85) | static void
  function gst_mpd_utctiming_node_init (line 99) | static void
  function GstMPDUTCTimingNode (line 106) | GstMPDUTCTimingNode *
  function gst_mpd_utctiming_node_free (line 112) | void
  function gchar (line 119) | const gchar *
  function GstMPDUTCTimingType (line 130) | GstMPDUTCTimingType

FILE: ext/dash/gstmpdutctimingnode.h
  type GstMPDUTCTimingType (line 32) | typedef enum
  type GstMPDUTCTimingMethod (line 44) | struct GstMPDUTCTimingMethod
  type _GstMPDUTCTimingNode (line 50) | struct _GstMPDUTCTimingNode

FILE: ext/dash/gstplugin.c
  function gboolean (line 27) | static gboolean

FILE: ext/dash/gstxmlhelper.c
  function guint (line 32) | static guint
  function gboolean (line 50) | static gboolean
  function gboolean (line 81) | static gboolean
  function gboolean (line 282) | static gboolean
  function GstXMLRange (line 290) | GstXMLRange *
  function GstXMLRatio (line 304) | GstXMLRatio *
  function GstXMLFrameRate (line 318) | GstXMLFrameRate *
  function gboolean (line 333) | gboolean
  function gboolean (line 356) | gboolean
  function gboolean (line 375) | gboolean
  function gboolean (line 383) | gboolean
  function gboolean (line 412) | gboolean
  function gboolean (line 436) | gboolean
  function gboolean (line 463) | gboolean
  function gboolean (line 488) | gboolean
  function gboolean (line 538) | gboolean
  function gboolean (line 560) | gboolean
  function gboolean (line 589) | gboolean
  function gboolean (line 655) | gboolean
  function gboolean (line 711) | gboolean
  function gboolean (line 767) | gboolean
  function gboolean (line 813) | gboolean
  function gboolean (line 930) | gboolean
  function gboolean (line 956) | gboolean
  function gboolean (line 972) | gboolean
  function gchar (line 1025) | gchar *
  function gboolean (line 1054) | gboolean
  function gboolean (line 1065) | gboolean
  function gst_xml_helper_set_prop_string (line 1076) | void
  function gst_xml_helper_set_prop_boolean (line 1084) | void
  function gst_xml_helper_set_prop_int (line 1094) | void
  function gst_xml_helper_set_prop_uint (line 1103) | void
  function gst_xml_helper_set_prop_int64 (line 1112) | void
  function gst_xml_helper_set_prop_uint64 (line 1122) | void
  function gst_xml_helper_set_prop_double (line 1132) | void
  function gst_xml_helper_set_prop_uint_vector_type (line 1142) | void
  function gst_xml_helper_set_prop_date_time (line 1165) | void
  function gst_xml_helper_set_prop_duration (line 1177) | void
  function gst_xml_helper_set_prop_ratio (line 1209) | void
  function gst_xml_helper_set_prop_framerate (line 1222) | void
  function gst_xml_helper_set_prop_range (line 1234) | void
  function gst_xml_helper_set_prop_cond_uint (line 1248) | void
  function gst_xml_helper_set_content (line 1267) | void

FILE: ext/dash/gstxmlhelper.h
  type _GstXMLRange (line 30) | struct _GstXMLRange
  type GstXMLRatio (line 31) | typedef struct _GstXMLRatio                  GstXMLRatio;
  type GstXMLFrameRate (line 32) | typedef struct _GstXMLFrameRate              GstXMLFrameRate;
  type GstXMLConditionalUintType (line 33) | typedef struct _GstXMLConditionalUintType    GstXMLConditionalUintType;
  type _GstXMLRange (line 35) | struct _GstXMLRange
  type _GstXMLRatio (line 41) | struct _GstXMLRatio
  type _GstXMLFrameRate (line 47) | struct _GstXMLFrameRate
  type _GstXMLConditionalUintType (line 53) | struct _GstXMLConditionalUintType

FILE: ext/dc1394/gstdc1394src.c
  function GType (line 68) | static GType
  function gst_dc1394_src_class_init (line 134) | static void
  function gst_dc1394_src_init (line 194) | static void
  function gst_dc1394_src_get_property (line 211) | static void
  function gst_dc1394_src_set_property (line 238) | static void
  function gboolean (line 265) | static gboolean
  function gboolean (line 275) | static gboolean
  function GstCaps (line 288) | static GstCaps *
  function gboolean (line 310) | static gboolean
  function GstFlowReturn (line 322) | static GstFlowReturn
  function gst_dc1394_src_set_prop_camera_guid (line 362) | static void
  function gchar (line 382) | static gchar *
  function gst_dc1394_src_set_prop_camera_unit (line 392) | static void
  function gint (line 399) | static gint
  function gst_dc1394_src_set_prop_iso_speed (line 406) | static void
  function guint (line 434) | static guint
  function gst_dc1394_src_set_prop_dma_buffer_size (line 456) | static void
  function guint (line 463) | static guint
  function gboolean (line 470) | static gboolean
  function gst_dc1394_src_close_cam (line 564) | static void
  function gboolean (line 583) | static gboolean
  function gboolean (line 657) | static gboolean
  function gboolean (line 716) | static gboolean
  function GstCaps (line 823) | GstCaps *
  function GstCaps (line 890) | static GstCaps *
  function GstCaps (line 932) | static GstCaps *
  function gboolean (line 1104) | static gboolean
  function gboolean (line 1233) | static gboolean

FILE: ext/dc1394/gstdc1394src.h
  type GstDC1394Src (line 36) | typedef struct _GstDC1394Src GstDC1394Src;
  type GstDC1394SrcClass (line 37) | typedef struct _GstDC1394SrcClass GstDC1394SrcClass;
  type _GstDC1394Src (line 39) | struct _GstDC1394Src {
  type _GstDC1394SrcClass (line 52) | struct _GstDC1394SrcClass {

FILE: ext/directfb/dfb-example.c
  function gboolean (line 26) | static gboolean
  function main (line 33) | int

FILE: ext/directfb/dfbvideosink.c
  function GType (line 128) | static GType
  function GType (line 147) | GType
  function gboolean (line 160) | static gboolean
  function GstMetaInfo (line 174) | const GstMetaInfo *
  function gboolean (line 193) | static gboolean
  function gst_dfb_buffer_pool_free_buffer (line 275) | static void
  function GstFlowReturn (line 299) | static GstFlowReturn
  function GstBufferPool (line 464) | static GstBufferPool *
  function gst_dfb_buffer_pool_finalize (line 480) | static void
  function gst_dfb_buffer_pool_init (line 492) | static void
  function gst_dfb_buffer_pool_class_init (line 498) | static void
  function gpointer (line 572) | static gpointer
  function DFBEnumerationResult (line 647) | static DFBEnumerationResult
  function DFBEnumerationResult (line 724) | static DFBEnumerationResult
  function DFBEnumerationResult (line 754) | static DFBEnumerationResult
  function gboolean (line 790) | static gboolean
  function gst_dfbvideosink_cleanup (line 1036) | static void
  function DFBSurfacePixelFormat (line 1105) | static DFBSurfacePixelFormat
  function GstCaps (line 1159) | static GstCaps *
  function gboolean (line 1204) | static gboolean
  function gboolean (line 1291) | static gboolean
  function GstCaps (line 1349) | static GstCaps *
  function gboolean (line 1462) | static gboolean
  function GstStateChangeReturn (line 1663) | static GstStateChangeReturn
  function gst_dfbvideosink_get_times (line 1729) | static void
  function GstFlowReturn (line 1750) | static GstFlowReturn
  function gst_dfbvideosink_navigation_send_event (line 1984) | static void
  function gst_dfbvideosink_navigation_init (line 2051) | static void
  function gst_dfbvideosink_update_colorbalance (line 2057) | static void
  function GList (line 2093) | static const GList *
  function gst_dfbvideosink_colorbalance_set_value (line 2103) | static void
  function gint (line 2131) | static gint
  function GstColorBalanceType (line 2157) | static GstColorBalanceType
  function gst_dfbvideosink_colorbalance_init (line 2163) | static void
  function gst_dfbvideosink_set_property (line 2174) | static void
  function gst_dfbvideosink_get_property (line 2232) | static void
  function gboolean (line 2270) | static gboolean
  function gst_dfbvideosink_finalize (line 2337) | static void
  function gst_dfbvideosink_init (line 2355) | static void
  function gst_dfbvideosink_class_init (line 2394) | static void
  function gboolean (line 2464) | static gboolean

FILE: ext/directfb/dfbvideosink.h
  type GstDfbVideoSink (line 44) | typedef struct _GstDfbVideoSink GstDfbVideoSink;
  type GstDfbVideoSinkClass (line 45) | typedef struct _GstDfbVideoSinkClass GstDfbVideoSinkClass;
  type GstMetaDfbSurface (line 47) | typedef struct _GstMetaDfbSurface GstMetaDfbSurface;
  type _GstMetaDfbSurface (line 57) | struct _GstMetaDfbSurface {
  type GstDfbBufferPool (line 72) | typedef struct _GstDfbBufferPool GstDfbBufferPool;
  type _GstDfbBufferPool (line 74) | struct _GstDfbBufferPool
  type GstDfbBufferPoolClass (line 83) | typedef struct _GstDfbBufferPoolClass GstDfbBufferPoolClass;
  type _GstDfbBufferPoolClass (line 85) | struct _GstDfbBufferPoolClass
  type GstDfbVMode (line 90) | typedef struct _GstDfbVMode GstDfbVMode;
  type _GstDfbVMode (line 92) | struct _GstDfbVMode {
  type _GstDfbVideoSink (line 103) | struct _GstDfbVideoSink {
  type _GstDfbVideoSinkClass (line 152) | struct _GstDfbVideoSinkClass {

FILE: ext/dtls/gstdtlsagent.c
  type _GstDtlsAgentPrivate (line 54) | struct _GstDtlsAgentPrivate
  function ssl_locking_function (line 71) | static void
  function ssl_thread_id_function (line 101) | static void
  function _gst_dtls_init_openssl (line 108) | void
  function gst_dtls_agent_class_init (line 146) | static void
  function ssl_warn_cb (line 166) | static int
  function gst_dtls_agent_init (line 174) | static void
  function gst_dtls_agent_finalize (line 209) | static void
  function gst_dtls_agent_set_property (line 224) | static void
  function GstDtlsCertificate (line 262) | GstDtlsCertificate *
  function gchar (line 272) | gchar *
  function GstDtlsAgentContext (line 285) | const GstDtlsAgentContext

FILE: ext/dtls/gstdtlsagent.h
  type gpointer (line 42) | typedef gpointer GstDtlsAgentContext;
  type GstDtlsAgent (line 44) | typedef struct _GstDtlsAgent        GstDtlsAgent;
  type GstDtlsAgentClass (line 45) | typedef struct _GstDtlsAgentClass   GstDtlsAgentClass;
  type GstDtlsAgentPrivate (line 46) | typedef struct _GstDtlsAgentPrivate GstDtlsAgentPrivate;
  type _GstDtlsAgent (line 54) | struct _GstDtlsAgent {
  type _GstDtlsAgentClass (line 60) | struct _GstDtlsAgentClass {

FILE: ext/dtls/gstdtlscertificate.c
  type _GstDtlsCertificatePrivate (line 71) | struct _GstDtlsCertificatePrivate
  function gst_dtls_certificate_class_init (line 93) | static void
  function gst_dtls_certificate_init (line 115) | static void
  function gst_dtls_certificate_finalize (line 127) | static void
  function gst_dtls_certificate_set_property (line 145) | static void
  function gst_dtls_certificate_get_property (line 166) | static void
  function init_generated (line 190) | static void
  function init_from_pem_string (line 295) | static void
  function gchar (line 332) | gchar *
  function GstDtlsCertificateInternalCertificate (line 363) | GstDtlsCertificateInternalCertificate
  function GstDtlsCertificateInternalKey (line 370) | GstDtlsCertificateInternalKey

FILE: ext/dtls/gstdtlscertificate.h
  type gpointer (line 40) | typedef gpointer GstDtlsCertificateInternalCertificate;
  type gpointer (line 41) | typedef gpointer GstDtlsCertificateInternalKey;
  type GstDtlsCertificate (line 43) | typedef struct _GstDtlsCertificate        GstDtlsCertificate;
  type GstDtlsCertificateClass (line 44) | typedef struct _GstDtlsCertificateClass   GstDtlsCertificateClass;
  type GstDtlsCertificatePrivate (line 45) | typedef struct _GstDtlsCertificatePrivate GstDtlsCertificatePrivate;
  type _GstDtlsCertificate (line 53) | struct _GstDtlsCertificate {
  type _GstDtlsCertificateClass (line 59) | struct _GstDtlsCertificateClass {

FILE: ext/dtls/gstdtlsconnection.c
  type _GstDtlsConnectionPrivate (line 82) | struct _GstDtlsConnectionPrivate
  function gst_dtls_connection_class_init (line 137) | static void
  function gst_dtls_connection_init (line 184) | static void
  function gst_dtls_connection_finalize (line 213) | static void
  function BIO_set_data (line 237) | static void
  function BIO_set_shutdown (line 249) | static void
  function BIO_set_init (line 255) | static void
  function X509 (line 261) | static X509 *
  function gst_dtls_connection_set_property (line 268) | static void
  function gst_dtls_connection_get_property (line 306) | static void
  function gboolean (line 324) | gboolean
  function handle_timeout (line 387) | static void
  function gboolean (line 421) | static gboolean
  function gst_dtls_connection_check_timeout_locked (line 440) | static void
  function gst_dtls_connection_check_timeout (line 489) | void
  function gst_dtls_connection_stop (line 506) | void
  function gst_dtls_connection_close (line 542) | void
  function gst_dtls_connection_set_send_callback (line 579) | void
  function gst_dtls_connection_set_flow_return (line 604) | void
  function GstFlowReturn (line 612) | GstFlowReturn
  function GstFlowReturn (line 728) | GstFlowReturn
  function log_state (line 829) | static void
  function gboolean (line 863) | static gboolean
  function ssl_warn_cb (line 965) | static int
  function ssl_err_cb (line 973) | static int
  function GstFlowReturn (line 981) | static GstFlowReturn
  function GstFlowReturn (line 1041) | static GstFlowReturn
  function openssl_verify_callback (line 1094) | static int
  function BIO_METHOD (line 1164) | static BIO_METHOD *
  function BIO_METHOD (line 1172) | static BIO_METHOD *
  function bio_method_write (line 1193) | static int
  function bio_method_read (line 1209) | static int
  function bio_method_ctrl (line 1253) | static long
  function bio_method_new (line 1299) | static int
  function bio_method_free (line 1310) | static int
  function GType (line 1322) | GType

FILE: ext/dtls/gstdtlsconnection.h
  type GstDtlsConnection (line 40) | typedef struct _GstDtlsConnection        GstDtlsConnection;
  type GstDtlsConnectionClass (line 41) | typedef struct _GstDtlsConnectionClass   GstDtlsConnectionClass;
  type GstDtlsConnectionPrivate (line 42) | typedef struct _GstDtlsConnectionPrivate GstDtlsConnectionPrivate;
  type GstDtlsSrtpCipher (line 50) | typedef enum {
  type GstDtlsSrtpAuth (line 61) | typedef enum {
  type GstDtlsConnectionState (line 68) | typedef enum
  type _GstDtlsConnection (line 87) | struct _GstDtlsConnection {
  type _GstDtlsConnectionClass (line 93) | struct _GstDtlsConnectionClass {
  type gboolean (line 114) | typedef gboolean (*GstDtlsConnectionSendCallback) (GstDtlsConnection * c...

FILE: ext/dtls/gstdtlsdec.c
  function gst_dtls_dec_class_init (line 113) | static void
  function gst_dtls_dec_init (line 195) | static void
  function gst_dtls_dec_finalize (line 220) | static void
  function gst_dtls_dec_dispose (line 243) | static void
  function gst_dtls_dec_set_property (line 261) | static void
  function gst_dtls_dec_get_property (line 288) | static void
  function GstStateChangeReturn (line 326) | static GstStateChangeReturn
  function gboolean (line 355) | static gboolean
  function GstPad (line 370) | static GstPad *
  function gst_dtls_dec_release_pad (line 407) | static void
  function on_key_received (line 424) | static void
  function gboolean (line 451) | static gboolean
  function GstFlowReturn (line 470) | static GstFlowReturn
  type ProcessListData (line 515) | typedef struct
  function gboolean (line 522) | static gboolean
  function GstFlowReturn (line 541) | static GstFlowReturn
  function GstFlowReturn (line 599) | static GstFlowReturn
  function GstDtlsAgent (line 661) | static GstDtlsAgent *
  function agent_weak_ref_notify (line 722) | static void
  function GstDtlsConnection (line 736) | GstDtlsConnection *
  function on_connection_state_changed (line 761) | static void
  function create_connection (line 770) | static void
  function connection_weak_ref_notify (line 811) | static void

FILE: ext/dtls/gstdtlsdec.h
  type GstDtlsDec (line 47) | typedef struct _GstDtlsDec GstDtlsDec;
  type GstDtlsDecClass (line 48) | typedef struct _GstDtlsDecClass GstDtlsDecClass;
  type _GstDtlsDec (line 50) | struct _GstDtlsDec {
  type _GstDtlsDecClass (line 68) | struct _GstDtlsDecClass {

FILE: ext/dtls/gstdtlselement.c
  function dtls_element_init (line 36) | void

FILE: ext/dtls/gstdtlsenc.c
  function gst_dtls_enc_class_init (line 109) | static void
  function gst_dtls_enc_init (line 185) | static void
  function gst_dtls_enc_finalize (line 210) | static void
  function gst_dtls_enc_set_property (line 238) | static void
  function gst_dtls_enc_get_property (line 260) | static void
  function on_connection_state_changed (line 294) | static void
  function GstStateChangeReturn (line 303) | static GstStateChangeReturn
  function GstPad (line 377) | static GstPad *
  function gboolean (line 406) | static gboolean
  function src_task_loop (line 445) | static void
  function GstFlowReturn (line 521) | static GstFlowReturn
  function gboolean (line 586) | static gboolean
  function on_key_received (line 631) | static void
  function gboolean (line 659) | static gboolean

FILE: ext/dtls/gstdtlsenc.h
  type GstDtlsEnc (line 42) | typedef struct _GstDtlsEnc GstDtlsEnc;
  type GstDtlsEncClass (line 43) | typedef struct _GstDtlsEncClass GstDtlsEncClass;
  type _GstDtlsEnc (line 45) | struct _GstDtlsEnc {
  type _GstDtlsEncClass (line 68) | struct _GstDtlsEncClass {

FILE: ext/dtls/gstdtlssrtpbin.c
  function gst_dtls_srtp_bin_class_init (line 63) | static void
  function gst_dtls_srtp_bin_init (line 128) | static void
  function gst_dtls_srtp_bin_finalize (line 139) | static void
  function gst_dtls_srtp_bin_set_property (line 160) | static void
  function gst_dtls_srtp_bin_get_property (line 209) | static void

FILE: ext/dtls/gstdtlssrtpbin.h
  type GstDtlsSrtpBin (line 40) | typedef struct _GstDtlsSrtpBin GstDtlsSrtpBin;
  type GstDtlsSrtpBinClass (line 41) | typedef struct _GstDtlsSrtpBinClass GstDtlsSrtpBinClass;
  type _GstDtlsSrtpBin (line 43) | struct _GstDtlsSrtpBin {
  type _GstDtlsSrtpBinClass (line 56) | struct _GstDtlsSrtpBinClass {

FILE: ext/dtls/gstdtlssrtpdec.c
  function gst_dtls_srtp_dec_class_init (line 101) | static void
  function on_connection_state_changed (line 159) | static void
  function gst_dtls_srtp_dec_init (line 168) | static void
  function gst_dtls_srtp_dec_set_property (line 252) | static void
  function gst_dtls_srtp_dec_get_property (line 271) | static void
  function GstPad (line 307) | static GstPad *
  function gst_dtls_srtp_dec_release_pad (line 347) | static void
  function GstCaps (line 372) | static GstCaps *
  function on_peer_pem (line 449) | static void
  function gst_dtls_srtp_dec_remove_dtls_element (line 457) | static void
  function GstPadProbeReturn (line 483) | static GstPadProbeReturn

FILE: ext/dtls/gstdtlssrtpdec.h
  type GstDtlsSrtpDec (line 41) | typedef struct _GstDtlsSrtpDec GstDtlsSrtpDec;
  type GstDtlsSrtpDecClass (line 42) | typedef struct _GstDtlsSrtpDecClass GstDtlsSrtpDecClass;
  type _GstDtlsSrtpDec (line 44) | struct _GstDtlsSrtpDec {
  type _GstDtlsSrtpDecClass (line 51) | struct _GstDtlsSrtpDecClass {

FILE: ext/dtls/gstdtlssrtpdemux.c
  function gst_dtls_srtp_demux_class_init (line 69) | static void
  function gst_dtls_srtp_demux_init (line 87) | static void
  function GstFlowReturn (line 108) | static GstFlowReturn

FILE: ext/dtls/gstdtlssrtpdemux.h
  type GstDtlsSrtpDemux (line 44) | typedef struct _GstDtlsSrtpDemux GstDtlsSrtpDemux;
  type GstDtlsSrtpDemuxClass (line 45) | typedef struct _GstDtlsSrtpDemuxClass GstDtlsSrtpDemuxClass;
  type _GstDtlsSrtpDemux (line 47) | struct _GstDtlsSrtpDemux {
  type _GstDtlsSrtpDemuxClass (line 54) | struct _GstDtlsSrtpDemuxClass {

FILE: ext/dtls/gstdtlssrtpenc.c
  function gst_dtls_srtp_enc_class_init (line 112) | static void
  function on_connection_state_changed (line 175) | static void
  function gst_dtls_srtp_enc_init (line 184) | static void
  function gboolean (line 271) | static gboolean
  function gst_dtls_srtp_enc_set_property (line 292) | static void
  function gst_dtls_srtp_enc_get_property (line 316) | static void
  function GstPad (line 349) | static GstPad *
  function GstPad (line 369) | static GstPad *
  function on_key_received (line 457) | static void
  function gst_dtls_srtp_enc_remove_dtls_element (line 485) | static void
  function GstPadProbeReturn (line 533) | static GstPadProbeReturn

FILE: ext/dtls/gstdtlssrtpenc.h
  type GstDtlsSrtpEnc (line 41) | typedef struct _GstDtlsSrtpEnc GstDtlsSrtpEnc;
  type GstDtlsSrtpEncClass (line 42) | typedef struct _GstDtlsSrtpEncClass GstDtlsSrtpEncClass;
  type _GstDtlsSrtpEnc (line 44) | struct _GstDtlsSrtpEnc {
  type _GstDtlsSrtpEncClass (line 53) | struct _GstDtlsSrtpEncClass {

FILE: ext/dtls/plugin.c
  function gboolean (line 34) | static gboolean

FILE: ext/dts/gstdtsdec.c
  type dca_state_t (line 56) | typedef struct dts_state_s dca_state_t;
  function gst_dtsdec_class_init (line 151) | static void
  function gst_dtsdec_init (line 211) | static void
  function gboolean (line 229) | static gboolean
  function gboolean (line 254) | static gboolean
  function GstFlowReturn (line 270) | static GstFlowReturn
  function gint (line 315) | static gint
  function gboolean (line 407) | static gboolean
  function gst_dtsdec_update_streaminfo (line 442) | static void
  function GstFlowReturn (line 459) | static GstFlowReturn
  function gboolean (line 661) | static gboolean
  function GstFlowReturn (line 677) | static GstFlowReturn
  function gst_dtsdec_set_property (line 758) | static void
  function gst_dtsdec_get_property (line 774) | static void
  function gboolean (line 790) | static gboolean
  function gboolean (line 803) | static gboolean

FILE: ext/dts/gstdtsdec.h
  type GstDtsDec (line 40) | typedef struct _GstDtsDec GstDtsDec;
  type GstDtsDecClass (line 41) | typedef struct _GstDtsDecClass GstDtsDecClass;
  type _GstDtsDec (line 43) | struct _GstDtsDec {
  type _GstDtsDecClass (line 73) | struct _GstDtsDecClass {

FILE: ext/faac/gstfaac.c
  function GType (line 141) | static GType
  function GType (line 161) | static GType
  function gst_faac_class_init (line 181) | static void
  function gst_faac_init (line 246) | static void
  function gst_faac_close_encoder (line 252) | static void
  function gboolean (line 260) | static gboolean
  function GstCaps (line 299) | static GstCaps *
  function gst_faac_set_tags (line 347) | static void
  function gboolean (line 363) | static gboolean
  function gst_faac_negotiate (line 409) | static void
  function gboolean (line 466) | static gboolean
  function gboolean (line 546) | static gboolean
  function GstFlowReturn (line 640) | static GstFlowReturn
  function gst_faac_set_property (line 712) | static void
  function gst_faac_get_property (line 747) | static void
  function gboolean (line 782) | static gboolean

FILE: ext/faac/gstfaac.h
  type GstFaac (line 41) | typedef struct _GstFaac GstFaac;
  type GstFaacClass (line 42) | typedef struct _GstFaacClass GstFaacClass;
  type _GstFaac (line 44) | struct _GstFaac {
  type _GstFaacClass (line 70) | struct _GstFaacClass {

FILE: ext/faad/gstfaad.c
  function gst_faad_class_init (line 109) | static void
  function gst_faad_init (line 133) | static void
  function gst_faad_reset_stream_state (line 142) | static void
  function gst_faad_reset (line 149) | static void
  function gboolean (line 163) | static gboolean
  function gboolean (line 179) | static gboolean
  function gint (line 191) | static gint
  function gboolean (line 220) | static gboolean
  function gboolean (line 337) | static gboolean
  function gboolean (line 423) | static gboolean
  function gboolean (line 500) | static gboolean
  function gboolean (line 574) | static gboolean
  function GstFlowReturn (line 592) | static GstFlowReturn
  function GstFlowReturn (line 623) | static GstFlowReturn
  function gst_faad_flush (line 801) | static void
  function gboolean (line 807) | static gboolean
  function gst_faad_close_decoder (line 832) | static void
  function gboolean (line 841) | static gboolean

FILE: ext/faad/gstfaad.h
  type GstFaad (line 41) | typedef struct _GstFaad {
  type GstFaadClass (line 63) | typedef struct _GstFaadClass {

FILE: ext/fdkaac/gstfdkaac.h
  function G_BEGIN_DECLS (line 27) | G_BEGIN_DECLS

FILE: ext/fdkaac/gstfdkaacdec.c
  function gboolean (line 74) | static gboolean
  function gboolean (line 84) | static gboolean
  function gboolean (line 101) | static gboolean
  function GstFlowReturn (line 187) | static GstFlowReturn
  function gst_fdkaacdec_flush (line 425) | static void
  function gst_fdkaacdec_init (line 440) | static void
  function gst_fdkaacdec_class_init (line 449) | static void

FILE: ext/fdkaac/gstfdkaacdec.h
  type GstFdkAacDec (line 41) | typedef struct _GstFdkAacDec GstFdkAacDec;
  type GstFdkAacDecClass (line 42) | typedef struct _GstFdkAacDecClass GstFdkAacDecClass;
  type _GstFdkAacDec (line 44) | struct _GstFdkAacDec {
  type _GstFdkAacDecClass (line 52) | struct _GstFdkAacDecClass {

FILE: ext/fdkaac/gstfdkaacenc.c
  function gst_fdkaacenc_set_property (line 101) | static void
  function gst_fdkaacenc_get_property (line 118) | static void
  function gboolean (line 135) | static gboolean
  function gboolean (line 145) | static gboolean
  function GstCaps (line 161) | static GstCaps *
  function gboolean (line 194) | static gboolean
  function GstFlowReturn (line 424) | static GstFlowReturn
  function gst_fdkaacenc_flush (line 530) | static void
  function gst_fdkaacenc_init (line 544) | static void
  function gst_fdkaacenc_class_init (line 554) | static void

FILE: ext/fdkaac/gstfdkaacenc.h
  type GstFdkAacEnc (line 41) | typedef struct _GstFdkAacEnc GstFdkAacEnc;
  type GstFdkAacEncClass (line 42) | typedef struct _GstFdkAacEncClass GstFdkAacEncClass;
  type _GstFdkAacEnc (line 44) | struct _GstFdkAacEnc {
  type _GstFdkAacEncClass (line 56) | struct _GstFdkAacEncClass {

FILE: ext/fdkaac/gstfdkaacplugin.c
  function gboolean (line 27) | static gboolean

FILE: ext/flite/gstflite.c
  function gboolean (line 30) | static gboolean

FILE: ext/flite/gstflitetestsrc.c
  type GstFliteTestSrc (line 43) | typedef struct _GstFliteTestSrc GstFliteTestSrc;
  type GstFliteTestSrcClass (line 44) | typedef struct _GstFliteTestSrcClass GstFliteTestSrcClass;
  type _GstFliteTestSrc (line 46) | struct _GstFliteTestSrc
  type _GstFliteTestSrcClass (line 61) | struct _GstFliteTestSrcClass
  function gst_flite_test_src_class_init (line 112) | static void
  function gst_flite_test_src_init (line 150) | static void
  function gint (line 161) | static gint
  function GstCaps (line 177) | static GstCaps *
  function gboolean (line 274) | static gboolean
  function gboolean (line 289) | static gboolean
  function gst_flite_test_src_get_times (line 357) | static void
  function gboolean (line 384) | static gboolean
  function gboolean (line 396) | static gboolean
  function GstFlowReturn (line 437) | static GstFlowReturn
  function gst_flite_test_src_set_property (line 490) | static void
  function gst_flite_test_src_get_property (line 506) | static void

FILE: ext/fluidsynth/gstfluiddec.c
  function gst_fluid_dec_class_init (line 123) | static void
  function gst_fluid_dec_init (line 176) | static void
  function gst_fluid_dec_finalize (line 209) | static void
  function GstBuffer (line 222) | static GstBuffer *
  function gst_fluid_dec_reset (line 262) | static void
  function gboolean (line 269) | static gboolean
  function GstFlowReturn (line 314) | static GstFlowReturn
  function handle_buffer (line 357) | static void
  function GstFlowReturn (line 439) | static GstFlowReturn
  function gboolean (line 475) | static gboolean
  function gboolean (line 570) | static gboolean
  function GstStateChangeReturn (line 580) | static GstStateChangeReturn
  function gst_fluid_dec_set_property (line 624) | static void
  function gst_fluid_dec_get_property (line 657) | static void
  function gst_fluid_synth_error_log_function (line 686) | static void
  function gst_fluid_synth_warning_log_function (line 692) | static void
  function gst_fluid_synth_info_log_function (line 699) | static void
  function gst_fluid_synth_debug_log_function (line 705) | static void
  function gboolean (line 711) | static gboolean
  function gboolean (line 753) | static gboolean

FILE: ext/fluidsynth/gstfluiddec.h
  type GstFluidDec (line 43) | typedef struct _GstFluidDec GstFluidDec;
  type GstFluidDecClass (line 44) | typedef struct _GstFluidDecClass GstFluidDecClass;
  type _GstFluidDec (line 46) | struct _GstFluidDec
  type _GstFluidDecClass (line 69) | struct _GstFluidDecClass

FILE: ext/gme/gstgme.c
  function gboolean (line 71) | static gboolean
  function gst_gme_dec_class_init (line 83) | static void
  function gst_gme_dec_init (line 104) | static void
  function gst_gme_dec_dispose (line 125) | static void
  function GstFlowReturn (line 138) | static GstFlowReturn
  function gboolean (line 149) | static gboolean
  function gboolean (line 182) | static gboolean
  function gboolean (line 276) | static gboolean
  function gst_gme_play (line 317) | static void
  function gboolean (line 375) | static gboolean
  function GstStateChangeReturn (line 473) | static GstStateChangeReturn
  function gboolean (line 508) | static gboolean

FILE: ext/gme/gstgme.h
  type GstGmeDec (line 42) | typedef struct _GstGmeDec GstGmeDec;
  type GstGmeDecClass (line 43) | typedef struct _GstGmeDecClass GstGmeDecClass;
  type _GstGmeDec (line 45) | struct _GstGmeDec
  type _GstGmeDecClass (line 61) | struct _GstGmeDecClass

FILE: ext/gs/gstgs.cpp
  function gboolean (line 37) | static gboolean

FILE: ext/gs/gstgscommon.cpp
  function gchar (line 31) | static inline gchar *
  function gst_gs_create_client (line 64) | std::unique_ptr <
  function gboolean (line 102) | gboolean

FILE: ext/gs/gstgssink.cpp
  class GSWriteStream (line 115) | class GSWriteStream
    method GSWriteStream (line 175) | GSWriteStream(google::cloud::storage::Client& client,
  type _GstGsSink (line 117) | struct _GstGsSink {
  function GType (line 155) | static GType gst_gs_sink_next_get_type(void) {
  class GSWriteStream (line 173) | class GSWriteStream {
    method GSWriteStream (line 175) | GSWriteStream(google::cloud::storage::Client& client,
  function gst_gs_sink_class_init (line 192) | static void gst_gs_sink_class_init(GstGsSinkClass* klass) {
  function gst_gs_sink_init (line 319) | static void gst_gs_sink_init(GstGsSink* sink) {
  function gst_gs_sink_finalize (line 337) | static void gst_gs_sink_finalize(GObject* object) {
  function gboolean (line 359) | static gboolean gst_gs_sink_set_object_name(GstGsSink* sink,
  function gst_gs_sink_set_property (line 403) | static void gst_gs_sink_set_property(GObject* object,
  function gst_gs_sink_get_property (line 450) | static void gst_gs_sink_get_property(GObject* object,
  function gboolean (line 484) | static gboolean gst_gs_sink_start(GstBaseSink* bsink) {
  function gboolean (line 517) | static gboolean gst_gs_sink_stop(GstBaseSink* bsink) {
  function gst_gs_sink_post_message_full (line 527) | static void gst_gs_sink_post_message_full(GstGsSink* sink,
  function gst_gs_sink_post_message_from_time (line 553) | static void gst_gs_sink_post_message_from_time(GstGsSink* sink,
  function gst_gs_sink_post_message (line 578) | static void gst_gs_sink_post_message(GstGsSink* sink,
  function GstFlowReturn (line 606) | static GstFlowReturn gst_gs_sink_write_buffer(GstGsSink* sink,
  function GstFlowReturn (line 716) | static GstFlowReturn gst_gs_sink_render(GstBaseSink* bsink, GstBuffer* b...
  function gboolean (line 724) | static gboolean buffer_list_copy_data(GstBuffer** buf,
  function GstFlowReturn (line 747) | static GstFlowReturn gst_gs_sink_render_list(GstBaseSink* sink,
  function gboolean (line 767) | static gboolean gst_gs_sink_set_caps(GstBaseSink* bsink, GstCaps* caps) {
  function gboolean (line 778) | static gboolean gst_gs_sink_event(GstBaseSink* bsink, GstEvent* event) {

FILE: ext/gs/gstgssrc.cpp
  class GSReadStream (line 68) | class GSReadStream
    method GSReadStream (line 118) | GSReadStream(GstGsSrc* src,
  type _GstGsSrc (line 70) | struct _GstGsSrc {
  class GSReadStream (line 116) | class GSReadStream {
    method GSReadStream (line 118) | GSReadStream(GstGsSrc* src,
  function gst_gs_src_class_init (line 132) | static void gst_gs_src_class_init(GstGsSrcClass* klass) {
  function gst_gs_src_init (line 185) | static void gst_gs_src_init(GstGsSrc* src) {
  function gst_gs_src_finalize (line 197) | static void gst_gs_src_finalize(GObject* object) {
  function gboolean (line 210) | static gboolean gst_gs_src_set_location(GstGsSrc* src,
  function gboolean (line 274) | static gboolean gst_gs_src_set_service_account_email(
  function gst_gs_src_set_property (line 297) | static void gst_gs_src_set_property(GObject* object,
  function gst_gs_src_get_property (line 318) | static void gst_gs_src_get_property(GObject* object,
  function gint (line 343) | static gint gst_gs_read_stream(GstGsSrc* src,
  function GstFlowReturn (line 369) | static GstFlowReturn gst_gs_src_fill(GstBaseSrc* basesrc,
  function gboolean (line 445) | static gboolean gst_gs_src_is_seekable(GstBaseSrc* basesrc) {
  function gboolean (line 449) | static gboolean gst_gs_src_get_size(GstBaseSrc* basesrc, guint64* size) {
  function gboolean (line 457) | static gboolean gst_gs_src_start(GstBaseSrc* basesrc) {
  function gboolean (line 510) | static gboolean gst_gs_src_stop(GstBaseSrc* basesrc) {
  function gboolean (line 520) | static gboolean gst_gs_src_query(GstBaseSrc* src, GstQuery* query) {
  function GstURIType (line 540) | static GstURIType gst_gs_src_uri_get_type(GType type) {
  function gchar (line 544) | static const gchar* const* gst_gs_src_uri_get_protocols(GType type) {
  function gchar (line 550) | static gchar* gst_gs_src_uri_get_uri(GstURIHandler* handler) {
  function gboolean (line 556) | static gboolean gst_gs_src_uri_set_uri(GstURIHandler* handler,
  function gst_gs_src_uri_handler_init (line 572) | static void gst_gs_src_uri_handler_init(gpointer g_iface, gpointer iface...

FILE: ext/gsm/gstgsm.c
  function gboolean (line 29) | static gboolean

FILE: ext/gsm/gstgsmdec.c
  function gst_gsmdec_class_init (line 80) | static void
  function gst_gsmdec_init (line 106) | static void
  function gboolean (line 115) | static gboolean
  function gboolean (line 127) | static gboolean
  function gboolean (line 139) | static gboolean
  function GstFlowReturn (line 190) | static GstFlowReturn
  function guint (line 225) | static guint
  function GstFlowReturn (line 241) | static GstFlowReturn

FILE: ext/gsm/gstgsmdec.h
  type GstGSMDec (line 45) | typedef struct _GstGSMDec GstGSMDec;
  type GstGSMDecClass (line 46) | typedef struct _GstGSMDecClass GstGSMDecClass;
  type _GstGSMDec (line 48) | struct _GstGSMDec
  type _GstGSMDecClass (line 57) | struct _GstGSMDecClass

FILE: ext/gsm/gstgsmenc.c
  function gst_gsmenc_class_init (line 74) | static void
  function gst_gsmenc_init (line 99) | static void
  function gboolean (line 105) | static gboolean
  function gboolean (line 122) | static gboolean
  function gboolean (line 133) | static gboolean
  function GstFlowReturn (line 150) | static GstFlowReturn

FILE: ext/gsm/gstgsmenc.h
  type GstGSMEnc (line 45) | typedef struct _GstGSMEnc GstGSMEnc;
  type GstGSMEncClass (line 46) | typedef struct _GstGSMEncClass GstGSMEncClass;
  type _GstGSMEnc (line 48) | struct _GstGSMEnc
  type _GstGSMEncClass (line 55) | struct _GstGSMEncClass

FILE: ext/hls/gsthlsdemux-util.c
  function gboolean (line 48) | static gboolean
  function gint (line 62) | static gint
  function gboolean (line 79) | static gboolean
  function gboolean (line 114) | static gboolean
  function gboolean (line 147) | static gboolean
  function gst_hlsdemux_tsreader_init (line 184) | void
  function gst_hlsdemux_tsreader_set_type (line 194) | void
  function gboolean (line 201) | static gboolean
  function gboolean (line 266) | static gboolean
  function gboolean (line 347) | gboolean

FILE: ext/hls/gsthlsdemux.c
  function gst_hls_demux_finalize (line 126) | static void
  function gst_hls_demux_class_init (line 141) | static void
  function gst_hls_demux_init (line 192) | static void
  function GstStateChangeReturn (line 202) | static GstStateChangeReturn
  function GstPad (line 229) | static GstPad *
  function guint64 (line 242) | static guint64
  function gst_hls_demux_stream_clear_pending_data (line 260) | static void
  function gst_hls_demux_clear_all_pending_data (line 272) | static void
  function gst_hls_demux_set_current (line 285) | static void
  function gboolean (line 319) | static gboolean
  function GstFlowReturn (line 407) | static GstFlowReturn
  function GstFlowReturn (line 480) | static GstFlowReturn
  function create_stream_for_playlist (line 490) | static void
  function GstHLSDemuxStream (line 522) | static GstHLSDemuxStream *
  function gboolean (line 545) | static gboolean
  function gboolean (line 595) | static gboolean
  function gchar (line 698) | static const gchar *
  function gst_hls_demux_set_current_variant (line 704) | static void
  function gboolean (line 762) | static gboolean
  function GstClockTime (line 822) | static GstClockTime
  function gboolean (line 834) | static gboolean
  function GstHLSKey (line 846) | static const GstHLSKey *
  function gboolean (line 900) | static gboolean
  function GstHLSTSReaderType (line 950) | static GstHLSTSReaderType
  function GstFlowReturn (line 963) | static GstFlowReturn
  function GstFlowReturn (line 1060) | static GstFlowReturn
  function GstFlowReturn (line 1125) | static GstFlowReturn
  function gst_hls_demux_stream_free (line 1172) | static void
  function GstM3U8 (line 1200) | static GstM3U8 *
  function gboolean (line 1210) | static gboolean
  function GstFlowReturn (line 1223) | static GstFlowReturn
  function GstFlowReturn (line 1237) | static GstFlowReturn
  function gboolean (line 1306) | static gboolean
  function gst_hls_demux_reset (line 1335) | static void
  function gchar (line 1365) | static gchar *
  function gint (line 1390) | static gint
  function gboolean (line 1408) | static gboolean
  function gboolean (line 1497) | static gboolean
  function gboolean (line 1548) | static gboolean
  function gboolean (line 1751) | static gboolean
  function gboolean (line 1847) | static gboolean
  function gboolean (line 1865) | static gboolean
  function gst_hls_demux_stream_decrypt_end (line 1889) | static void
  function gboolean (line 1901) | static gboolean
  function gboolean (line 1911) | static gboolean
  function gst_hls_demux_stream_decrypt_end (line 1924) | static void
  function gboolean (line 1931) | static gboolean
  function gboolean (line 1958) | static gboolean
  function gst_hls_demux_stream_decrypt_end (line 1970) | static void
  function gboolean (line 1981) | static gboolean
  function gboolean (line 1989) | static gboolean
  function gst_hls_demux_stream_decrypt_end (line 1997) | static void
  function GstBuffer (line 2004) | static GstBuffer *
  function gint64 (line 2044) | static gint64
  function gboolean (line 2060) | static gboolean

FILE: ext/hls/gsthlsdemux.h
  type GstHLSDemux (line 57) | typedef struct _GstHLSDemux GstHLSDemux;
  type GstHLSDemuxClass (line 58) | typedef struct _GstHLSDemuxClass GstHLSDemuxClass;
  type GstHLSDemuxStream (line 59) | typedef struct _GstHLSDemuxStream GstHLSDemuxStream;
  type GstHLSTSReader (line 60) | typedef struct _GstHLSTSReader GstHLSTSReader;
  type GstHLSTSReaderType (line 64) | typedef enum {
  type _GstHLSTSReader (line 70) | struct _GstHLSTSReader
  type _GstHLSDemuxStream (line 83) | struct _GstHLSDemuxStream
  type GstHLSKey (line 125) | typedef struct {
  type _GstHLSDemux (line 134) | struct _GstHLSDemux
  type _GstHLSDemuxClass (line 155) | struct _GstHLSDemuxClass

FILE: ext/hls/gsthlselement.c
  function hls_element_init (line 10) | void

FILE: ext/hls/gsthlsplugin.c
  function gboolean (line 9) | static gboolean

FILE: ext/hls/gsthlssink.c
  function gst_hls_sink_dispose (line 96) | static void
  function gst_hls_sink_finalize (line 104) | static void
  function gst_hls_sink_class_init (line 118) | static void
  function gst_hls_sink_init (line 178) | static void
  function gst_hls_sink_reset (line 204) | static void
  function gboolean (line 221) | static gboolean
  function gst_hls_sink_write_playlist (line 258) | static void
  function gst_hls_sink_handle_message (line 277) | static void
  function GstStateChangeReturn (line 343) | static GstStateChangeReturn
  function gst_hls_sink_set_property (line 385) | static void
  function gst_hls_sink_get_property (line 427) | static void
  function GstPadProbeReturn (line 458) | static GstPadProbeReturn
  function gboolean (line 498) | static gboolean
  function gst_hls_sink_check_schedule_next_key_unit (line 530) | static void
  function GstPadProbeReturn (line 544) | static GstPadProbeReturn
  function GstFlowReturn (line 558) | static GstFlowReturn

FILE: ext/hls/gsthlssink.h
  type GstHlsSink (line 34) | typedef struct _GstHlsSink GstHlsSink;
  type GstHlsSinkClass (line 35) | typedef struct _GstHlsSinkClass GstHlsSinkClass;
  type _GstHlsSink (line 37) | struct _GstHlsSink
  type _GstHlsSinkClass (line 60) | struct _GstHlsSinkClass

FILE: ext/hls/gsthlssink2.c
  function gst_hls_sink2_dispose (line 119) | static void
  function gst_hls_sink2_finalize (line 127) | static void
  function GOutputStream (line 146) | static GOutputStream *
  function GOutputStream (line 168) | static GOutputStream *
  function gst_hls_sink2_class_init (line 190) | static void
  function gchar (line 309) | static gchar *
  function gst_hls_sink2_init (line 339) | static void
  function gst_hls_sink2_reset (line 372) | static void
  function gst_hls_sink2_write_playlist (line 388) | static void
  function gst_hls_sink2_handle_message (line 420) | static void
  function GstPad (line 510) | static GstPad *
  function gst_hls_sink2_release_pad (line 546) | static void
  function GstStateChangeReturn (line 571) | static GstStateChangeReturn
  function gst_hls_sink2_set_property (line 610) | static void
  function gst_hls_sink2_get_property (line 658) | static void

FILE: ext/hls/gsthlssink2.h
  type GstHlsSink2 (line 35) | typedef struct _GstHlsSink2 GstHlsSink2;
  type GstHlsSink2Class (line 36) | typedef struct _GstHlsSink2Class GstHlsSink2Class;
  type _GstHlsSink2 (line 38) | struct _GstHlsSink2
  type _GstHlsSink2Class (line 63) | struct _GstHlsSink2Class

FILE: ext/hls/gstm3u8playlist.c
  type GstM3U8Entry (line 35) | typedef struct _GstM3U8Entry GstM3U8Entry;
  type _GstM3U8Entry (line 37) | struct _GstM3U8Entry
  function GstM3U8Entry (line 45) | static GstM3U8Entry *
  function gst_m3u8_entry_free (line 61) | static void
  function GstM3U8Playlist (line 71) | GstM3U8Playlist *
  function gst_m3u8_playlist_free (line 86) | void
  function gboolean (line 97) | gboolean
  function guint (line 128) | static guint
  function gchar (line 144) | gchar *

FILE: ext/hls/gstm3u8playlist.h
  type _GstM3U8Playlist (line 29) | struct _GstM3U8Playlist
  type _GstM3U8Playlist (line 31) | struct _GstM3U8Playlist
  type GstM3U8PlaylistRenderState (line 43) | typedef enum

FILE: ext/hls/m3u8.c
  function GstM3U8 (line 39) | GstM3U8 *
  function gst_m3u8_take_uri (line 60) | static void
  function gst_m3u8_set_uri (line 79) | void
  function GstM3U8 (line 89) | GstM3U8 *
  function gst_m3u8_unref (line 98) | void
  function GstM3U8MediaFile (line 117) | static GstM3U8MediaFile *
  function GstM3U8MediaFile (line 133) | GstM3U8MediaFile *
  function gst_m3u8_media_file_unref (line 142) | void
  function GstM3U8InitFile (line 157) | static GstM3U8InitFile *
  function GstM3U8InitFile (line 169) | static GstM3U8InitFile *
  function gst_m3u8_init_file_unref (line 178) | static void
  function gboolean (line 189) | static gboolean
  function gboolean (line 219) | static gboolean
  function gboolean (line 244) | static gboolean
  function gboolean (line 274) | static gboolean
  function gint (line 333) | static gint
  function gboolean (line 347) | static gboolean
  function generate_media_seqnums (line 418) | static void
  function gboolean (line 482) | gboolean
  function GList (line 889) | static GList *
  function GstM3U8MediaFile (line 920) | GstM3U8MediaFile *
  function gboolean (line 961) | gboolean
  function m3u8_alternate_advance (line 988) | static void
  function gst_m3u8_advance_fragment (line 1015) | void
  function GstClockTime (line 1098) | GstClockTime
  function GstClockTime (line 1127) | GstClockTime
  function gchar (line 1141) | gchar *
  function gboolean (line 1153) | gboolean
  function gchar (line 1167) | gchar *
  function gboolean (line 1223) | gboolean
  function GstHLSMedia (line 1265) | GstHLSMedia *
  function gst_hls_media_unref (line 1273) | void
  function GstHLSMediaType (line 1288) | static GstHLSMediaType
  function gchar (line 1304) | const gchar *
  function gchar (line 1318) | static gchar *
  function GstHLSMedia (line 1334) | static GstHLSMedia *
  function GstHLSVariantStream (line 1421) | static GstHLSVariantStream *
  function GstHLSVariantStream (line 1432) | GstHLSVariantStream *
  function gst_hls_variant_stream_unref (line 1439) | void
  function GstHLSVariantStream (line 1457) | static GstHLSVariantStream *
  function GstHLSVariantStream (line 1469) | static GstHLSVariantStream *
  function GstHLSMasterPlaylist (line 1481) | static GstHLSMasterPlaylist *
  function gst_hls_master_playlist_unref (line 1493) | void
  function gint (line 1508) | static gint
  function GstHLSMasterPlaylist (line 1515) | GstHLSMasterPlaylist *
  function gboolean (line 1813) | gboolean
  function gint (line 1825) | static gint
  function GstHLSMedia (line 1831) | GstHLSMedia *
  function GstHLSVariantStream (line 1848) | GstHLSVariantStream *
  function GstHLSVariantStream (line 1871) | GstHLSVariantStream *

FILE: ext/hls/m3u8.h
  type _GstM3U8 (line 31) | struct _GstM3U8
  type GstM3U8MediaFile (line 32) | typedef struct _GstM3U8MediaFile GstM3U8MediaFile;
  type GstM3U8InitFile (line 33) | typedef struct _GstM3U8InitFile GstM3U8InitFile;
  type GstHLSMedia (line 34) | typedef struct _GstHLSMedia GstHLSMedia;
  type GstM3U8Client (line 35) | typedef struct _GstM3U8Client GstM3U8Client;
  type GstHLSVariantStream (line 36) | typedef struct _GstHLSVariantStream GstHLSVariantStream;
  type GstHLSMasterPlaylist (line 37) | typedef struct _GstHLSMasterPlaylist GstHLSMasterPlaylist;
  type _GstM3U8 (line 53) | struct _GstM3U8
  type _GstM3U8MediaFile (line 92) | struct _GstM3U8MediaFile
  type _GstM3U8InitFile (line 106) | struct _GstM3U8InitFile
  type GstHLSMediaType (line 150) | typedef enum
  type _GstHLSMedia (line 160) | struct _GstHLSMedia {
  type _GstHLSVariantStream (line 182) | struct _GstHLSVariantStream {
  type _GstHLSMasterPlaylist (line 212) | struct _GstHLSMasterPlaylist

FILE: ext/iqa/iqa.c
  function GObject (line 102) | static GObject *
  function guint (line 118) | static guint
  function gst_iqa_child_proxy_init (line 132) | static void
  type GstIqaMode (line 149) | typedef enum
  function GType (line 155) | static GType
  function to_byte (line 184) | inline static unsigned char
  function gboolean (line 194) | static gboolean
  function gboolean (line 321) | static gboolean
  function GstFlowReturn (line 335) | static GstFlowReturn
  function _set_property (line 401) | static void
  function _get_property (line 429) | static void
  function gst_iqa_class_init (line 458) | static void
  function gst_iqa_init (line 508) | static void
  function gboolean (line 513) | static gboolean

FILE: ext/iqa/iqa.h
  type GstIqa (line 39) | typedef struct _GstIqa GstIqa;
  type GstIqaClass (line 40) | typedef struct _GstIqaClass GstIqaClass;
  type _GstIqa (line 47) | struct _GstIqa
  type _GstIqaClass (line 57) | struct _GstIqaClass

FILE: ext/isac/gstisac.c
  function gboolean (line 39) | static gboolean

FILE: ext/isac/gstisacdec.c
  type _GstIsacDec (line 63) | struct _GstIsacDec
  function gboolean (line 81) | static gboolean
  function gboolean (line 94) | static gboolean
  function gboolean (line 110) | static gboolean
  function GstFlowReturn (line 158) | static GstFlowReturn
  function GstFlowReturn (line 210) | static GstFlowReturn
  function gst_isacdec_class_init (line 273) | static void
  function gst_isacdec_init (line 293) | static void

FILE: ext/isac/gstisacenc.c
  function GType (line 47) | static GType
  type EncoderMode (line 94) | typedef enum
  type _GstIsacEnc (line 100) | struct _GstIsacEnc
  function gboolean (line 126) | static gboolean
  function gboolean (line 141) | static gboolean
  function gboolean (line 157) | static gboolean
  function GstFlowReturn (line 245) | static GstFlowReturn
  function gst_isacenc_set_property (line 321) | static void
  function gst_isacenc_get_property (line 346) | static void
  function gst_isacenc_class_init (line 371) | static void
  function gst_isacenc_init (line 430) | static void

FILE: ext/isac/gstisacutils.c
  function gchar (line 26) | const gchar *

FILE: ext/kate/gstkate.c
  function gboolean (line 53) | static gboolean

FILE: ext/kate/gstkatedec.c
  function gst_kate_dec_class_init (line 147) | static void
  function gst_kate_dec_init (line 183) | static void
  function gst_kate_dec_set_property (line 212) | static void
  function gst_kate_dec_get_property (line 223) | static void
  function GstFlowReturn (line 242) | static GstFlowReturn
  function GstFlowReturn (line 356) | static GstFlowReturn
  function GstStateChangeReturn (line 387) | static GstStateChangeReturn
  function gboolean (line 403) | gboolean
  function gboolean (line 413) | static gboolean
  function gboolean (line 462) | static gboolean
  function gboolean (line 493) | static gboolean
  function gboolean (line 529) | static gboolean

FILE: ext/kate/gstkatedec.h
  type GstKateDec (line 65) | typedef struct _GstKateDec GstKateDec;
  type GstKateDecClass (line 66) | typedef struct _GstKateDecClass GstKateDecClass;
  type _GstKateDec (line 68) | struct _GstKateDec
  type _GstKateDecClass (line 82) | struct _GstKateDecClass

FILE: ext/kate/gstkateelement.c
  function kate_element_init (line 63) | void

FILE: ext/kate/gstkateenc.c
  function gst_kate_enc_class_init (line 159) | static void
  function gst_kate_enc_init (line 236) | static void
  function gst_kate_enc_dispose (line 275) | static void
  function gst_kate_enc_set_property (line 294) | static void
  function gst_kate_enc_get_property (line 347) | static void
  function GstBuffer (line 389) | static GstBuffer *
  function GstFlowReturn (line 420) | static GstFlowReturn
  function GstFlowReturn (line 440) | static GstFlowReturn
  function gst_kate_enc_metadata_set1 (line 462) | static void
  function gst_kate_enc_set_metadata (line 487) | static void
  function gboolean (line 509) | static gboolean
  function gboolean (line 555) | static gboolean
  function GstFlowReturn (line 575) | static GstFlowReturn
  function GstFlowReturn (line 657) | static GstFlowReturn
  function GstFlowReturn (line 675) | static GstFlowReturn
  function gst_kate_enc_generate_keepalive (line 698) | static void
  function GstFlowReturn (line 719) | static GstFlowReturn
  function GstFlowReturn (line 782) | static GstFlowReturn
  function GstFlowReturn (line 928) | static GstFlowReturn
  function GstFlowReturn (line 984) | static GstFlowReturn
  function GstStateChangeReturn (line 1016) | static GstStateChangeReturn
  function GstClockTime (line 1122) | static GstClockTime
  function gboolean (line 1144) | static gboolean
  function gboolean (line 1195) | static gboolean
  function gboolean (line 1224) | static gboolean

FILE: ext/kate/gstkateenc.h
  type GstKateEnc (line 66) | typedef struct _GstKateEnc GstKateEnc;
  type GstKateEncClass (line 67) | typedef struct _GstKateEncClass GstKateEncClass;
  type _GstKateEnc (line 69) | struct _GstKateEnc
  type _GstKateEncClass (line 121) | struct _GstKateEncClass

FILE: ext/kate/gstkateparse.c
  function gst_kate_parse_class_init (line 107) | static void
  function gst_kate_parse_init (line 127) | static void
  function gst_kate_parse_drain_event_queue (line 145) | static void
  function GstFlowReturn (line 156) | static GstFlowReturn
  function gst_kate_parse_clear_queue (line 230) | static void
  function GstFlowReturn (line 248) | static GstFlowReturn
  function GstFlowReturn (line 271) | static GstFlowReturn
  function GstFlowReturn (line 304) | static GstFlowReturn
  function GstFlowReturn (line 323) | static GstFlowReturn
  function GstFlowReturn (line 354) | static GstFlowReturn
  function GstFlowReturn (line 390) | static GstFlowReturn
  function gboolean (line 407) | static gboolean
  function gboolean (line 417) | static gboolean
  function gboolean (line 453) | static gboolean
  function gboolean (line 502) | static gboolean
  function gst_kate_parse_free_stream_headers (line 584) | static void
  function GstStateChangeReturn (line 594) | static GstStateChangeReturn

FILE: ext/kate/gstkateparse.h
  type GstKateParse (line 41) | typedef struct _GstKateParse GstKateParse;
  type GstKateParseClass (line 42) | typedef struct _GstKateParseClass GstKateParseClass;
  type _GstKateParse (line 49) | struct _GstKateParse
  type _GstKateParseClass (line 67) | struct _GstKateParseClass

FILE: ext/kate/gstkatespu.c
  function gst_kate_spu_decode_colormap (line 44) | static void
  function gst_kate_spu_decode_alpha (line 53) | static void
  function gst_kate_spu_decode_area (line 62) | static void
  function gst_kate_spu_decode_pixaddr (line 73) | static void
  function guint16 (line 81) | static guint16
  function guint8 (line 139) | static inline guint8
  function guint16 (line 157) | static guint16
  function gst_kate_spu_crop_bitmap (line 175) | static void
  function GstFlowReturn (line 278) | static GstFlowReturn
  function gst_kate_spu_clamp (line 395) | static inline int
  function gst_kate_spu_yuv2rgb (line 405) | static void
  function GstFlowReturn (line 427) | static GstFlowReturn
  function GstFlowReturn (line 472) | GstFlowReturn
  function gst_kate_spu_add_nybble (line 642) | static void
  function gst_kate_spu_rgb2yuv (line 654) | static void
  function gst_kate_spu_make_palette (line 665) | static void
  function GstBuffer (line 702) | GstBuffer *

FILE: ext/kate/gstkatetag.c
  function gst_kate_tag_class_init (line 106) | static void
  function gst_kate_tag_init (line 149) | static void
  function gst_kate_tag_dispose (line 158) | static void
  function gst_kate_tag_set_property (line 177) | static void
  function gst_kate_tag_get_property (line 215) | static void
  function guint16 (line 240) | static guint16
  function GstFlowReturn (line 263) | static GstFlowReturn

FILE: ext/kate/gstkatetag.h
  type GstKateTag (line 39) | typedef struct _GstKateTag GstKateTag;
  type GstKateTagClass (line 40) | typedef struct _GstKateTagClass GstKateTagClass;
  type _GstKateTag (line 47) | struct _GstKateTag
  type _GstKateTagClass (line 57) | struct _GstKateTagClass

FILE: ext/kate/gstkatetiger.c
  function GType (line 187) | static GType
  function gst_kate_tiger_base_init (line 221) | static void
  function gst_kate_tiger_class_init (line 238) | static void
  function gst_kate_tiger_init (line 340) | static void
  function gst_kate_tiger_dispose (line 400) | static void
  function gst_kate_tiger_update_quality (line 431) | static void
  function gst_kate_tiger_update_default_font_effect (line 439) | static void
  function gst_kate_tiger_update_default_font_color (line 448) | static void
  function gst_kate_tiger_update_default_background_color (line 459) | static void
  function gst_kate_tiger_set_property (line 471) | static void
  function gst_kate_tiger_get_property (line 549) | static void
  function GstFlowReturn (line 615) | static GstFlowReturn
  function gboolean (line 735) | static gboolean
  function gdouble (line 764) | static gdouble
  function gst_kate_tiger_set_composition (line 776) | static inline void
  function GstFlowReturn (line 798) | static GstFlowReturn
  function GstStateChangeReturn (line 906) | static GstStateChangeReturn
  function gboolean (line 970) | static gboolean
  function gboolean (line 1034) | static gboolean
  function gboolean (line 1061) | static gboolean
  function gboolean (line 1109) | static gboolean
  function gboolean (line 1134) | static gboolean
  function gboolean (line 1193) | static gboolean
  function gboolean (line 1212) | gboolean

FILE: ext/kate/gstkatetiger.h
  type GstKateTiger (line 68) | typedef struct _GstKateTiger GstKateTiger;
  type GstKateTigerClass (line 69) | typedef struct _GstKateTigerClass GstKateTigerClass;
  type _GstKateTiger (line 71) | struct _GstKateTiger
  type _GstKateTigerClass (line 110) | struct _GstKateTigerClass

FILE: ext/kate/gstkateutil.c
  function GstCaps (line 39) | GstCaps *
  function gst_kate_util_install_decoder_base_properties (line 79) | void
  function gst_kate_util_decode_base_init (line 104) | void
  function gst_kate_util_decode_base_reset (line 122) | static void
  function gboolean (line 142) | gboolean
  function gst_kate_util_decoder_base_free_event_queue (line 186) | static void
  function gst_kate_util_decoder_base_drain_event_queue (line 199) | static void
  function gst_kate_util_decoder_base_add_tags (line 216) | void
  function GstEvent (line 234) | GstEvent *
  function gboolean (line 243) | gboolean
  function gboolean (line 268) | static inline gboolean
  function GstFlowReturn (line 280) | GstFlowReturn
  function GstStateChangeReturn (line 457) | GstStateChangeReturn
  function gst_kate_util_decoder_base_set_flushing (line 511) | void
  function gst_kate_util_decoder_base_segment_event (line 519) | void
  function gboolean (line 532) | gboolean
  function GstClockTime (line 569) | static GstClockTime
  function gboolean (line 588) | gboolean
  function gboolean (line 634) | gboolean

FILE: ext/kate/gstkateutil.h
  type GstKateDecoderBaseQueuedEvent (line 47) | typedef struct
  type GstKateDecoderBase (line 55) | typedef struct

FILE: ext/ladspa/gstladspa.c
  function ladspa_plugin_register_element (line 158) | static void
  function ladspa_count_ports (line 175) | static void
  function ladspa_describe_plugin (line 201) | static void
  function gboolean (line 260) | static gboolean
  function gboolean (line 289) | static gboolean
  function gboolean (line 342) | static gboolean
  function gboolean (line 450) | static gboolean

FILE: ext/ladspa/gstladspafilter.c
  function gst_my_audio_filter_class_add_pad_templates (line 41) | void
  function GstCaps (line 61) | static GstCaps *
  function GstCaps (line 81) | static GstCaps *
  function GstFlowReturn (line 129) | static GstFlowReturn
  function gboolean (line 156) | static gboolean
  function gboolean (line 164) | static gboolean
  function GstFlowReturn (line 172) | static GstFlowReturn
  function GstFlowReturn (line 188) | static GstFlowReturn
  function gst_ladspa_filter_type_set_property (line 209) | static void
  function gst_ladspa_filter_type_get_property (line 219) | static void
  function gst_ladspa_filter_type_init (line 229) | static void
  function gst_ladspa_filter_type_dispose (line 246) | static void
  function gst_ladspa_filter_type_finalize (line 256) | static void
  function gst_ladspa_filter_type_base_init (line 272) | static void
  function gst_ladspa_filter_type_base_finalize (line 289) | static void
  function gst_ladspa_filter_type_class_init (line 295) | static void
  function gst_ladspa_filter_init (line 333) | static void
  function gst_ladspa_filter_class_init (line 338) | static void
  function ladspa_register_filter_element (line 346) | void

FILE: ext/ladspa/gstladspafilter.h
  type GstLADSPAFilter (line 41) | typedef struct _GstLADSPAFilter GstLADSPAFilter;
  type GstLADSPAFilterClass (line 43) | typedef struct _GstLADSPAFilterClass GstLADSPAFilterClass;
  type _GstLADSPAFilter (line 45) | struct _GstLADSPAFilter
  type _GstLADSPAFilterClass (line 52) | struct _GstLADSPAFilterClass

FILE: ext/ladspa/gstladspasink.c
  function gst_my_base_sink_class_add_pad_template (line 58) | void
  function gboolean (line 73) | static gboolean
  function gboolean (line 91) | static gboolean
  function GstFlowReturn (line 116) | static GstFlowReturn
  function GstFlowReturn (line 129) | static GstFlowReturn
  function GstStateChangeReturn (line 162) | static GstStateChangeReturn
  function gst_ladspa_sink_type_set_property (line 185) | static void
  function gst_ladspa_sink_type_get_property (line 208) | static void
  function gst_ladspa_sink_type_init (line 231) | static void
  function gst_ladspa_sink_type_dispose (line 244) | static void
  function gst_ladspa_sink_type_finalize (line 254) | static void
  function gst_ladspa_sink_type_base_init (line 270) | static void
  function gst_ladspa_sink_type_base_finalize (line 287) | static void
  function gst_ladspa_sink_type_class_init (line 293) | static void
  function gst_ladspa_sink_init (line 345) | static void
  function gst_ladspa_sink_class_init (line 350) | static void
  function ladspa_register_sink_element (line 358) | void

FILE: ext/ladspa/gstladspasink.h
  type GstLADSPASink (line 42) | typedef struct _GstLADSPASink GstLADSPASink;
  type GstLADSPASinkClass (line 44) | typedef struct _GstLADSPASinkClass GstLADSPASinkClass;
  type _GstLADSPASink (line 46) | struct _GstLADSPASink
  type _GstLADSPASinkClass (line 58) | struct _GstLADSPASinkClass

FILE: ext/ladspa/gstladspasource.c
  function gst_my_base_source_class_add_pad_template (line 59) | void
  function GstCaps (line 74) | static GstCaps *
  function gboolean (line 101) | static gboolean
  function gboolean (line 122) | static gboolean
  function gst_ladspa_source_type_get_times (line 167) | static void
  function gboolean (line 192) | static gboolean
  function gboolean (line 248) | static gboolean
  function GstFlowReturn (line 255) | static GstFlowReturn
  function gboolean (line 368) | static gboolean
  function gboolean (line 383) | static gboolean
  function gst_ladspa_source_type_set_property (line 390) | static void
  function gst_ladspa_source_type_get_property (line 422) | static void
  function gst_ladspa_source_type_init (line 451) | static void
  function gst_ladspa_source_type_dispose (line 471) | static void
  function gst_ladspa_source_type_finalize (line 481) | static void
  function gst_ladspa_source_type_base_init (line 497) | static void
  function gst_ladspa_source_type_base_finalize (line 515) | static void
  function gst_ladspa_source_type_class_init (line 521) | static void
  function gst_ladspa_source_init (line 587) | static void
  function gst_ladspa_source_class_init (line 592) | static void
  function ladspa_register_source_element (line 600) | void

FILE: ext/ladspa/gstladspasource.h
  type GstLADSPASource (line 42) | typedef struct _GstLADSPASource GstLADSPASource;
  type GstLADSPASourceClass (line 44) | typedef struct _GstLADSPASourceClass GstLADSPASourceClass;
  type _GstLADSPASource (line 46) | struct _GstLADSPASource
  type _GstLADSPASourceClass (line 70) | struct _GstLADSPASourceClass

FILE: ext/ladspa/gstladspautils.c
  function gst_ladspa_ladspa_deinterleave_data (line 72) | static inline void
  function gst_ladspa_interleave_ladspa_data (line 88) | static inline void
  function gst_ladspa_connect_audio_in (line 103) | static inline void
  function gst_ladspa_connect_audio_out (line 119) | static inline void
  function gst_ladspa_run (line 135) | static inline void
  function gboolean (line 144) | gboolean
  function gboolean (line 168) | static gboolean
  function gboolean (line 184) | static gboolean
  function gboolean (line 200) | static gboolean
  function gst_ladspa_close (line 227) | static void
  function gboolean (line 245) | gboolean
  function gboolean (line 271) | gboolean
  function gchar (line 287) | static gchar *
  function GParamSpec (line 341) | static GParamSpec *
  function gst_ladspa_object_set_property (line 455) | void
  function gst_ladspa_object_get_property (line 482) | void
  function gst_ladspa_object_class_install_properties (line 519) | void
  function gst_ladspa_element_class_set_metadata (line 541) | void
  function gst_ladspa_filter_type_class_add_pad_templates (line 664) | void
  function gst_ladspa_source_type_class_add_pad_template (line 688) | void
  function gst_ladspa_sink_type_class_add_pad_template (line 705) | void
  function gst_ladspa_init (line 722) | void
  function gst_ladspa_finalize (line 743) | void
  function gst_ladspa_class_init (line 759) | void
  function gst_ladspa_class_finalize (line 823) | void
  function ladspa_register_element (line 845) | void

FILE: ext/ladspa/gstladspautils.h
  type _GstLADSPA (line 36) | struct _GstLADSPA
  type GstLADSPAClass (line 38) | typedef struct _GstLADSPAClass GstLADSPAClass;
  type _GstLADSPA (line 40) | struct _GstLADSPA
  type _GstLADSPAClass (line 64) | struct _GstLADSPAClass

FILE: ext/ldac/gstldacenc.c
  function GType (line 96) | static GType
  function gst_ldac_enc_class_init (line 113) | static void
  function gst_ldac_enc_init (line 149) | static void
  function gst_ldac_enc_set_property (line 158) | static void
  function gst_ldac_enc_get_property (line 174) | static void
  function GstCaps (line 190) | static GstCaps *
  function gboolean (line 251) | static gboolean
  function gboolean (line 273) | static gboolean
  function GstFlowReturn (line 347) | static GstFlowReturn
  function gboolean (line 494) | static gboolean
  function gboolean (line 510) | static gboolean
  function guint (line 536) | static guint
  function guint (line 568) | static guint
  function guint (line 604) | static guint

FILE: ext/ldac/gstldacenc.h
  type GstLdacEnc (line 37) | typedef struct _GstLdacEnc GstLdacEnc;
  type GstLdacEncClass (line 38) | typedef struct _GstLdacEncClass GstLdacEncClass;
  type GstLdacEqmid (line 40) | typedef enum
  type _GstLdacEnc (line 47) | struct _GstLdacEnc {
  type _GstLdacEncClass (line 60) | struct _GstLdacEncClass {

FILE: ext/ldac/ldac-plugin.c
  function gboolean (line 27) | static gboolean

FILE: ext/libde265/gstlibde265.c
  function gboolean (line 28) | static gboolean

FILE: ext/libde265/libde265-dec.c
  type de265_image (line 91) | struct de265_image
  function gst_libde265_dec_class_init (line 97) | static void
  function _gst_libde265_dec_reset_decoder (line 132) | static inline void
  function gst_libde265_dec_init (line 143) | static void
  function _gst_libde265_dec_free_decoder (line 156) | static inline void
  function gst_libde265_dec_finalize (line 172) | static void
  function gst_libde265_dec_set_property (line 182) | static void
  function gst_libde265_dec_get_property (line 202) | static void
  type GstLibde265FrameRef (line 217) | struct GstLibde265FrameRef
  function gst_libde265_dec_release_frame_ref (line 226) | static void
  function gst_libde265_dec_get_buffer (line 237) | static int
  function gst_libde265_dec_release_buffer (line 347) | static void
  function gboolean (line 363) | static gboolean
  function gboolean (line 402) | static gboolean
  function gboolean (line 412) | static gboolean
  function GstFlowReturn (line 458) | static GstFlowReturn
  function GstFlowReturn (line 507) | static GstFlowReturn
  function gboolean (line 537) | static gboolean
  function GstFlowReturn (line 678) | static GstFlowReturn
  function GstFlowReturn (line 759) | static GstFlowReturn

FILE: ext/libde265/libde265-dec.h
  type GstLibde265DecFormat (line 38) | typedef enum
  type GstLibde265Dec (line 44) | typedef struct _GstLibde265Dec
  type GstLibde265DecClass (line 60) | typedef struct _GstLibde265DecClass

FILE: ext/libmms/gstmms.c
  function gst_mms_class_init (line 79) | static void
  function gst_mms_init (line 131) | static void
  function gst_mms_finalize (line 140) | static void
  function gboolean (line 167) | static gboolean
  function gboolean (line 215) | static gboolean
  function gboolean (line 258) | static gboolean
  function GstFlowReturn (line 302) | static GstFlowReturn
  function gboolean (line 357) | static gboolean
  function gboolean (line 365) | static gboolean
  function gboolean (line 379) | static gboolean
  function gboolean (line 451) | static gboolean
  function gst_mms_set_property (line 472) | static void
  function gst_mms_get_property (line 494) | static void
  function gboolean (line 521) | static gboolean
  function GstURIType (line 527) | static GstURIType
  function gchar (line 533) | static const gchar *const *
  function gchar (line 541) | static gchar *
  function gchar (line 550) | static gchar *
  function gboolean (line 598) | static gboolean
  function gst_mms_uri_handler_init (line 620) | static void

FILE: ext/libmms/gstmms.h
  type GstMMS (line 26) | typedef struct _GstMMS      GstMMS;
  type GstMMSClass (line 27) | typedef struct _GstMMSClass GstMMSClass;
  type _GstMMS (line 29) | struct _GstMMS
  type _GstMMSClass (line 40) | struct _GstMMSClass

FILE: ext/lv2/gstlv2.c
  function lv2_plugin_register_element (line 106) | static void
  function lv2_count_ports (line 121) | static void
  function gboolean (line 162) | static gboolean
  function gboolean (line 253) | static gboolean
  function plugin_cleanup (line 377) | __attribute__ ((destructor))

FILE: ext/lv2/gstlv2filter.c
  type lv2_control_info (line 42) | typedef struct _lv2_control_info
  type GstLV2Filter (line 53) | typedef struct _GstLV2Filter GstLV2Filter;
  type GstLV2FilterClass (line 54) | typedef struct _GstLV2FilterClass GstLV2FilterClass;
  type _GstLV2Filter (line 57) | struct _GstLV2Filter
  type _GstLV2FilterClass (line 64) | struct _GstLV2FilterClass
  function gchar (line 75) | static gchar **
  function gboolean (line 83) | static gboolean
  function gboolean (line 91) | static gboolean
  function gboolean (line 99) | static gboolean
  function gboolean (line 106) | static gboolean
  function gboolean (line 114) | static gboolean
  function gboolean (line 121) | static gboolean
  function gst_lv2_filter_preset_interface_init (line 129) | static void
  function gst_lv2_filter_set_property (line 145) | static void
  function gst_lv2_filter_get_property (line 154) | static void
  function gst_lv2_filter_finalize (line 163) | static void
  function GstAudioChannelPosition (line 182) | static GstAudioChannelPosition
  function GstAudioChannelPosition (line 223) | static GstAudioChannelPosition *
  function gst_lv2_filter_type_class_add_pad_templates (line 241) | static void
  function gboolean (line 281) | static gboolean
  function gboolean (line 344) | static gboolean
  function gst_lv2_filter_deinterleave_data (line 352) | static inline void
  function gst_lv2_filter_interleave_data (line 363) | static inline void
  function GstFlowReturn (line 375) | static GstFlowReturn
  function GstFlowReturn (line 453) | static GstFlowReturn
  function GstFlowReturn (line 468) | static GstFlowReturn
  function gst_lv2_filter_base_init (line 487) | static void
  function gst_lv2_filter_base_finalize (line 501) | static void
  function gst_lv2_filter_class_init (line 507) | static void
  function gst_lv2_filter_init (line 529) | static void
  function gst_lv2_filter_register_element (line 539) | void

FILE: ext/lv2/gstlv2source.c
  type GstLV2Source (line 43) | typedef struct _GstLV2Source GstLV2Source;
  type GstLV2SourceClass (line 44) | typedef struct _GstLV2SourceClass GstLV2SourceClass;
  type _GstLV2Source (line 46) | struct _GstLV2Source
  type _GstLV2SourceClass (line 70) | struct _GstLV2SourceClass
  function gchar (line 92) | static gchar **
  function gboolean (line 100) | static gboolean
  function gboolean (line 108) | static gboolean
  function gboolean (line 116) | static gboolean
  function gboolean (line 123) | static gboolean
  function gboolean (line 131) | static gboolean
  function gboolean (line 138) | static gboolean
  function gst_lv2_source_preset_interface_init (line 146) | static void
  function gboolean (line 163) | static gboolean
  function GstCaps (line 193) | static GstCaps *
  function gst_lv2_source_get_times (line 218) | static void
  function gboolean (line 243) | static gboolean
  function gboolean (line 299) | static gboolean
  function gboolean (line 306) | static gboolean
  function gst_lv2_source_interleave_data (line 349) | static inline void
  function GstFlowReturn (line 361) | static GstFlowReturn
  function gboolean (line 521) | static gboolean
  function gboolean (line 538) | static gboolean
  function gst_lv2_source_set_property (line 548) | static void
  function gst_lv2_source_get_property (line 578) | static void
  function gst_lv2_source_finalize (line 606) | static void
  function gst_lv2_source_base_init (line 617) | static void
  function gst_lv2_source_base_finalize (line 644) | static void
  function gst_lv2_source_class_init (line 650) | static void
  function gst_lv2_source_init (line 706) | static void
  function gst_lv2_source_register_element (line 718) | void

FILE: ext/lv2/gstlv2utils.c
  function lv2_log_printf (line 45) | static int
  function lv2_log_vprintf (line 56) | static int
  function LV2_URID (line 74) | static LV2_URID
  function gboolean (line 108) | gboolean
  function gst_lv2_host_init (line 145) | void
  function gchar (line 173) | gchar **
  function set_port_value (line 225) | static void
  function gboolean (line 256) | gboolean
  function gboolean (line 296) | gboolean
  function gboolean (line 368) | gboolean
  function gboolean (line 377) | gboolean
  function gst_lv2_init (line 396) | void
  function gst_lv2_finalize (line 408) | void
  function gboolean (line 418) | gboolean
  function gboolean (line 457) | gboolean
  function gst_lv2_object_set_property (line 482) | void
  function gst_lv2_object_get_property (line 518) | void
  function gchar (line 565) | static gchar *
  function gchar (line 598) | static gchar *
  function enum_val_cmp (line 606) | static int
  function GParamSpec (line 612) | static GParamSpec *
  function gst_lv2_class_install_properties (line 755) | void
  function gst_lv2_element_class_set_metadata (line 779) | void
  function gst_lv2_class_init (line 823) | void
  function gst_lv2_class_finalize (line 964) | void

FILE: ext/lv2/gstlv2utils.h
  type _GstLV2Group (line 34) | struct _GstLV2Group
  type GstLV2Port (line 35) | typedef struct _GstLV2Port GstLV2Port;
  type GstLV2 (line 37) | typedef struct _GstLV2 GstLV2;
  type GstLV2Class (line 38) | typedef struct _GstLV2Class GstLV2Class;
  type _GstLV2Group (line 40) | struct _GstLV2Group
  type GstLV2PortType (line 50) | typedef enum {
  type _GstLV2Port (line 56) | struct _GstLV2Port
  type _GstLV2 (line 67) | struct _GstLV2
  type _GstLV2Class (line 87) | struct _GstLV2Class

FILE: ext/mdns/gstmicrodns.c
  function gboolean (line 30) | static gboolean

FILE: ext/mdns/gstmicrodnsdevice.c
  type ListenerContext (line 24) | typedef struct _ListenerContext ListenerContext;
  type _GstMDNSDeviceProvider (line 26) | struct _GstMDNSDeviceProvider
  type _ListenerContext (line 44) | struct _ListenerContext
  type _GstMDNSDevice (line 58) | struct _GstMDNSDevice
  function gint (line 70) | static gint
  function gint (line 81) | static gint
  function gst_mdns_device_finalize (line 88) | static void
  function GstElement (line 98) | static GstElement *
  function gst_mdns_device_init (line 116) | static void
  function gst_mdns_device_class_init (line 121) | static void
  function GstElementFactory (line 134) | static GstElementFactory *
  function GstDevice (line 155) | static GstDevice *
  function remove_old_devices (line 180) | static void
  function stop (line 211) | static bool
  function callback (line 229) | static void
  function gpointer (line 342) | static gpointer
  function gboolean (line 381) | static gboolean
  function gst_mdns_device_provider_stop (line 399) | static void
  function gst_mdns_device_provider_init (line 413) | static void
  function gst_mdns_device_provider_class_init (line 418) | static void

FILE: ext/modplug/gstmodplug.cc
  function gst_modplug_class_init (line 135) | static void
  function gst_modplug_init (line 219) | static void
  function gst_modplug_dispose (line 257) | static void
  function gboolean (line 270) | static gboolean
  function gboolean (line 324) | static gboolean
  function gboolean (line 419) | static gboolean
  function gboolean (line 438) | static gboolean
  function gboolean (line 545) | static gboolean
  function gboolean (line 575) | static gboolean
  function gboolean (line 601) | static gboolean
  function gst_modplug_loop (line 619) | static void
  function GstStateChangeReturn (line 772) | static GstStateChangeReturn
  function gst_modplug_set_property (line 814) | static void
  function gst_modplug_get_property (line 859) | static void
  function gboolean (line 904) | static gboolean

FILE: ext/modplug/gstmodplug.h
  type _GstModPlug (line 40) | struct _GstModPlug {
  type _GstModPlugClass (line 78) | struct _GstModPlugClass {
  type GstModPlug (line 82) | typedef struct _GstModPlug GstModPlug;
  type GstModPlugClass (line 83) | typedef struct _GstModPlugClass GstModPlugClass;

FILE: ext/mpeg2enc/gstmpeg2enc.cc
  function gst_mpeg2enc_class_init (line 116) | static void
  function gst_mpeg2enc_finalize (line 156) | static void
  function gst_mpeg2enc_init (line 172) | static void
  function gboolean (line 188) | static gboolean
  function gst_mpeg2enc_reset (line 214) | static void
  function gboolean (line 233) | static gboolean
  function gboolean (line 255) | static gboolean
  function gst_mpeg2enc_add_fps (line 289) | static void
  function gint (line 307) | static inline gint *
  function gboolean (line 325) | static gboolean
  function GstStructure (line 377) | static GstStructure *
  function GstCaps (line 418) | static GstCaps *
  function GstFlowReturn (line 469) | static GstFlowReturn
  function gboolean (line 487) | static gboolean
  function gst_mpeg2enc_loop (line 544) | static void
  function GstFlowReturn (line 664) | static GstFlowReturn
  function gst_mpeg2enc_get_property (line 735) | static void
  function gst_mpeg2enc_set_property (line 742) | static void
  function gst_mpeg2enc_log_callback (line 754) | static void
  function gboolean (line 794) | static gboolean
  function gboolean (line 808) | static gboolean

FILE: ext/mpeg2enc/gstmpeg2enc.hh
  type _GstMpeg2enc (line 69) | struct _GstMpeg2enc {
  type _GstMpeg2encClass (line 95) | struct _GstMpeg2encClass {

FILE: ext/mpeg2enc/gstmpeg2encoder.cc
  class GstOnTheFlyPass2 (line 43) | class GstOnTheFlyPass2 : public OnTheFlyPass2 {
    method GstOnTheFlyPass2 (line 45) | GstOnTheFlyPass2 (EncoderParams &encoder, gboolean disable_encode_retr...
    method ReencodeRequired (line 46) | bool ReencodeRequired() const { return disable_encode_retries ? false ...
  function gboolean (line 72) | gboolean GstMpeg2Encoder::setup ()
  function GstCaps (line 136) | GstCaps *

FILE: ext/mpeg2enc/gstmpeg2encoder.hh
  class GstMpeg2Encoder (line 32) | class GstMpeg2Encoder : public MPEG2Encoder {

FILE: ext/mpeg2enc/gstmpeg2encoptions.cc
  function GType (line 90) | static GType
  function GType (line 126) | static GType
  function GType (line 155) | static GType
  function GType (line 180) | static GType
  function GType (line 210) | static GType
  function GType (line 239) | static GType
  function GType (line 263) | static GType

FILE: ext/mpeg2enc/gstmpeg2encoptions.hh
  class GstMpeg2EncOptions (line 29) | class GstMpeg2EncOptions : public MPEG2EncOptions {

FILE: ext/mpeg2enc/gstmpeg2encpicturereader.hh
  class GstMpeg2EncPictureReader (line 31) | class GstMpeg2EncPictureReader : public PictureReader {

FILE: ext/mpeg2enc/gstmpeg2encstreamwriter.cc
  function guint64 (line 72) | guint64

FILE: ext/mpeg2enc/gstmpeg2encstreamwriter.hh
  class GstMpeg2EncStreamWriter (line 30) | class GstMpeg2EncStreamWriter : public ElemStrmWriter {

FILE: ext/mplex/gstmplex.cc
  function gst_mplex_class_init (line 124) | static void
  function gst_mplex_finalize (line 157) | static void
  function gst_mplex_init (line 185) | static void
  function gst_mplex_reset (line 205) | static void
  function gboolean (line 265) | static gboolean
  function gst_mplex_loop (line 379) | static void
  function gboolean (line 451) | static gboolean
  function gst_mplex_start_task (line 529) | static void
  function GstFlowReturn (line 542) | static GstFlowReturn
  function GstPad (line 609) | static GstPad *
  function gst_mplex_release_pad (line 648) | static void
  function gst_mplex_get_property (line 685) | static void
  function gst_mplex_set_property (line 692) | static void
  function gboolean (line 699) | static gboolean
  function GstStateChangeReturn (line 728) | static GstStateChangeReturn
  function gst_mplex_log_callback (line 766) | static void
  function gboolean (line 806) | static gboolean
  function gboolean (line 819) | static gboolean

FILE: ext/mplex/gstmplex.hh
  type _GstMplexPad (line 77) | struct _GstMplexPad
  type _GstMplex (line 94) | struct _GstMplex {
  type _GstMplexClass (line 114) | struct _GstMplexClass {

FILE: ext/mplex/gstmplexibitstream.hh
  type _GstMplex (line 33) | struct _GstMplex
  type _GstMplexPad (line 34) | struct _GstMplexPad
  class GstMplexIBitStream (line 36) | class GstMplexIBitStream : public IBitStream {

FILE: ext/mplex/gstmplexjob.cc
  function GType (line 52) | static GType

FILE: ext/mplex/gstmplexjob.hh
  class GstMplexJob (line 28) | class GstMplexJob : public MultiplexJob {

FILE: ext/mplex/gstmplexoutputstream.hh
  class GstMplexOutputStream (line 32) | class GstMplexOutputStream : public OutputStream {

FILE: ext/musepack/gstmusepackdec.c
  function gst_musepackdec_class_init (line 83) | static void
  function gst_musepackdec_init (line 102) | static void
  function gst_musepackdec_dispose (line 128) | static void
  function gst_musepackdec_send_newsegment (line 144) | static void
  function gboolean (line 162) | static gboolean
  function gboolean (line 257) | static gboolean
  function gboolean (line 279) | static gboolean
  function gboolean (line 364) | static gboolean
  function gboolean (line 446) | static gboolean
  function gboolean (line 470) | static gboolean
  function gst_musepackdec_loop (line 496) | static void
  function GstStateChangeReturn (line 599) | static GstStateChangeReturn
  function gboolean (line 632) | static gboolean

FILE: ext/musepack/gstmusepackdec.h
  type GstMusepackDec (line 41) | typedef struct _GstMusepackDec {
  type GstMusepackDecClass (line 58) | typedef struct _GstMusepackDecClass {

FILE: ext/musepack/gstmusepackreader.c
  function mpc_int32_t (line 42) | static mpc_int32_t
  function mpc_int32_t (line 76) | static mpc_int32_t
  function mpc_bool_t (line 90) | static mpc_bool_t
  function mpc_int32_t (line 107) | static mpc_int32_t
  function mpc_int32_t (line 114) | static mpc_int32_t
  function mpc_bool_t (line 131) | static mpc_bool_t
  function gst_musepack_init_reader (line 137) | void

FILE: ext/neon/gstneonhttpsrc.c
  function gst_neonhttp_src_class_init (line 119) | static void
  function gst_neonhttp_src_init (line 221) | static void
  function gst_neonhttp_src_dispose (line 252) | static void
  function gst_neonhttp_src_set_property (line 288) | static void
  function gst_neonhttp_src_get_property (line 364) | static void
  function oom_callback (line 434) | static void
  function GstFlowReturn (line 440) | static GstFlowReturn
  function gboolean (line 478) | static gboolean
  function gboolean (line 606) | static gboolean
  function gboolean (line 629) | static gboolean
  function gboolean (line 644) | static gboolean
  function gboolean (line 650) | static gboolean
  function gboolean (line 681) | static gboolean
  function gboolean (line 717) | static gboolean
  function gboolean (line 772) | static gboolean
  function ssl_verify_callback (line 799) | static int
  function gint (line 833) | static gint
  function gint (line 947) | static gint
  function gst_neonhttp_src_close_session (line 1005) | static void
  function gchar (line 1024) | static gchar *
  function gchar (line 1049) | static gchar *
  function guint (line 1056) | static guint
  function gchar (line 1062) | static const gchar *const *
  function gchar (line 1070) | static gchar *
  function gboolean (line 1079) | static gboolean
  function gst_neonhttp_src_uri_handler_init (line 1088) | static void
  function gboolean (line 1104) | static gboolean

FILE: ext/neon/gstneonhttpsrc.h
  type GstNeonhttpSrc (line 41) | typedef struct _GstNeonhttpSrc GstNeonhttpSrc;
  type GstNeonhttpSrcClass (line 42) | typedef struct _GstNeonhttpSrcClass GstNeonhttpSrcClass;
  type _GstNeonhttpSrc (line 44) | struct _GstNeonhttpSrc {
  type _GstNeonhttpSrcClass (line 81) | struct _GstNeonhttpSrcClass {

FILE: ext/ofa/gstofa.c
  function gst_ofa_finalize (line 59) | static void
  function gst_ofa_class_init (line 75) | static void
  function create_fingerprint (line 108) | static void
  function gboolean (line 165) | static gboolean
  function gst_ofa_init (line 198) | static void
  function GstFlowReturn (line 209) | static GstFlowReturn
  function gst_ofa_get_property (line 238) | static void
  function gboolean (line 255) | static gboolean
  function gboolean (line 278) | static gboolean

FILE: ext/ofa/gstofa.h
  type GstOFA (line 49) | typedef struct _GstOFA GstOFA;
  type GstOFAClass (line 50) | typedef struct _GstOFAClass GstOFAClass;
  type _GstOFA (line 59) | struct _GstOFA
  type _GstOFAClass (line 70) | struct _GstOFAClass

FILE: ext/onnx/gstonnx.c
  function gboolean (line 28) | static gboolean

FILE: ext/onnx/gstonnxclient.cpp
  type GstOnnxNamespace (line 36) | namespace GstOnnxNamespace
    function GstMlModelInputImageFormat (line 128) | GstMlModelInputImageFormat GstOnnxClient::getInputImageFormat (void)
    function gint (line 147) | gint GstOnnxClient::getOutputNodeIndex (GstMlOutputNodeFunction node)
    function ONNXTensorElementDataType (line 158) | ONNXTensorElementDataType

FILE: ext/onnx/gstonnxclient.h
  function namespace (line 32) | namespace GstOnnxNamespace {

FILE: ext/onnx/gstonnxelement.c
  function GType (line 28) | GType
  function GType (line 57) | GType
  function GType (line 81) | GType

FILE: ext/onnx/gstonnxelement.h
  type GstOnnxOptimizationLevel (line 28) | typedef enum
  type GstOnnxExecutionProvider (line 36) | typedef enum
  type GstMlModelInputImageFormat (line 42) | typedef enum {

FILE: ext/onnx/gstonnxobjectdetector.cpp
  function gst_onnx_object_detector_class_init (line 151) | static void
  function gst_onnx_object_detector_init (line 336) | static void
  function gst_onnx_object_detector_finalize (line 343) | static void
  function gst_onnx_object_detector_set_property (line 353) | static void
  function gst_onnx_object_detector_get_property (line 432) | static void
  function gboolean (line 488) | static gboolean
  function GstCaps (line 569) | static GstCaps *
  function GstFlowReturn (line 612) | static GstFlowReturn
  function gboolean (line 626) | static gboolean

FILE: ext/onnx/gstonnxobjectdetector.h
  type _GstOnnxObjectDetector (line 60) | struct _GstOnnxObjectDetector
  type _GstOnnxObjectDetectorClass (line 84) | struct _GstOnnxObjectDetectorClass

FILE: ext/openal/gstopenal.c
  function gboolean (line 34) | static gboolean

FILE: ext/openal/gstopenalelement.c
  function openal_element_init (line 37) | void

FILE: ext/openal/gstopenalsink.c
  function ALCcontext (line 128) | static inline ALCcontext *
  function popContext (line 141) | static inline void
  function ALenum (line 151) | static inline ALenum
  function gst_openal_sink_dispose (line 166) | static void
  function gst_openal_sink_class_init (line 178) | static void
  function gst_openal_sink_init (line 240) | static void
  function gst_openal_sink_finalize (line 266) | static void
  function gst_openal_sink_set_property (line 278) | static void
  function gst_openal_sink_get_property (line 311) | static void
  function GstCaps (line 352) | static GstCaps *
  function GstCaps (line 573) | static GstCaps *
  function gboolean (line 619) | static gboolean
  function gboolean (line 645) | static gboolean
  function gst_openal_sink_parse_spec (line 666) | static void
  function gboolean (line 837) | static gboolean
  function gboolean (line 932) | static gboolean
  function gint (line 966) | static gint
  function guint (line 1041) | static guint
  function gst_openal_sink_reset (line 1082) | static void

FILE: ext/openal/gstopenalsink.h
  type GstOpenALSink (line 62) | typedef struct _GstOpenALSink GstOpenALSink;
  type GstOpenALSinkClass (line 63) | typedef struct _GstOpenALSinkClass GstOpenALSinkClass;
  type _GstOpenALSink (line 69) | struct _GstOpenALSink
  type _GstOpenALSinkClass (line 104) | struct _GstOpenALSinkClass

FILE: ext/openal/gstopenalsrc.c
  function gst_openal_src_dispose (line 147) | static void
  function gst_openal_src_class_init (line 159) | static void
  function gst_openal_src_init (line 202) | static void
  function gst_openal_src_finalize (line 216) | static void
  function gst_openal_src_set_property (line 227) | static void
  function gst_openal_src_get_property (line 246) | static void
  function GstCaps (line 265) | static GstCaps *
  function GstCaps (line 330) | static GstCaps *
  function gboolean (line 383) | static gboolean
  function gst_openal_src_parse_spec (line 389) | static void
  function gboolean (line 489) | static gboolean
  function gboolean (line 521) | static gboolean
  function gboolean (line 539) | static gboolean
  function guint (line 545) | static guint
  function guint (line 567) | static guint
  function gst_openal_src_reset (line 585) | static void

FILE: ext/openal/gstopenalsrc.h
  type GstOpenalSrc (line 84) | typedef struct _GstOpenalSrc GstOpenalSrc;
  type GstOpenalSrcClass (line 85) | typedef struct _GstOpenalSrcClass GstOpenalSrcClass;
  type _GstOpenalSrc (line 87) | struct _GstOpenalSrc
  type _GstOpenalSrcClass (line 109) | struct _GstOpenalSrcClass

FILE: ext/openaptx/gstopenaptxdec.c
  function GstFlowReturn (line 70) | static GstFlowReturn
  function gboolean (line 211) | static gboolean
  function gst_openaptx_dec_set_property (line 241) | static void
  function gst_openaptx_dec_get_property (line 256) | static void
  function gboolean (line 274) | static gboolean
  function gboolean (line 280) | static gboolean
  function gst_openaptx_dec_class_init (line 295) | static void
  function gst_openaptx_dec_init (line 333) | static void

FILE: ext/openaptx/gstopenaptxdec.h
  function G_BEGIN_DECLS (line 29) | G_BEGIN_DECLS

FILE: ext/openaptx/gstopenaptxenc.c
  function gint64 (line 73) | static gint64
  function gboolean (line 82) | static gboolean
  function GstFlowReturn (line 146) | static GstFlowReturn
  function gboolean (line 265) | static gboolean
  function gboolean (line 271) | static gboolean
  function gst_openaptx_enc_class_init (line 286) | static void
  function gst_openaptx_enc_init (line 313) | static void

FILE: ext/openaptx/gstopenaptxenc.h
  function G_BEGIN_DECLS (line 29) | G_BEGIN_DECLS

FILE: ext/openaptx/openaptx-plugin.c
  function gboolean (line 30) | static gboolean

FILE: ext/openaptx/openaptx-plugin.h
  function gsize (line 56) | static inline gsize aptx_frame_size(gboolean hd)

FILE: ext/opencv/MotionCells.h
  type MotionCellHeader (line 63) | struct MotionCellHeader{
  type MotionCellData (line 74) | struct MotionCellData{
  type motionmaskcoordrect (line 79) | typedef struct {
  type cellscolor (line 86) | typedef struct {
  type motioncellidx (line 92) | typedef struct {
  type Cell (line 97) | struct Cell
  type MotionCellsIdx (line 105) | struct MotionCellsIdx
  type OverlayRegions (line 115) | struct OverlayRegions
  function class (line 121) | class MotionCells

FILE: ext/opencv/cameraevent.cpp
  function GstEvent (line 35) | GstEvent *
  function gboolean (line 61) | gboolean

FILE: ext/opencv/camerautils.cpp
  function gchar (line 24) | gchar *
  function gboolean (line 36) | gboolean

FILE: ext/opencv/gstcameracalibrate.cpp
  function GType (line 139) | static GType
  function gst_camera_calibrate_finalize (line 179) | static void
  function gst_camera_calibrate_class_init (line 186) | static void
  function gst_camera_calibrate_init (line 305) | static void
  function gst_camera_calibrate_dispose (line 351) | static void
  function gst_camera_calibrate_set_property (line 362) | static void
  function gst_camera_calibrate_get_property (line 411) | static void
  function GstFlowReturn (line 468) | static GstFlowReturn
  function camera_calibrate_run (line 483) | void
  function camera_calibrate_calc_reprojection_errors (line 635) | static double
  function camera_calibrate_calc_corners (line 667) | static void
  function camera_calibrate_calibrate_full (line 691) | static bool
  function camera_calibrate_calibrate (line 745) | bool

FILE: ext/opencv/gstcameracalibrate.h
  type GstCameraCalibrate (line 65) | typedef struct _GstCameraCalibrate GstCameraCalibrate;
  type GstCameraCalibrateClass (line 66) | typedef struct _GstCameraCalibrateClass GstCameraCalibrateClass;
  type _GstCameraCalibrationPattern (line 68) | enum _GstCameraCalibrationPattern {
  type _GstCameraCalibrate (line 74) | struct _GstCameraCalibrate
  type _GstCameraCalibrateClass (line 103) | struct _GstCameraCalibrateClass

FILE: ext/opencv/gstcameraundistort.cpp
  function gst_camera_undistort_class_init (line 132) | static void
  function gst_camera_undistort_init (line 191) | static void
  function gst_camera_undistort_dispose (line 209) | static void
  function gst_camera_undistort_set_property (line 221) | static void
  function gst_camera_undistort_get_property (line 256) | static void
  function gboolean (line 281) | gboolean
  function GstFlowReturn (line 297) | static GstFlowReturn
  function camera_undistort_run (line 309) | static void
  function gboolean (line 342) | static gboolean
  function gboolean (line 359) | static gboolean
  function gboolean (line 374) | static gboolean
  function gboolean (line 393) | static gboolean

FILE: ext/opencv/gstcameraundistort.h
  type GstCameraUndistort (line 65) | typedef struct _GstCameraUndistort GstCameraUndistort;
  type GstCameraUndistortClass (line 66) | typedef struct _GstCameraUndistortClass GstCameraUndistortClass;
  type _GstCameraUndistort (line 68) | struct _GstCameraUndistort
  type _GstCameraUndistortClass (line 93) | struct _GstCameraUndistortClass

FILE: ext/opencv/gstcvdilate.cpp
  function gst_cv_dilate_class_init (line 77) | static void
  function gst_cv_dilate_init (line 98) | static void
  function GstFlowReturn (line 103) | static GstFlowReturn

FILE: ext/opencv/gstcvdilate.h
  type GstCvDilate (line 65) | typedef struct _GstCvDilate      GstCvDilate;
  type GstCvDilateClass (line 66) | typedef struct _GstCvDilateClass GstCvDilateClass;
  type _GstCvDilate (line 68) | struct _GstCvDilate
  type _GstCvDilateClass (line 73) | struct _GstCvDilateClass

FILE: ext/opencv/gstcvdilateerode.cpp
  function GType (line 87) | GType
  function gst_cv_dilate_erode_class_init (line 118) | static void
  function gst_cv_dilate_erode_init (line 157) | static void
  function gst_cv_dilate_erode_set_property (line 166) | static void
  function gst_cv_dilate_erode_get_property (line 182) | static void

FILE: ext/opencv/gstcvdilateerode.h
  type GstCvDilateErode (line 63) | typedef struct _GstCvDilateErode      GstCvDilateErode;
  type GstCvDilateErodeClass (line 64) | typedef struct _GstCvDilateErodeClass GstCvDilateErodeClass;
  type _GstCvDilateErode (line 66) | struct _GstCvDilateErode
  type _GstCvDilateErodeClass (line 73) | struct _GstCvDilateErodeClass

FILE: ext/opencv/gstcvequalizehist.cpp
  function gst_cv_equalize_hist_class_init (line 90) | static void
  function gst_cv_equalize_hist_init (line 109) | static void
  function GstFlowReturn (line 116) | static GstFlowReturn

FILE: ext/opencv/gstcvequalizehist.h
  type GstCvEqualizeHist (line 63) | typedef struct _GstCvEqualizeHist      GstCvEqualizeHist;
  type GstCvEqualizeHistClass (line 64) | typedef struct _GstCvEqualizeHistClass GstCvEqualizeHistClass;
  type _GstCvEqualizeHist (line 66) | struct _GstCvEqualizeHist
  type _GstCvEqualizeHistClass (line 71) | struct _GstCvEqualizeHistClass

FILE: ext/opencv/gstcverode.cpp
  function gst_cv_erode_class_init (line 77) | static void
  function gst_cv_erode_init (line 98) | static void
  function GstFlowReturn (line 103) | static GstFlowReturn

FILE: ext/opencv/gstcverode.h
  type GstCvErode (line 65) | typedef struct _GstCvErode      GstCvErode;
  type GstCvErodeClass (line 66) | typedef struct _GstCvErodeClass GstCvErodeClass;
  type _GstCvErode (line 68) | struct _GstCvErode
  type _GstCvErodeClass (line 73) | struct _GstCvErodeClass

FILE: ext/opencv/gstcvlaplace.cpp
  function gst_cv_laplace_finalize (line 118) | static void
  function gst_cv_laplace_class_init (line 131) | static void
  function gst_cv_laplace_init (line 178) | static void
  function gboolean (line 190) | static gboolean
  function gst_cv_laplace_set_property (line 204) | static void
  function gst_cv_laplace_get_property (line 235) | static void
  function GstFlowReturn (line 260) | static GstFlowReturn

FILE: ext/opencv/gstcvlaplace.h
  type GstCvLaplace (line 63) | typedef struct _GstCvLaplace      GstCvLaplace;
  type GstCvLaplaceClass (line 64) | typedef struct _GstCvLaplaceClass GstCvLaplaceClass;
  type _GstCvLaplace (line 66) | struct _GstCvLaplace
  type _GstCvLaplaceClass (line 80) | struct _GstCvLaplaceClass

FILE: ext/opencv/gstcvsmooth.cpp
  type GstCvSmoothMethod (line 98) | enum GstCvSmoothMethod
  function GType (line 108) | static GType
  function gst_cv_smooth_class_init (line 154) | static void
  function gst_cv_smooth_init (line 250) | static void
  function gst_cv_smooth_change_type (line 267) | static void
  function gst_cv_smooth_set_property (line 288) | static void
  function gst_cv_smooth_get_property (line 344) | static void
  function GstFlowReturn (line 384) | static GstFlowReturn

FILE: ext/opencv/gstcvsmooth.h
  type GstCvSmooth (line 63) | typedef struct _GstCvSmooth      GstCvSmooth;
  type GstCvSmoothClass (line 64) | typedef struct _GstCvSmoothClass GstCvSmoothClass;
  type _GstCvSmooth (line 66) | struct _GstCvSmooth
  type _GstCvSmoothClass (line 84) | struct _GstCvSmoothClass

FILE: ext/opencv/gstcvsobel.cpp
  function gst_cv_sobel_finalize (line 116) | static void
  function gst_cv_sobel_class_init (line 128) | static void
  function gst_cv_sobel_init (line 175) | static void
  function gboolean (line 188) | static gboolean
  function gst_cv_sobel_set_property (line 201) | static void
  function gst_cv_sobel_get_property (line 232) | static void
  function GstFlowReturn (line 257) | static GstFlowReturn

FILE: ext/opencv/gstcvsobel.h
  type GstCvSobel (line 63) | typedef struct _GstCvSobel      GstCvSobel;
  type GstCvSobelClass (line 64) | typedef struct _GstCvSobelClass GstCvSobelClass;
  type _GstCvSobel (line 66) | struct _GstCvSobel
  type _GstCvSobelClass (line 79) | struct _GstCvSobelClass

FILE: ext/opencv/gstcvtracker.cpp
  function GType (line 91) | static GType
  function gst_cvtracker_finalize (line 147) | static void
  function gst_cvtracker_class_init (line 158) | static void
  function gst_cvtracker_init (line 229) | static void
  function gst_cvtracker_set_property (line 250) | static void
  function create_cvtracker (line 281) | static void
  function gst_cvtracker_get_property (line 329) | static void
  function GstFlowReturn (line 360) | static GstFlowReturn

FILE: ext/opencv/gstcvtracker.h
  type GstCVTracker (line 71) | typedef struct _GstCVTracker  GstCVTracker;
  type GstCVTrackerClass (line 72) | typedef struct _GstCVTrackerClass GstCVTrackerClass;
  type _GstCVTracker (line 74) | struct _GstCVTracker
  type GstOpenCVTrackerAlgorithm (line 94) | typedef enum {
  type _GstCVTrackerClass (line 104) | struct _GstCVTrackerClass

FILE: ext/opencv/gstdewarp.cpp
  function GType (line 87) | static GType
  function GType (line 110) | static GType
  function gst_dewarp_finalize (line 163) | static void
  function gst_dewarp_class_init (line 174) | static void
  function gst_dewarp_init (line 267) | static void
  function gst_dewarp_set_property (line 290) | static void
  function gst_dewarp_get_property (line 395) | static void
  function gst_dewarp_update_map (line 437) | static void
  function gst_dewarp_calculate_dimensions (line 480) | static void
  function GstCaps (line 550) | static GstCaps *
  function gboolean (line 596) | static gboolean
  function GstFlowReturn (line 621) | static GstFlowReturn

FILE: ext/opencv/gstdewarp.h
  type GstDewarp (line 64) | typedef struct _GstDewarp GstDewarp;
  type GstDewarpClass (line 65) | typedef struct _GstDewarpClass GstDewarpClass;
  type _GstDewarpDisplayMode (line 67) | enum _GstDewarpDisplayMode {
  type _GstDewarpInterpolationMode (line 73) | enum _GstDewarpInterpolationMode {
  type _GstDewarp (line 80) | struct _GstDewarp
  type _GstDewarpClass (line 102) | struct _GstDewarpClass

FILE: ext/opencv/gstdisparity.cpp
  function GType (line 150) | static GType
  function gst_disparity_class_init (line 210) | static void
  function gst_disparity_init (line 249) | static void
  function gst_disparity_set_property (line 284) | static void
  function gst_disparity_get_property (line 299) | static void
  function GstStateChangeReturn (line 316) | static GstStateChangeReturn
  function gboolean (line 359) | static gboolean
  function gboolean (line 405) | static gboolean
  function gst_disparity_finalize (line 441) | static void
  function GstFlowReturn (line 470) | static GstFlowReturn
  function GstFlowReturn (line 507) | static GstFlowReturn
  function initialise_disparity (line 593) | static void
  function initialise_sbm (line 621) | int
  function run_sbm_iteration (line 657) | int
  function run_sgbm_iteration (line 666) | int

FILE: ext/opencv/gstdisparity.h
  type GstDisparity (line 65) | typedef struct _GstDisparity GstDisparity;
  type GstDisparityClass (line 66) | typedef struct _GstDisparityClass GstDisparityClass;
  type _GstDisparity (line 68) | struct _GstDisparity
  type _GstDisparityClass (line 104) | struct _GstDisparityClass

FILE: ext/opencv/gstedgedetect.cpp
  function gst_edge_detect_finalize (line 119) | static void
  function gst_edge_detect_class_init (line 131) | static void
  function gst_edge_detect_init (line 180) | static void
  function gst_edge_detect_set_property (line 192) | static void
  function gst_edge_detect_get_property (line 217) | static void
  function gboolean (line 245) | static gboolean
  function GstFlowReturn (line 258) | static GstFlowReturn

FILE: ext/opencv/gstedgedetect.h
  type GstEdgeDetect (line 65) | typedef struct _GstEdgeDetect GstEdgeDetect;
  type GstEdgeDetectClass (line 66) | typedef struct _GstEdgeDetectClass GstEdgeDetectClass;
  type _GstEdgeDetect (line 68) | struct _GstEdgeDetect
  type _GstEdgeDetectClass (line 82) | struct _GstEdgeDetectClass

FILE: ext/opencv/gstfaceblur.cpp
  function register_gst_opencv_face_blur_flags (line 111) | static void
  function GType (line 122) | static GType
  function gst_face_blur_finalize (line 168) | static void
  function gst_face_blur_class_init (line 185) | static void
  function gst_face_blur_init (line 247) | static void
  function gst_face_blur_set_property (line 263) | static void
  function gst_face_blur_get_property (line 299) | static void
  function gboolean (line 330) | static gboolean
  function GstFlowReturn (line 342) | static GstFlowReturn
  function CascadeClassifier (line 380) | static CascadeClassifier *

FILE: ext/opencv/gstfaceblur.h
  type GstFaceBlur (line 68) | typedef struct _GstFaceBlur GstFaceBlur;
  type GstFaceBlurClass (line 69) | typedef struct _GstFaceBlurClass GstFaceBlurClass;
  type _GstFaceBlur (line 71) | struct _GstFaceBlur
  type _GstFaceBlurClass (line 89) | struct _GstFaceBlurClass

FILE: ext/opencv/gstfacedetect.cpp
  function structure_and_message (line 145) | inline void
  function register_gst_opencv_face_detect_flags (line 167) | static void
  function GType (line 178) | static GType
  function GType (line 190) | static GType
  function gst_face_detect_finalize (line 250) | static void
  function gst_face_detect_class_init (line 275) | static void
  function gst_face_detect_init (line 372) | static void
  function gst_face_detect_set_property (line 401) | static void
  function gst_face_detect_get_property (line 470) | static void
  function gboolean (line 522) | static gboolean
  function GstMessage (line 536) | static GstMessage *
  function gst_face_detect_run_detector (line 557) | static void
  function GstFlowReturn (line 583) | static GstFlowReturn
  function CascadeClassifier (line 783) | static CascadeClassifier *

FILE: ext/opencv/gstfacedetect.h
  type GstFaceDetect (line 68) | typedef struct _GstFaceDetect GstFaceDetect;
  type GstFaceDetectClass (line 69) | typedef struct _GstFaceDetectClass GstFaceDetectClass;
  type _GstFaceDetectUpdates (line 80) | enum _GstFaceDetectUpdates {
  type _GstFaceDetect (line 87) | struct _GstFaceDetect
  type _GstFaceDetectClass (line 113) | struct _GstFaceDetectClass

FILE: ext/opencv/gstgrabcut.cpp
  function gst_grabcut_finalize (line 148) | static void
  function gst_grabcut_class_init (line 166) | static void
  function gst_grabcut_init (line 214) | static void
  function gst_grabcut_set_property (line 223) | static void
  function gst_grabcut_get_property (line 242) | static void
  function gboolean (line 263) | static gboolean
  function GstFlowReturn (line 289) | static GstFlowReturn
  function compose_matrix_from_image (line 362) | void
  function run_grabcut_iteration (line 376) | int
  function run_grabcut_iteration2 (line 386) | int

FILE: ext/opencv/gstgrabcut.h
  type GstGrabcut (line 66) | typedef struct _GstGrabcut GstGrabcut;
  type GstGrabcutClass (line 67) | typedef struct _GstGrabcutClass GstGrabcutClass;
  type _GstGrabcut (line 69) | struct _GstGrabcut
  type _GstGrabcutClass (line 89) | struct _GstGrabcutClass

FILE: ext/opencv/gsthanddetect.cpp
  function gst_handdetect_navigation_interface_init (line 136) | static void
  function gst_handdetect_navigation_send_event (line 147) | static void
  function gst_handdetect_finalize (line 163) | static void
  function gst_handdetect_class_init (line 181) | static void
  function gst_handdetect_init (line 268) | static void
  function gst_handdetect_set_property (line 297) | static void
  function gst_handdetect_get_property (line 341) | static void
  function gboolean (line 377) | static gboolean
  function GstFlowReturn (line 398) | static GstFlowReturn
  function CascadeClassifier (line 617) | static CascadeClassifier *

FILE: ext/opencv/gsthanddetect.h
  type GstHanddetect (line 65) | typedef struct _GstHanddetect GstHanddetect;
  type GstHanddetectClass (line 66) | typedef struct _GstHanddetectClass GstHanddetectClass;
  type _GstHanddetect (line 68) | struct _GstHanddetect
  type _GstHanddetectClass (line 91) | struct _GstHanddetectClass

FILE: ext/opencv/gstmotioncells.cpp
  function gst_motion_cells_finalize (line 164) | static void
  function gst_motion_cells_class_init (line 193) | static void
  function gst_motion_cells_init (line 324) | static void
  function fix_coords (line 390) | static void
  function gst_motion_cells_set_property (line 407) | static void
  function gst_motion_cells_get_property (line 627) | static void
  function gst_motioncells_update_motion_cells (line 750) | static void
  function gst_motioncells_update_motion_masks (line 786) | static void
  function gboolean (line 826) | static gboolean
  function GstFlowReturn (line 873) | static GstFlowReturn

FILE: ext/opencv/gstmotioncells.h
  type GstMotioncells (line 63) | typedef struct _GstMotioncells GstMotioncells;
  type GstMotioncellsClass (line 64) | typedef struct _GstMotioncellsClass GstMotioncellsClass;
  type _GstMotioncells (line 66) | struct _GstMotioncells
  type _GstMotioncellsClass (line 95) | struct _GstMotioncellsClass

FILE: ext/opencv/gstopencv.cpp
  function gboolean (line 50) | static gboolean

FILE: ext/opencv/gstretinex.cpp
  function GType (line 100) | static GType
  function gst_retinex_class_init (line 147) | static void
  function gst_retinex_init (line 227) | static void
  function gst_retinex_finalize (line 240) | static void
  function gst_retinex_set_property (line 258) | static void
  function gst_retinex_get_property (line 286) | static void
  function gboolean (line 314) | static gboolean
  function GstFlowReturn (line 332) | static GstFlowReturn

FILE: ext/opencv/gstretinex.h
  type GstRetinex (line 63) | typedef struct _GstRetinex GstRetinex;
  type GstRetinexClass (line 64) | typedef struct _GstRetinexClass GstRetinexClass;
  type _GstRetinex (line 66) | struct _GstRetinex
  type _GstRetinexClass (line 84) | struct _GstRetinexClass

FILE: ext/opencv/gstsegmentation.cpp
  function GType (line 126) | static GType
  function gst_segmentation_class_init (line 190) | static void
  function gst_segmentation_init (line 243) | static void
  function gst_segmentation_set_property (line 253) | static void
  function gst_segmentation_get_property (line 275) | static void
  function gboolean (line 297) | static gboolean
  function gst_segmentation_finalize (line 336) | static void
  function GstFlowReturn (line 354) | static GstFlowReturn
  function update_codebook (line 476) | int
  function clear_stale_entries (line 572) | int
  function background_diff (line 636) | unsigned char
  function find_connected_components (line 693) | static void
  function run_mog_iteration (line 738) | int
  function run_mog2_iteration (line 756) | int

FILE: ext/opencv/gstsegmentation.h
  type GstSegmentation (line 66) | typedef struct _GstSegmentation GstSegmentation;
  type GstSegmentationClass (line 67) | typedef struct _GstSegmentationClass GstSegmentationClass;
  type code_element (line 70) | typedef struct ce
  type codeBook (line 81) | typedef struct code_book
  type _GstSegmentation (line 88) | struct _GstSegmentation
  type _GstSegmentationClass (line 114) | struct _GstSegmentationClass

FILE: ext/opencv/gstskindetect.cpp
  function GType (line 87) | static GType
  function gst_skin_detect_class_init (line 136) | static void
  function gst_skin_detect_init (line 183) | static void
  function gst_skin_detect_set_property (line 194) | static void
  function gst_skin_detect_get_property (line 213) | static void
  function gboolean (line 234) | static gboolean
  function gst_skin_detect_finalize (line 270) | static void
  function GstFlowReturn (line 298) | static GstFlowReturn

FILE: ext/opencv/gstskindetect.h
  type GstSkinDetect (line 63) | typedef struct _GstSkinDetect GstSkinDetect;
  type GstSkinDetectClass (line 64) | typedef struct _GstSkinDetectClass GstSkinDetectClass;
  type _GstSkinDetect (line 66) | struct _GstSkinDetect
  type _GstSkinDetectClass (line 80) | struct _GstSkinDetectClass

FILE: ext/opencv/gsttemplatematch.cpp
  function gst_template_match_class_init (line 120) | static void
  function gst_template_match_init (line 164) | static void
  function gst_template_match_load_template (line 177) | static void
  function gst_template_match_set_property (line 205) | static void
  function gst_template
Copy disabled (too large) Download .json
Condensed preview — 2775 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (54,703K chars).
[
  {
    "path": ".gitignore",
    "chars": 135,
    "preview": "*~\n\nBuild\n*.user\n*.suo\n*.ipch\n*.sdf\n*.opensdf\n*.DS_Store\n\n# Meson\n/build\n/subprojects\n\n# hotdoc\ndocs/hotdoc/libs/generat"
  },
  {
    "path": ".gitlab-ci.yml",
    "chars": 93,
    "preview": "include: \"https://gitlab.freedesktop.org/gstreamer/gst-ci/raw/master/gitlab/ci_template.yml\"\n"
  },
  {
    "path": ".indentignore",
    "chars": 29,
    "preview": "ext/sctp/usrsctp/usrsctplib/\n"
  },
  {
    "path": "AUTHORS",
    "chars": 854,
    "preview": "Erik Walthinsen <omega@temple-baptist.com>\nMatt Howell <mhowell@users.sourceforge.net>\nBrent Bradburn <bbradburn@users.s"
  },
  {
    "path": "COPYING",
    "chars": 26530,
    "preview": "                  GNU LESSER GENERAL PUBLIC LICENSE\n                       Version 2.1, February 1999\n\n Copyright (C) 19"
  },
  {
    "path": "ChangeLog",
    "chars": 8878497,
    "preview": "=== release 1.19.2 ===\n\n2021-09-23 01:34:47 +0100  Tim-Philipp Müller <tim@centricular.com>\n\n\t* ChangeLog:\n\t* NEWS:\n\t* R"
  },
  {
    "path": "MAINTAINERS",
    "chars": 382,
    "preview": "GStreamer is currently maintained by the consensus of a number\nof people, including, but not limited to:\n\n Jan Schmidt <"
  },
  {
    "path": "NEWS",
    "chars": 8811,
    "preview": "GStreamer 1.20 Release Notes\n\nGStreamer 1.20 has not been released yet. It is scheduled for release\naround October/Novem"
  },
  {
    "path": "README",
    "chars": 9133,
    "preview": "GStreamer 1.19.x development series\n\nWHAT IT IS\n----------\n\nThis is GStreamer, a framework for streaming media.\n\nWHERE T"
  },
  {
    "path": "README.static-linking",
    "chars": 7794,
    "preview": "=================================\n GStreamer Static Linking README\n=================================\n\nDRAFT, April 2013\n"
  },
  {
    "path": "RELEASE",
    "chars": 3645,
    "preview": "This is GStreamer gst-plugins-bad 1.19.2.\n\nGStreamer 1.19 is the development branch leading up to the next major\nstable "
  },
  {
    "path": "REQUIREMENTS",
    "chars": 2049,
    "preview": "GStreamer uses a *large* array of tools and libraries, most of which are\noptional.  We have attempted to make sure that "
  },
  {
    "path": "data/meson.build",
    "chars": 949,
    "preview": "encoding_targetsdir = join_paths(get_option('datadir'),\n    'gstreamer-' + api_version, 'encoding-profiles')\n\nencoding_t"
  },
  {
    "path": "data/targets/device/dvd.gep",
    "chars": 525,
    "preview": "[GStreamer Encoding Target]\nname=dvd\ncategory=device\ndescription=Encoding target suitable for DVDs\n\n[profile-dvd]\nname=d"
  },
  {
    "path": "data/targets/file-extension/avi.gep",
    "chars": 473,
    "preview": "[GStreamer Encoding Target]\nname=avi\ncategory=file-extension\ndescription=Default target for files with a .avi extension\n"
  },
  {
    "path": "data/targets/file-extension/flv.gep",
    "chars": 638,
    "preview": "[GStreamer Encoding Target]\nname=flv\ncategory=file-extension\ndescription=Default target for files with a .flv extension\n"
  },
  {
    "path": "data/targets/file-extension/mkv.gep",
    "chars": 683,
    "preview": "[GStreamer Encoding Target]\nname=mkv;matroska;\ncategory=file-extension\ndescription=Default target for files with a .mkv "
  },
  {
    "path": "data/targets/file-extension/mp3.gep",
    "chars": 383,
    "preview": "[GStreamer Encoding Target]\nname=mp3\ncategory=file-extension\ndescription=Default target for files with a .mp3 extension\n"
  },
  {
    "path": "data/targets/file-extension/mp4.gep",
    "chars": 850,
    "preview": "[GStreamer Encoding Target]\nname=mp4;mov\ncategory=file-extension\ndescription=Default target for files with a .mp4 and .m"
  },
  {
    "path": "data/targets/file-extension/oga.gep",
    "chars": 355,
    "preview": "[GStreamer Encoding Target]\nname=oga\ncategory=file-extension\ndescription=Default target for files with a .ogg and friend"
  },
  {
    "path": "data/targets/file-extension/ogv.gep",
    "chars": 512,
    "preview": "[GStreamer Encoding Target]\nname=ogv;ogg\ncategory=file-extension\ndescription=Default target for files with a .ogg and fr"
  },
  {
    "path": "data/targets/file-extension/ts.gep",
    "chars": 831,
    "preview": "[GStreamer Encoding Target]\nname=ts\ncategory=file-extension\ndescription=Default target for files with a .ts extension\n\n["
  },
  {
    "path": "data/targets/file-extension/webm.gep",
    "chars": 579,
    "preview": "[GStreamer Encoding Target]\nname=webm\ncategory=file-extension\ndescription=Default target for files with a .webm extensio"
  },
  {
    "path": "data/targets/online-service/youtube.gep",
    "chars": 597,
    "preview": "[GStreamer Encoding Target]\nname=youtube;yt\ncategory=online-service\ndescription=Recommended encoding settings for YouTub"
  },
  {
    "path": "docs/gst_api_version.in",
    "chars": 18,
    "preview": "@GST_API_VERSION@\n"
  },
  {
    "path": "docs/index.md",
    "chars": 90,
    "preview": "---\nshort-description:  GStreamer Bad Plugins API reference.\n...\n\n# GStreamer Bad Plugins\n"
  },
  {
    "path": "docs/libs/adaptivedemux/index.md",
    "chars": 24,
    "preview": "# Adaptive Demux library"
  },
  {
    "path": "docs/libs/adaptivedemux/sitemap.txt",
    "chars": 8,
    "preview": "c-index\n"
  },
  {
    "path": "docs/libs/audio/index.md",
    "chars": 184,
    "preview": "# Bad Audio library\n\nThis library should be linked to by getting cflags and libs from\ngstreamer-bad-audio{{ gst_api_vers"
  },
  {
    "path": "docs/libs/audio/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/base/index.md",
    "chars": 76,
    "preview": "# Base classes from -bad\n\n> NOTE: This library API is considered *unstable*\n"
  },
  {
    "path": "docs/libs/base/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/basecamerabinsrc/index.md",
    "chars": 274,
    "preview": "# BaseCamerabinSrc Library\n\nThis library should be linked to by getting cflags and libs from\ngstreamer-plugins-bad-{{ gs"
  },
  {
    "path": "docs/libs/basecamerabinsrc/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/codecparsers/index.md",
    "chars": 270,
    "preview": "# Bitstream parsing Library\n\nThis library should be linked to by getting cflags and libs from\ngstreamer-plugins-bad-{{ g"
  },
  {
    "path": "docs/libs/codecparsers/sitemap.txt",
    "chars": 8,
    "preview": "c-index\n"
  },
  {
    "path": "docs/libs/codecs/index.md",
    "chars": 63,
    "preview": "# GstCodecs\n\n> NOTE: This library API is considered *unstable*\n"
  },
  {
    "path": "docs/libs/codecs/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/insertbin/index.md",
    "chars": 165,
    "preview": "---\nshort-description: A library that contains a bin to insertally link filter-like elements.\n...\n\n# GstInsertBin\n\n> NOT"
  },
  {
    "path": "docs/libs/insertbin/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/mpegts/index.md",
    "chars": 4349,
    "preview": "# MPEG-TS helper library\n\nThis library should be linked to by getting cflags and libs from\ngstreamer-plugins-bad-{{ gst_"
  },
  {
    "path": "docs/libs/mpegts/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/opencv/index.md",
    "chars": 254,
    "preview": "# Opencv Library\n\nThis library should be linked to by getting cflags and libs from\ngstreamer-plugins-bad-{{ gst_api_vers"
  },
  {
    "path": "docs/libs/opencv/sitemap.txt",
    "chars": 8,
    "preview": "c-index\n"
  },
  {
    "path": "docs/libs/play/index.md",
    "chars": 66,
    "preview": "# Play Library\n\n> NOTE: This library API is considered *unstable*\n"
  },
  {
    "path": "docs/libs/play/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/player/index.md",
    "chars": 68,
    "preview": "# Player Library\n\n> NOTE: This library API is considered *unstable*\n"
  },
  {
    "path": "docs/libs/player/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/tools/index.md",
    "chars": 69,
    "preview": "# Useful elements\n\n> NOTE: This library API is considered *unstable*\n"
  },
  {
    "path": "docs/libs/tools/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/transcoder/index.md",
    "chars": 216,
    "preview": "# GstTranscoder\n\nHigh level API to transcode streams\n\nThis library should be linked to by getting cflags and libs from\ng"
  },
  {
    "path": "docs/libs/transcoder/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/video/index.md",
    "chars": 83,
    "preview": "# Video helpers and baseclasses\n\n> NOTE: This library API is considered *unstable*\n"
  },
  {
    "path": "docs/libs/video/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/vulkan/index.md",
    "chars": 176,
    "preview": "# Vulkan Library\n\nThis library should be linked to by getting cflags and libs from\ngstreamer-vulkan-{{ gst_api_version.m"
  },
  {
    "path": "docs/libs/vulkan/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/vulkan-wayland/index.md",
    "chars": 192,
    "preview": "# Vulkan Wayland Library\n\nThis library should be linked to by getting cflags and libs from\ngstreamer-vulkan-wayland-{{ g"
  },
  {
    "path": "docs/libs/vulkan-wayland/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/vulkan-xcb/index.md",
    "chars": 180,
    "preview": "# Vulkan XCB Library\n\nThis library should be linked to by getting cflags and libs from\ngstreamer-vulkan-{{ gst_api_versi"
  },
  {
    "path": "docs/libs/vulkan-xcb/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/libs/webrtc/index.md",
    "chars": 176,
    "preview": "# WebRTC Library\n\nThis library should be linked to by getting cflags and libs from\ngstreamer-webrtc-{{ gst_api_version.m"
  },
  {
    "path": "docs/libs/webrtc/sitemap.txt",
    "chars": 9,
    "preview": "gi-index\n"
  },
  {
    "path": "docs/meson.build",
    "chars": 8948,
    "preview": "build_hotdoc = false\n\nif meson.is_cross_build()\n    if get_option('doc').enabled()\n        error('Documentation enabled "
  },
  {
    "path": "docs/plugins/gst_plugins_cache.json",
    "chars": 9609468,
    "preview": "{\n    \"accurip\": {\n        \"description\": \"Computes an AccurateRip CRC\",\n        \"elements\": {\n            \"accurip\": {\n"
  },
  {
    "path": "docs/plugins/index.md",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "docs/plugins/inspect/plugin-rist.xml",
    "chars": 2892,
    "preview": "<plugin>\n  <name>rist</name>\n  <description>Source and Sink for RIST TR-06-1 streaming specification</description>\n  <fi"
  },
  {
    "path": "docs/plugins/inspect/plugin-sctp.xml",
    "chars": 1725,
    "preview": "<plugin>\n  <name>sctp</name>\n  <description>SCTP encoder/decoder plugin</description>\n  <filename>../../ext/sctp/.libs/l"
  },
  {
    "path": "docs/plugins/sitemap.txt",
    "chars": 10,
    "preview": "gst-index\n"
  },
  {
    "path": "docs/random/ChangeLog-0.8",
    "chars": 659579,
    "preview": "2005-09-02  Flavio Oliveira  <flavio.oliveira@indt.org.br>\n\n\t* configure.ac:\n\t* ext/Makefile.am:\n\t* ext/gsm/Makefile.am:"
  },
  {
    "path": "docs/random/LICENSE",
    "chars": 821,
    "preview": "/* GStreamer\n * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>\n *\n * This library is free software; you can re"
  },
  {
    "path": "docs/random/PORTED_09",
    "chars": 893,
    "preview": "When porting a plugin start with 0.8 CVS head, not the old code in this module. There are many bugfixes which have gone "
  },
  {
    "path": "docs/sitemap.txt",
    "chars": 74,
    "preview": "index.md\n\tgst-plugins-bad-plugins-doc.json\n\tgst-plugins-bad-libs-doc.json\n"
  },
  {
    "path": "ext/aes/gstaes.c",
    "chars": 1473,
    "preview": "/*\n * GStreamer gstreamer-aes\n *\n * Copyright, 2021 Nice, Contact: Rabindra Harlalka <Rabindra.Harlalka@nice.com>\n *\n * "
  },
  {
    "path": "ext/aes/gstaesdec.c",
    "chars": 20405,
    "preview": "/*\n * GStreamer gstreamer-aesdec\n *\n * Copyright, LCC (C) 2015 RidgeRun, LCC <carsten.behling@ridgerun.com>\n * Copyright"
  },
  {
    "path": "ext/aes/gstaesdec.h",
    "chars": 3588,
    "preview": "/* \n * GStreamer gstreamer-aesdec\n *\n * Copyright, LCC (C) 2015 RidgeRun, LCC <carsten.behling@ridgerun.com>\n * Copyrigh"
  },
  {
    "path": "ext/aes/gstaesenc.c",
    "chars": 19541,
    "preview": "/*\n * GStreamer gstreamer-aesenc\n *\n * Copyright, LCC (C) 2015 RidgeRun, LCC <carsten.behling@ridgerun.com>\n * Copyright"
  },
  {
    "path": "ext/aes/gstaesenc.h",
    "chars": 3649,
    "preview": "/* \n * GStreamer gstreamer-aesenc\n *\n * Copyright, LCC (C) 2015 RidgeRun, LCC <carsten.behling@ridgerun.com>\n * Copyrigh"
  },
  {
    "path": "ext/aes/gstaeshelper.c",
    "chars": 5301,
    "preview": "/*\n * GStreamer gstreamer-aeshelper\n *\n * Copyright, LCC (C) 2015 RidgeRun, LCC <carsten.behling@ridgerun.com>\n * Copyri"
  },
  {
    "path": "ext/aes/gstaeshelper.h",
    "chars": 3573,
    "preview": "/* \n * GStreamer gstreamer-aeshelper\n *\n * Copyright, LCC (C) 2015 RidgeRun, LCC <carsten.behling@ridgerun.com>\n * Copyr"
  },
  {
    "path": "ext/aes/meson.build",
    "chars": 717,
    "preview": "aes_sources = [\n  'gstaes.c',\n  'gstaeshelper.c',\n  'gstaesenc.c',\n  'gstaesdec.c',\n]\n\naes_cargs = []\naes_dep = dependen"
  },
  {
    "path": "ext/aom/gstaom.c",
    "chars": 1311,
    "preview": "/* GStreamer\n * Copyright (C) <2017> Sean DuBois <sean@siobud.com>\n *\n * This library is free software; you can redistri"
  },
  {
    "path": "ext/aom/gstaom.h",
    "chars": 889,
    "preview": "/* GStreamer\n * Copyright (C) <2017> Sean DuBois <sean@siobud.com>\n *\n * This library is free software; you can redistri"
  },
  {
    "path": "ext/aom/gstav1dec.c",
    "chars": 14334,
    "preview": "/* GStreamer\n * Copyright (C) <2017> Sean DuBois <sean@siobud.com>\n *\n * This library is free software; you can redistri"
  },
  {
    "path": "ext/aom/gstav1dec.h",
    "chars": 2110,
    "preview": "/* GStreamer\n * Copyright (C) <2017> Sean DuBois <sean@siobud.com>\n *\n * This library is free software; you can redistri"
  },
  {
    "path": "ext/aom/gstav1enc.c",
    "chars": 39747,
    "preview": "/* GStreamer\n * Copyright (C) <2017> Sean DuBois <sean@siobud.com>\n *\n * This library is free software; you can redistri"
  },
  {
    "path": "ext/aom/gstav1enc.h",
    "chars": 3818,
    "preview": "/* GStreamer\n * Copyright (C) <2017> Sean DuBois <sean@siobud.com>\n *\n * This library is free software; you can redistri"
  },
  {
    "path": "ext/aom/gstav1utils.c",
    "chars": 2153,
    "preview": "/* AV1\n * Copyright (C) 2018 Wonchul Lee <chul0812@gmail.com>\n *\n * This library is free software; you can redistribute "
  },
  {
    "path": "ext/aom/gstav1utils.h",
    "chars": 1044,
    "preview": "/* AV1\n * Copyright (C) 2018 Wonchul Lee <chul0812@gmail.com>\n *\n * This library is free software; you can redistribute "
  },
  {
    "path": "ext/aom/meson.build",
    "chars": 469,
    "preview": "aom_dep = dependency('aom', required: get_option('aom'))\nif aom_dep.found()\n  gstaom = library('gstaom',\n    ['gstaom.c'"
  },
  {
    "path": "ext/assrender/gstassrender.c",
    "chars": 57731,
    "preview": "/*\n * Copyright (c) 2008 Benjamin Schmitz <vortex@wolpzone.de>\n * Copyright (c) 2009 Sebastian Dröge <sebastian.droege@c"
  },
  {
    "path": "ext/assrender/gstassrender.h",
    "chars": 2922,
    "preview": "/*\n * Copyright (c) 2008 Benjamin Schmitz <vortex@wolpzone.de>\n * Copyright (c) 2009 Sebastian Dröge <sebastian.droege@c"
  },
  {
    "path": "ext/assrender/meson.build",
    "chars": 500,
    "preview": "ass_dep = dependency('libass', version : '>= 0.10.2', required : get_option('assrender'))\nif ass_dep.found()\n  gstassren"
  },
  {
    "path": "ext/avtp/gstavtp.c",
    "chars": 10681,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpaafdepay.c",
    "chars": 10164,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpaafdepay.h",
    "chars": 1915,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpaafpay.c",
    "chars": 12195,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpaafpay.h",
    "chars": 2100,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpbasedepayload.c",
    "chars": 8601,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpbasedepayload.h",
    "chars": 2400,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpbasepayload.c",
    "chars": 8691,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpbasepayload.h",
    "chars": 2284,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcrfbase.c",
    "chars": 17703,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcrfbase.h",
    "chars": 2399,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcrfcheck.c",
    "chars": 8524,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcrfcheck.h",
    "chars": 1859,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcrfsync.c",
    "chars": 7751,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcrfsync.h",
    "chars": 1810,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcrfutil.c",
    "chars": 3340,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcrfutil.h",
    "chars": 1172,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcvfdepay.c",
    "chars": 23114,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcvfdepay.h",
    "chars": 1922,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcvfpay.c",
    "chars": 25633,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpcvfpay.h",
    "chars": 1987,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpsink.c",
    "chars": 13949,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpsink.h",
    "chars": 1878,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpsrc.c",
    "chars": 8972,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/gstavtpsrc.h",
    "chars": 1753,
    "preview": "/*\n * GStreamer AVTP Plugin\n * Copyright (C) 2019 Intel Corporation\n *\n * This library is free software; you can redistr"
  },
  {
    "path": "ext/avtp/meson.build",
    "chars": 1105,
    "preview": "avtp_sources = [\n  'gstavtp.c',\n  'gstavtpaafdepay.c',\n  'gstavtpaafpay.c',\n  'gstavtpcvfdepay.c',\n  'gstavtpcvfpay.c',\n"
  },
  {
    "path": "ext/bs2b/gstbs2b.c",
    "chars": 12342,
    "preview": "/* GStreamer\n * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>\n * Copyright (C) <2003> David Schleef <ds@schle"
  },
  {
    "path": "ext/bs2b/gstbs2b.h",
    "chars": 1921,
    "preview": "/* GStreamer\n * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>\n * Copyright (C) <2003> David Schleef <ds@schle"
  },
  {
    "path": "ext/bs2b/meson.build",
    "chars": 529,
    "preview": "bs2b_sources = [ 'gstbs2b.c', ]\n\nbs2b_dep = dependency('libbs2b', version : '>=3.1.0', required : get_option('bs2b'))\n\ni"
  },
  {
    "path": "ext/bz2/gstbz2.c",
    "chars": 1320,
    "preview": "/* GStreamer bz2 plugin\n * Copyright (C) 2006 Lutz Müller <lutz topfrose de>\n\n * This library is free software; you can "
  },
  {
    "path": "ext/bz2/gstbz2dec.c",
    "chars": 8327,
    "preview": "/* GStreamer bz2 decoder\n * Copyright (C) 2006 Lutz Müller <lutz topfrose de>\n\n * This library is free software; you can"
  },
  {
    "path": "ext/bz2/gstbz2dec.h",
    "chars": 1561,
    "preview": "/* GStreamer bz2 decoder\n * Copyright (C) 2006 Lutz Müller <lutz topfrose de>\n\n * This library is free software; you can"
  },
  {
    "path": "ext/bz2/gstbz2enc.c",
    "chars": 8849,
    "preview": "/* GStreamer bz2 encoder\n * Copyright (C) 2006 Lutz Müller <lutz topfrose de>\n\n * This library is free software; you can"
  },
  {
    "path": "ext/bz2/gstbz2enc.h",
    "chars": 1561,
    "preview": "/* GStreamer bz2 encoder\n * Copyright (C) 2006 Lutz Müller <lutz topfrose de>\n\n * This library is free software; you can"
  },
  {
    "path": "ext/bz2/meson.build",
    "chars": 535,
    "preview": "bz2_sources = [\n  'gstbz2.c',\n  'gstbz2dec.c',\n  'gstbz2enc.c',\n]\n\nbz2_dep = cc.find_library('bz2', required : get_optio"
  },
  {
    "path": "ext/chromaprint/gstchromaprint.c",
    "chars": 9673,
    "preview": "/* GStreamer chromaprint audio fingerprinting element\n * Copyright (C) 2006 M. Derezynski\n * Copyright (C) 2008 Eric Bue"
  },
  {
    "path": "ext/chromaprint/gstchromaprint.h",
    "chars": 2427,
    "preview": "/* GStreamer chromaprint audio fingerprinting element\n * Copyright (C) 2006 M. Derezynski\n * Copyright (C) 2008 Eric Bue"
  },
  {
    "path": "ext/chromaprint/meson.build",
    "chars": 489,
    "preview": "chromaprint_dep = dependency('libchromaprint', required : get_option('chromaprint'))\n\nif chromaprint_dep.found()\n  gstch"
  },
  {
    "path": "ext/closedcaption/bcd.h",
    "chars": 5940,
    "preview": "/*\n *  libzvbi -- BCD arithmetic for Teletext page numbers\n *\n *  Copyright (C) 2001, 2002 Michael H. Schimek\n *\n *  Thi"
  },
  {
    "path": "ext/closedcaption/bit_slicer.c",
    "chars": 28645,
    "preview": "/*\n *  libzvbi - Bit slicer\n *\n *  Copyright (C) 2000-2007 Michael H. Schimek\n *\n *  This library is free software; you "
  },
  {
    "path": "ext/closedcaption/bit_slicer.h",
    "chars": 4980,
    "preview": "/*\n *  libzvbi -- Bit slicer\n *\n *  Copyright (C) 2000-2007 Michael H. Schimek\n *\n *  This library is free software; you"
  },
  {
    "path": "ext/closedcaption/decoder.c",
    "chars": 23799,
    "preview": "/*\n *  libzvbi -- Old raw VBI decoder\n *\n *  Copyright (C) 2000, 2001, 2002 Michael H. Schimek\n *\n *  This library is fr"
  },
  {
    "path": "ext/closedcaption/decoder.h",
    "chars": 14901,
    "preview": "/*\n *  libzvbi -- Old raw VBI decoder\n *\n *  Copyright (C) 2000, 2001, 2002 Michael H. Schimek\n *\n *  This library is fr"
  },
  {
    "path": "ext/closedcaption/gstcccombiner.c",
    "chars": 46739,
    "preview": "/*\n * GStreamer\n * Copyright (C) 2018 Sebastian Dröge <sebastian@centricular.com>\n *\n * This library is free software; y"
  },
  {
    "path": "ext/closedcaption/gstcccombiner.h",
    "chars": 2477,
    "preview": "/*\n * GStreamer\n * Copyright (C) 2018 Sebastian Dröge <sebastian@centricular.com>\n *\n * This library is free software; y"
  },
  {
    "path": "ext/closedcaption/gstccconverter.c",
    "chars": 83059,
    "preview": "/*\n * GStreamer\n * Copyright (C) 2018 Sebastian Dröge <sebastian@centricular.com>\n *\n * This library is free software; y"
  },
  {
    "path": "ext/closedcaption/gstccconverter.h",
    "chars": 2931,
    "preview": "/*\n * GStreamer\n * Copyright (C) 2018 Sebastian Dröge <sebastian@centricular.com>\n *\n * This library is free software; y"
  },
  {
    "path": "ext/closedcaption/gstccextractor.c",
    "chars": 16919,
    "preview": "/*\n * GStreamer\n * Copyright (C) 2018 Edward Hervey <edward@centricular.com>\n *\n * This library is free software; you ca"
  },
  {
    "path": "ext/closedcaption/gstccextractor.h",
    "chars": 1993,
    "preview": "/*\n * GStreamer\n * Copyright (C) 2018 Edward Hervey <edward@centricular.com>\n *\n * This library is free software; you ca"
  },
  {
    "path": "ext/closedcaption/gstcea708decoder.c",
    "chars": 59384,
    "preview": "/* GStreamer\n * Copyright (C) 2013 CableLabs, Louisville, CO 80027\n * Copyright (C) 2015 Samsung Electronics Co., Ltd.\n "
  },
  {
    "path": "ext/closedcaption/gstcea708decoder.h",
    "chars": 13342,
    "preview": "/* GStreamer\n * Copyright (C) 2013 CableLabs, Louisville, CO 80027\n * Copyright (C) 2015 Samsung Electronics Co., Ltd.\n "
  },
  {
    "path": "ext/closedcaption/gstceaccoverlay.c",
    "chars": 62887,
    "preview": "/* GStreamer\n * Copyright (C) 2015 Samsung Electronics Co., Ltd.\n *     @Author: Chengjun Wang <cjun.wang@samsung.com>\n "
  },
  {
    "path": "ext/closedcaption/gstceaccoverlay.h",
    "chars": 4171,
    "preview": "/* GStreamer\n * Copyright (C) 2015 Samsung Electronics Co., Ltd.\n *     @Author: Chengjun Wang <cjun.wang@samsung.com>\n "
  },
  {
    "path": "ext/closedcaption/gstclosedcaption.c",
    "chars": 1678,
    "preview": "/*\n * GStreamer\n * Copyright (C) 2018 Edward Hervey <edward@centricular.com>\n *\n * This library is free software; you ca"
  },
  {
    "path": "ext/closedcaption/gstline21dec.c",
    "chars": 19228,
    "preview": "/*\n * GStreamer\n * Copyright (C) 2018 Edward Hervey <edward@centricular.com>\n *\n * This library is free software; you ca"
  },
  {
    "path": "ext/closedcaption/gstline21dec.h",
    "chars": 2484,
    "preview": "/*\n * GStreamer\n * Copyright (C) 2018 Edward Hervey <edward@centricular.com>\n *\n * This library is free software; you ca"
  },
  {
    "path": "ext/closedcaption/gstline21enc.c",
    "chars": 15703,
    "preview": "/*\n * GStreamer\n * Copyright (C) 2019 Mathieu Duponchelle <mathieu@centricular.com>\n *\n * This library is free software;"
  },
  {
    "path": "ext/closedcaption/gstline21enc.h",
    "chars": 1980,
    "preview": "/*\n * GStreamer\n * Copyright (C) 2019 Mathieu Duponchelle <mathieu@centricular.com>\n *\n * This library is free software;"
  },
  {
    "path": "ext/closedcaption/hamm.h",
    "chars": 5012,
    "preview": "/*\n *  libzvbi -- Error correction functions\n *\n *  Copyright (C) 2001, 2002, 2003, 2004, 2007 Michael H. Schimek\n *\n * "
  },
  {
    "path": "ext/closedcaption/io-sim.c",
    "chars": 33398,
    "preview": "/*\n *  libzvbi -- VBI device simulation\n *\n *  Copyright (C) 2004, 2007 Michael H. Schimek\n *\n *  This library is free s"
  },
  {
    "path": "ext/closedcaption/io-sim.h",
    "chars": 2803,
    "preview": "/*\n *  libzvbi -- VBI device simulation\n *\n *  Copyright (C) 2004, 2007 Michael H. Schimek\n *\n *  This library is free s"
  },
  {
    "path": "ext/closedcaption/macros.h",
    "chars": 3713,
    "preview": "/*\n *  libzvbi -- Useful macros\n *\n *  Copyright (C) 2002, 2003, 2004, 2007 Michael H. Schimek\n *\n *  This library is fr"
  },
  {
    "path": "ext/closedcaption/meson.build",
    "chars": 881,
    "preview": "closedcaption_dep = dependency('pangocairo', version : '>= 1.22.0',\n                            required : get_option('c"
  },
  {
    "path": "ext/closedcaption/misc.h",
    "chars": 15286,
    "preview": "/*\n *  libzvbi -- Miscellaneous cows and chickens\n *\n *  Copyright (C) 2000-2003 Iñaki García Etxebarria\n *  Copyright ("
  },
  {
    "path": "ext/closedcaption/raw_decoder.c",
    "chars": 32963,
    "preview": "/*\n *  libzvbi -- Raw VBI decoder\n *\n *  Copyright (C) 2000-2004 Michael H. Schimek\n *\n *  This library is free software"
  },
  {
    "path": "ext/closedcaption/raw_decoder.h",
    "chars": 5238,
    "preview": "/*\n *  libzvbi -- Raw VBI decoder\n *\n *  Copyright (C) 2000-2004 Michael H. Schimek\n *\n *  This library is free software"
  },
  {
    "path": "ext/closedcaption/sampling_par.c",
    "chars": 14677,
    "preview": "/*\n *  libzvbi -- Raw VBI sampling parameters\n *\n *  Copyright (C) 2000-2004 Michael H. Schimek\n *\n *  This library is f"
  },
  {
    "path": "ext/closedcaption/sampling_par.h",
    "chars": 2792,
    "preview": "/*\n *  libzvbi -- Raw VBI sampling parameters\n *\n *  Copyright (C) 2000-2004 Michael H. Schimek\n *\n *  This library is f"
  },
  {
    "path": "ext/closedcaption/sliced.h",
    "chars": 10202,
    "preview": "/*\n *  libzvbi -- Sliced VBI data\n *\n *  Copyright (C) 2000, 2001 Michael H. Schimek\n *\n *  This library is free softwar"
  },
  {
    "path": "ext/colormanagement/gstcolormanagement.c",
    "chars": 1227,
    "preview": "/*\n * GStreamer gstreamer-colormanagement\n * Copyright (C) 2016 Andreas Frisch <fraxinas@dreambox.guru>\n *\n * This libra"
  },
  {
    "path": "ext/colormanagement/gstlcms.c",
    "chars": 29823,
    "preview": "/*\n * GStreamer gstreamer-lcms\n * Copyright (C) 2016 Andreas Frisch <fraxinas@dreambox.guru>\n *\n * gstlcms.c\n * \n * This"
  },
  {
    "path": "ext/colormanagement/gstlcms.h",
    "chars": 2902,
    "preview": "/*\n * GStreamer gstreamer-lcms\n * Copyright (C) 2016 Andreas Frisch <fraxinas@dreambox.guru>\n *\n * gstlcms.h\n * \n * This"
  },
  {
    "path": "ext/colormanagement/meson.build",
    "chars": 564,
    "preview": "lcms2_dep = dependency('lcms2', version : '>= 2.7', required : get_option('colormanagement'))\nif lcms2_dep.found()\n  gst"
  },
  {
    "path": "ext/curl/curltask.h",
    "chars": 5001,
    "preview": "/*\n * GstCurlHttpSrc\n * Copyright 2014 British Broadcasting Corporation - Research and Development\n *\n * Author: Sam Hur"
  },
  {
    "path": "ext/curl/gstcurl.c",
    "chars": 1522,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlbasesink.c",
    "chars": 43757,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlbasesink.h",
    "chars": 3967,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurldefaults.h",
    "chars": 6728,
    "preview": "/*\n * GstCurlHttpSrc\n * Copyright 2017 British Broadcasting Corporation - Research and Development\n *\n * Author: Sam Hur"
  },
  {
    "path": "ext/curl/gstcurlelement.c",
    "chars": 1334,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlelements.h",
    "chars": 1302,
    "preview": "/* GStreamer\n * Copyright (C) <2020> The GStreamer Contributors.\n *\n * This library is free software; you can redistribu"
  },
  {
    "path": "ext/curl/gstcurlfilesink.c",
    "chars": 7215,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlfilesink.h",
    "chars": 1872,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlftpsink.c",
    "chars": 12505,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlftpsink.h",
    "chars": 1976,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlhttpsink.c",
    "chars": 17606,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlhttpsink.h",
    "chars": 2143,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlhttpsrc.c",
    "chars": 74734,
    "preview": "/*\n * GstCurlHttpSrc\n * Copyright 2017 British Broadcasting Corporation - Research and Development\n *\n * Author: Sam Hur"
  },
  {
    "path": "ext/curl/gstcurlhttpsrc.h",
    "chars": 7553,
    "preview": "/*\n * GstCurlHttpSrc\n * Copyright 2017 British Broadcasting Corporation - Research and Development\n *\n * Author: Sam Hur"
  },
  {
    "path": "ext/curl/gstcurlqueue.c",
    "chars": 6808,
    "preview": "/*\n * GstCurlHttpSrc\n * Copyright 2017 British Broadcasting Corporation - Research and Development\n *\n * Author: Sam Hur"
  },
  {
    "path": "ext/curl/gstcurlqueue.h",
    "chars": 2743,
    "preview": "/*\n * GstCurlHttpSrc\n * Copyright 2017 British Broadcasting Corporation - Research and Development\n *\n * Author: Sam Hur"
  },
  {
    "path": "ext/curl/gstcurlsftpsink.c",
    "chars": 6980,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlsftpsink.h",
    "chars": 1864,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlsmtpsink.c",
    "chars": 31651,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlsmtpsink.h",
    "chars": 2456,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlsshsink.c",
    "chars": 16798,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurlsshsink.h",
    "chars": 3295,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurltlssink.c",
    "chars": 10156,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/gstcurltlssink.h",
    "chars": 2115,
    "preview": "/* GStreamer\n * Copyright (C) 2011 Axis Communications <dev-gstreamer@axis.com>\n *\n * This library is free software; you"
  },
  {
    "path": "ext/curl/meson.build",
    "chars": 877,
    "preview": "curl_sources = [\n  'gstcurlbasesink.c',\n  'gstcurl.c',\n  'gstcurlelement.c',\n  'gstcurlfilesink.c',\n  'gstcurlftpsink.c'"
  },
  {
    "path": "ext/dash/gstdash_debug.h",
    "chars": 195,
    "preview": "#ifndef __GST_DASH_DEBUG_H__\n#define __GST_DASH_DEBUG_H__\n\n#include <gst/gst.h>\n\nG_BEGIN_DECLS\n\nGST_DEBUG_CATEGORY_EXTER"
  },
  {
    "path": "ext/dash/gstdashdemux.c",
    "chars": 144017,
    "preview": "/*\n * DASH demux plugin for GStreamer\n *\n * gstdashdemux.c\n *\n * Copyright (C) 2012 Orange\n *\n * Authors:\n *   David Cor"
  },
  {
    "path": "ext/dash/gstdashdemux.h",
    "chars": 4868,
    "preview": "/*\n * DASH demux plugin for GStreamer\n *\n * gstdashdemux.h\n *\n * Copyright (C) 2012 Orange\n * Authors:\n *   David Corvoy"
  },
  {
    "path": "ext/dash/gstdashsink.c",
    "chars": 38067,
    "preview": "/* GStreamer\n  * Copyright (C) 2019 Stéphane Cerveau <scerveau@collabora.com>\n *\n * This library is free software; you c"
  },
  {
    "path": "ext/dash/gstdashsink.h",
    "chars": 1132,
    "preview": "/* GStreamer\n * Copyright (C) 2019 Stéphane Cerveau <scerveau@collabora.com>\n *\n * This library is free software; you ca"
  },
  {
    "path": "ext/dash/gstmpdadaptationsetnode.c",
    "chars": 9554,
    "preview": "/* GStreamer\n *\n * Copyright (C) 2019 Collabora Ltd.\n *   Author: Stéphane Cerveau <scerveau@collabora.com>\n *\n * This l"
  },
  {
    "path": "ext/dash/gstmpdadaptationsetnode.h",
    "chars": 2736,
    "preview": "/* GStreamer\n *\n * Copyright (C) 2019 Collabora Ltd.\n *   Author: Stéphane Cerveau <scerveau@collabora.com>\n *\n * This l"
  },
  {
    "path": "ext/dash/gstmpdbaseurlnode.c",
    "chars": 4887,
    "preview": "/* GStreamer\n *\n * Copyright (C) 2019 Collabora Ltd.\n *   Author: Stéphane Cerveau <scerveau@collabora.com>\n *\n * This l"
  },
  {
    "path": "ext/dash/gstmpdbaseurlnode.h",
    "chars": 1504,
    "preview": "/* GStreamer\n *\n * Copyright (C) 2019 Collabora Ltd.\n *   Author: Stéphane Cerveau <scerveau@collabora.com>\n *\n * This l"
  }
]

// ... and 2575 more files (download for full content)

About this extraction

This page contains the full source code of the GStreamer/gst-plugins-bad GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 2775 files (49.4 MB), approximately 13.1M tokens, and a symbol index with 28358 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!