mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-29 19:50:40 +00:00
f0d04b39dd
RIST TR-06-1 is a specification for video streaming made by the VSF group. It is using a subset of RTP specification to which some modification has been made to improve RTX behaviour and avoid any need for signaling. The plugin implement ristrtxsend / ristrtxreceive element which are the RIST specific equivalent of rtprtxsend/rtprtxreceive and ristsink / ristsrc which implement rist transmitter and receiver. The RIST protocol is meant to be used in unidirectional way. Typically, MPEG TS over RTP is used. Currently we support unicast and multicast streaming according to the specification. This patch does not include any bonding support yet. The ristsrc element introduce rist:// URI handling in parallel to it's property configuration interface.
182 lines
14 KiB
Meson
182 lines
14 KiB
Meson
option('gst_player_tests', type: 'boolean', value: false,
|
|
description: 'Enable GstPlayer tests that need network access')
|
|
|
|
# Feature options for plugins without external deps
|
|
option('accurip', type : 'feature', value : 'auto')
|
|
option('adpcmdec', type : 'feature', value : 'auto')
|
|
option('adpcmenc', type : 'feature', value : 'auto')
|
|
option('aiff', type : 'feature', value : 'auto')
|
|
option('asfmux', type : 'feature', value : 'auto')
|
|
option('audiobuffersplit', type : 'feature', value : 'auto')
|
|
option('audiofxbad', type : 'feature', value : 'auto')
|
|
option('audiolatency', type : 'feature', value : 'auto')
|
|
option('audiomixmatrix', type : 'feature', value : 'auto')
|
|
option('audiovisualizers', type : 'feature', value : 'auto')
|
|
option('autoconvert', type : 'feature', value : 'auto')
|
|
option('bayer', type : 'feature', value : 'auto')
|
|
option('camerabin2', type : 'feature', value : 'auto')
|
|
option('coloreffects', type : 'feature', value : 'auto')
|
|
option('debugutils', type : 'feature', value : 'auto')
|
|
option('dvbsuboverlay', type : 'feature', value : 'auto')
|
|
option('dvdspu', type : 'feature', value : 'auto')
|
|
option('faceoverlay', type : 'feature', value : 'auto')
|
|
option('festival', type : 'feature', value : 'auto')
|
|
option('fieldanalysis', type : 'feature', value : 'auto')
|
|
option('freeverb', type : 'feature', value : 'auto')
|
|
option('frei0r', type : 'feature', value : 'auto')
|
|
option('gaudieffects', type : 'feature', value : 'auto')
|
|
option('gdp', type : 'feature', value : 'auto')
|
|
option('geometrictransform', type : 'feature', value : 'auto')
|
|
option('id3tag', type : 'feature', value : 'auto')
|
|
option('inter', type : 'feature', value : 'auto')
|
|
option('interlace', type : 'feature', value : 'auto')
|
|
option('ivfparse', type : 'feature', value : 'auto')
|
|
option('ivtc', type : 'feature', value : 'auto')
|
|
option('jp2kdecimator', type : 'feature', value : 'auto')
|
|
option('jpegformat', type : 'feature', value : 'auto')
|
|
option('librfb', type : 'feature', value : 'auto')
|
|
option('midi', type : 'feature', value : 'auto')
|
|
option('mpegdemux', type : 'feature', value : 'auto')
|
|
option('mpegpsmux', type : 'feature', value : 'auto')
|
|
option('mpegtsdemux', type : 'feature', value : 'auto')
|
|
option('mpegtsmux', type : 'feature', value : 'auto')
|
|
option('mxf', type : 'feature', value : 'auto')
|
|
option('netsim', type : 'feature', value : 'auto')
|
|
option('onvif', type : 'feature', value : 'auto')
|
|
option('pcapparse', type : 'feature', value : 'auto')
|
|
option('pnm', type : 'feature', value : 'auto')
|
|
option('proxy', type : 'feature', value : 'auto')
|
|
option('rawparse', type : 'feature', value : 'auto')
|
|
option('removesilence', type : 'feature', value : 'auto')
|
|
option('rist', type : 'feature', value : 'auto')
|
|
option('sdp', type : 'feature', value : 'auto')
|
|
option('segmentclip', type : 'feature', value : 'auto')
|
|
option('siren', type : 'feature', value : 'auto')
|
|
option('smooth', type : 'feature', value : 'auto')
|
|
option('speed', type : 'feature', value : 'auto')
|
|
option('subenc', type : 'feature', value : 'auto')
|
|
option('timecode', type : 'feature', value : 'auto')
|
|
option('videofilters', type : 'feature', value : 'auto')
|
|
option('videoframe_audiolevel', type : 'feature', value : 'auto')
|
|
option('videoparsers', type : 'feature', value : 'auto')
|
|
option('videosignal', type : 'feature', value : 'auto')
|
|
option('vmnc', type : 'feature', value : 'auto')
|
|
option('y4m', type : 'feature', value : 'auto')
|
|
option('yadif', type : 'feature', value : 'auto')
|
|
|
|
# Feature options for libraries that need external deps
|
|
option('opencv', type : 'feature', value : 'auto', description : 'OpenCV computer vision library support')
|
|
|
|
# Feature options for optional deps in plugins
|
|
option('wayland', type : 'feature', value : 'auto', description : 'Wayland plugin/library, support in the Vulkan plugin')
|
|
option('x11', type : 'feature', value : 'auto', description : 'X11 support in Vulkan, GL and rfb plugins')
|
|
|
|
# Feature options for plugins that need external deps
|
|
option('aom', type : 'feature', value : 'auto', description : 'AOM AV1 video codec plugin')
|
|
option('androidmedia', type : 'feature', value : 'auto', description : 'Video capture and codec plugins for Android')
|
|
option('applemedia', type : 'feature', value : 'auto', description : 'Video capture and codec access plugins for macOS and iOS')
|
|
option('assrender', type : 'feature', value : 'auto', description : 'ASS/SSA subtitle renderer plugin')
|
|
option('bluez', type : 'feature', value : 'auto', description : 'Bluetooth audio A2DP/AVDTP sink, AVDTP source plugin')
|
|
option('bs2b', type : 'feature', value : 'auto', description : 'Bauer stereophonic-to-binaural audio plugin')
|
|
option('bz2', type : 'feature', value : 'auto', description : 'bz2 stream encoder and decoder plugin')
|
|
option('chromaprint', type : 'feature', value : 'auto', description : 'Chromaprint fingerprint audio plugin')
|
|
option('closedcaption', type : 'feature', value : 'auto', description : 'Closed caption extractor, decoder, and overlay plugin')
|
|
option('curl', type : 'feature', value : 'auto', description : 'cURL network source and sink plugin')
|
|
option('curl-ssh2', type : 'feature', value : 'auto', description : 'cURL network source and sink plugin libssh2 support')
|
|
option('d3dvideosink', type : 'feature', value : 'auto', description : 'Direct3D video sink plugin')
|
|
option('dash', type : 'feature', value : 'auto', description : 'DASH demuxer plugin')
|
|
option('dc1394', type : 'feature', value : 'auto', description : 'libdc1394 IIDC camera source plugin')
|
|
option('decklink', type : 'feature', value : 'auto', description : 'DeckLink audio/video source/sink plugin')
|
|
option('directfb', type : 'feature', value : 'auto', description : 'DirectFB video sink plugin')
|
|
option('directsound', type : 'feature', value : 'auto', description : 'Directsound audio source plugin')
|
|
option('dtls', type : 'feature', value : 'auto', description : 'DTLS encoder and decoder plugin')
|
|
option('dts', type : 'feature', value : 'auto', description : 'DTS audio decoder plugin')
|
|
option('dvb', type : 'feature', value : 'auto', description : 'DVB video bin and source plugin')
|
|
option('faac', type : 'feature', value : 'auto', description : 'Free AAC audio encoder plugin')
|
|
option('faad', type : 'feature', value : 'auto', description : 'Free AAC audio decoder plugin')
|
|
option('fbdev', type : 'feature', value : 'auto', description : 'Framebuffer video sink plugin')
|
|
option('fdkaac', type : 'feature', value : 'auto', description : 'Fraunhofer AAC audio codec plugin')
|
|
option('flite', type : 'feature', value : 'auto', description : 'Flite speech synthesizer source plugin')
|
|
option('fluidsynth', type : 'feature', value : 'auto', description : 'Fluidsynth MIDI decoder plugin')
|
|
option('gl', type : 'feature', value : 'auto', description : 'GStreamer OpenGL integration support (used by various plugins)')
|
|
option('gme', type : 'feature', value : 'auto', description : 'libgme gaming console music file decoder plugin')
|
|
option('gsm', type : 'feature', value : 'auto', description : 'GSM encoder/decoder plugin')
|
|
option('ipcpipeline', type : 'feature', value : 'auto', description : 'Inter-process communication plugin')
|
|
option('iqa', type : 'feature', value : 'auto', description : 'Image quality assessment plugin')
|
|
option('kate', type : 'feature', value : 'auto', description : 'Kate subtitle parser, tagger, and codec plugin')
|
|
option('kms', type : 'feature', value : 'auto', description : 'KMS video sink plugin')
|
|
option('ladspa', type : 'feature', value : 'auto', description : 'LADSPA plugin bridge')
|
|
option('libde265', type : 'feature', value : 'auto', description : 'HEVC/H.265 video decoder plugin')
|
|
option('libmms', type : 'feature', value : 'auto', description : 'Microsoft multimedia server network source plugin')
|
|
option('lv2', type : 'feature', value : 'auto', description : 'LV2 audio plugin bridge')
|
|
option('modplug', type : 'feature', value : 'auto', description : 'ModPlug audio decoder plugin')
|
|
option('mpeg2enc', type : 'feature', value : 'auto', description : 'mpeg2enc video encoder plugin')
|
|
option('mplex', type : 'feature', value : 'auto', description : 'mplex audio/video multiplexer plugin')
|
|
option('msdk', type : 'feature', value : 'auto', description : 'Intel Media SDK video encoder/decoder plugin')
|
|
option('musepack', type : 'feature', value : 'auto', description : 'libmpcdec Musepack decoder plugin')
|
|
option('neon', type : 'feature', value : 'auto', description : 'NEON HTTP source plugin')
|
|
option('nvdec', type : 'feature', value : 'auto', description : 'NVIDIA GPU decoder plugin')
|
|
option('nvenc', type : 'feature', value : 'auto', description : 'NVIDIA GPU encoder plugin')
|
|
option('ofa', type : 'feature', value : 'auto', description : 'Open Fingerprint Architecture library plugin')
|
|
option('openal', type : 'feature', value : 'auto', description : 'OpenAL plugin')
|
|
option('openexr', type : 'feature', value : 'auto', description : 'OpenEXR plugin')
|
|
option('openh264', type : 'feature', value : 'auto', description : 'H.264 video codec plugin')
|
|
option('openjpeg', type : 'feature', value : 'auto', description : 'JPEG2000 image codec plugin')
|
|
option('openmpt', type : 'feature', value : 'auto', description : 'OpenMPT module music library plugin')
|
|
option('openni2', type : 'feature', value : 'auto', description : 'OpenNI2 library plugin')
|
|
option('opensles', type : 'feature', value : 'auto', description : 'OpenSL ES audio source/sink plugin')
|
|
option('opus', type : 'feature', value : 'auto', description : 'OPUS audio parser plugin')
|
|
option('resindvd', type : 'feature', value : 'auto', description : 'Resin DVD playback plugin')
|
|
option('rsvg', type : 'feature', value : 'auto', description : 'SVG overlayer and image decoder plugin')
|
|
option('rtmp', type : 'feature', value : 'auto', description : 'RTMP video network source and sink plugin')
|
|
option('sbc', type : 'feature', value : 'auto', description : 'SBC bluetooth audio codec plugin')
|
|
option('sctp', type : 'feature', value : 'auto', description : 'SCTP plugin')
|
|
option('shm', type : 'feature', value : 'auto', description : 'Shared memory source/sink plugin')
|
|
option('smoothstreaming', type : 'feature', value : 'auto', description : 'Microsoft Smooth Streaming demuxer plugin')
|
|
option('sndfile', type : 'feature', value : 'auto', description : 'libsndfile plugin')
|
|
option('soundtouch', type : 'feature', value : 'auto', description : 'Audio pitch controller & BPM detection plugin')
|
|
option('spandsp', type : 'feature', value : 'auto', description : 'Packet loss concealment audio plugin')
|
|
option('srt', type : 'feature', value : 'auto', description : 'Secure, Reliable, Transport client/server network source/sink plugin')
|
|
option('srtp', type : 'feature', value : 'auto', description : 'Secure RTP codec plugin')
|
|
option('teletext', type : 'feature', value : 'auto', description : 'Teletext plugin')
|
|
option('tinyalsa', type : 'feature', value : 'auto', description : 'TinyALSA plugin')
|
|
option('ttml', type : 'feature', value : 'auto', description : 'TTML subtitle parser and renderer plugin')
|
|
option('uvch264', type : 'feature', value : 'auto', description : 'UVC compliant H.264 camera source plugin')
|
|
option('vdpau', type : 'feature', value : 'auto', description : 'Nvidia VDPAU plugin')
|
|
option('voaacenc', type : 'feature', value : 'auto', description : 'AAC audio encoder plugin')
|
|
option('voamrwbenc', type : 'feature', value : 'auto', description : 'AMR-WB audio encoder plugin')
|
|
option('vulkan', type : 'feature', value : 'auto', description : 'Vulkan video sink plugin')
|
|
option('wasapi', type : 'feature', value : 'auto', description : 'Windows Audio Session API source/sink plugin')
|
|
option('webp', type : 'feature', value : 'auto', description : 'WebP image codec plugin')
|
|
option('webrtc', type : 'feature', value : 'auto', description : 'WebRTC audio/video network bin plugin')
|
|
option('webrtcdsp', type : 'feature', value : 'auto', description : 'Plugin with various audio filters provided by the WebRTC audio processing library')
|
|
option('wildmidi', type : 'feature', value : 'auto', description : 'WildMidi midi soft synth plugin')
|
|
option('winks', type : 'feature', value : 'auto', description : 'Windows Kernel Streaming video source plugin')
|
|
option('winscreencap', type : 'feature', value : 'auto', description : 'Windows Screen Capture video source plugin')
|
|
option('x265', type : 'feature', value : 'auto', description : 'HEVC/H.265 video encoder plugin')
|
|
option('zbar', type : 'feature', value : 'auto', description : 'Barcode image scanner plugin')
|
|
option('wpe', type : 'feature', value : 'auto', description : 'WPE Web browser plugin')
|
|
|
|
# HLS plugin options
|
|
option('hls', type : 'feature', value : 'auto', description : 'HTTP Live Streaming plugin')
|
|
option('hls-crypto', type : 'combo', value : 'auto', choices : ['auto', 'nettle', 'libgcrypt', 'openssl'],
|
|
description: 'Crypto library to use for HLS plugin')
|
|
|
|
# Common feature options
|
|
option('examples', type : 'feature', value : 'auto', yield : true)
|
|
option('tests', type : 'feature', value : 'auto', yield : true)
|
|
option('introspection', type : 'feature', value : 'auto', yield : true, description : 'Generate gobject-introspection bindings')
|
|
option('nls', type : 'feature', value : 'auto', yield: true, description : 'Enable native language support (translations)')
|
|
option('orc', type : 'feature', value : 'auto', yield : true)
|
|
option('gobject-cast-checks', type : 'feature', value : 'auto', yield : true,
|
|
description: 'Enable run-time GObject cast checks (auto = enabled for development, disabled for stable releases)')
|
|
option('glib-asserts', type : 'feature', value : 'enabled', yield : true,
|
|
description: 'Enable GLib assertion (auto = enabled for development, disabled for stable releases)')
|
|
option('glib-checks', type : 'feature', value : 'enabled', yield : true,
|
|
description: 'Enable GLib checks such as API guards (auto = enabled for development, disabled for stable releases)')
|
|
|
|
# Common options
|
|
option('package-name', type : 'string', yield : true,
|
|
description : 'package name to use in plugins')
|
|
option('package-origin', type : 'string', value : 'Unknown package origin', yield : true,
|
|
description : 'package origin URL to use in plugins')
|