gstreamer/subprojects/gst-plugins-bad/ext
Carlos Bentzen 48ae40f477 webrtcbin: create and associate transceivers earlier in negotation
According to https://w3c.github.io/webrtc-pc/#set-the-session-description
(steps in 4.6.10.), we should be creating and associating transceivers when
setting session descriptions.

Before this commit, webrtcbin deviated from the spec:
1. Transceivers from sink pads where created when the sink pad was
   requested, but not associated after setting local description, only
   when signaling is STABLE.
2. Transceivers from remote offers were not created after applying the
   the remote description, only when the answer is created, and were then
   only associated once signaling is STABLE.

This commit makes webrtcbin follow the spec more closely with regards to
timing of transceivers creation and association.

A unit test is added, checking that the transceivers are created and
associated after every session description is set.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7156>
2024-08-01 07:38:46 +00:00
..
aes aesenc: Fix IV length addition to output buffer length 2023-08-21 18:10:12 +00:00
analyticsoverlay analyticsoverlay: fix gst-launch exemple 2024-02-07 22:39:57 +00:00
aom av1dec: Don't treat decoding errors as fatal and print more error details 2024-06-17 08:18:55 +00:00
assrender video-filters: Fix passthrough with ANY caps feature 2023-10-03 21:13:00 +00:00
avtp avtp: Fixed Linux/Alpine 3.20 build 2024-07-24 12:07:09 +02:00
bs2b bs2b: Add missing space in plugin description 2023-10-13 09:04:14 +00:00
bz2
chromaprint
closedcaption cccombiner: add support for timing out captions without EOS 2024-05-08 14:28:39 +10:00
codec2json h2652json: Fix mix-up of different enum types 2024-01-03 09:03:30 +00:00
colormanagement colormanagement: Fix typo in pipeline example 2023-10-13 10:04:39 +03:00
curl curlbasesink: error codes in transfer error details 2023-03-29 10:03:36 +00:00
dash dash: sink references of all MDP objects 2024-04-03 08:48:25 +00:00
dc1394
directfb
dtls dtlssrtpenc: Don't crash if no pad name is provided when requesting a new pad 2024-06-05 07:30:36 +00:00
dts
faac
faad
fdkaac fdkaac: Mark the dependency include_type as 'system' 2024-04-12 13:18:40 +03:00
flite
fluidsynth
gme
gs
gsm
gtk gtk: sink reference of internal wayland pool 2024-04-03 08:48:25 +00:00
hls adaptivedemux: Fix handling closed caption streams 2024-06-26 13:44:27 +00:00
iqa
isac isac: Work around upstream having no shared library support for MSVC 2024-07-19 18:51:03 -03:00
ladspa ladspa: Make RDF parsing truely optional 2023-12-11 14:49:42 +00:00
lc3 lc3: fix pkg-config file lookup 2023-08-08 22:12:29 +00:00
ldac bad: Add missing plugin since 2024-07-30 13:46:42 +00:00
libde265 libde265dec: Only decode the main profile 2023-11-03 12:41:59 +00:00
lv2
mdns mdns: Fix a crash on context error 2023-08-18 10:40:50 +00:00
modplug
mpeg2enc doc: Fix newline char between authors 2023-05-20 05:48:23 +00:00
mplex doc: Fix newline char between authors 2023-05-20 05:48:23 +00:00
musepack musepack: Prefer using FFmpeg musepack decoder/demuxer 2024-02-09 12:15:14 +00:00
neon neon: Allow building against neon 0.33.x 2024-02-02 00:22:39 +01:00
nvcomp nvcomp: Add nvCOMP library based GPU lossless compression plugin 2024-06-13 18:19:08 +00:00
onnx onnx: fix formating 2024-07-30 16:50:15 +00:00
openal
openaptx
opencv opencv: move the dependency check to a single place 2023-10-26 00:01:23 +00:00
openexr
openh264 openh264: Drop runtime version checks 2023-12-11 13:53:09 +00:00
openjpeg meson: Fix several warnings in the build 2024-02-06 23:57:17 +00:00
openmpt
openni2
opus
qroverlay qroverlay: redraw overlay when caps changes 2024-07-25 06:55:29 +00:00
qt6d3d11 qt6d3d11: Add plugin docs 2023-08-30 15:45:12 +00:00
resindvd
rsvg rsvgoverlay: add debug category 2024-07-30 17:51:51 +00:00
rtmp
sbc
sctp meson: Add a top-level option to enable webrtc 2023-10-19 06:38:45 +00:00
smoothstreaming
sndfile
soundtouch pitch: add validate tests 2024-05-02 13:26:09 +02:00
spandsp
srt srtsrc: fix case fallthrough of authentication param 2024-07-02 16:49:32 +02:00
srtp srtpenc: Fix potential leak 2024-01-31 18:46:59 +00:00
svtav1 bad: Add missing plugin since 2024-07-30 13:46:42 +00:00
svthevcenc bad: Add missing plugin since 2024-07-30 13:46:42 +00:00
teletextdec
ttml subparsers: Give proper category to subtitle "decoders" 2024-02-22 14:39:54 +00:00
voaacenc meson: Don't confuse voaacenc plugin with bz2 one in meson variable names 2024-04-01 00:52:16 +03:00
voamrwbenc
vulkan vulkanupload: honor downstream pool allocation parameters 2024-07-31 12:15:43 +00:00
wayland waylandsink: config buffer pool with query size when propose_allocation 2024-04-18 18:34:30 +00:00
webp webpenc: add animation properties 2024-02-02 17:23:08 +00:00
webrtc webrtcbin: create and associate transceivers earlier in negotation 2024-08-01 07:38:46 +00:00
webrtcdsp webrtcdsp: Enable multi_channel processing 2024-06-25 22:29:21 +10:00
wildmidi
wpe wpe: avoid crash with G_DEBUG=fatal_criticals and static build 2024-03-30 07:55:40 +00:00
x265
zbar
zxing
meson.build nvcomp: Add nvCOMP library based GPU lossless compression plugin 2024-06-13 18:19:08 +00:00