Mathieu Duponchelle
91317aacaf
webrtcbin, rtpbin: check before setting properties on jitterbuffer
...
In rtpbin we already systematically check for all property names
except latency, correct that.
In webrtcbin we need to check before trying to use the do-retransmission
property.
This is useful for the case where an element like identity gets passed
to rtpbin's request-jitterbuffer property, when the application wants
to use webrtcbin in an SFU situation, with no reordering and no added
latency
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6112 >
2024-02-14 08:52:50 +00:00
Sebastian Dröge
c726add352
rtpfunnel: Handle NTP-64 RTP header extension in caps similar to TWCC
...
This is another header extension that is handled by rtpsession and needs
to be preserved in the caps that are created by rtpfunnel.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6109 >
2024-02-14 08:05:33 +00:00
Tim-Philipp Müller
b87093207c
gst-plugins-good: update translations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6113 >
2024-02-14 04:43:00 +00:00
Sebastian Dröge
17e7af7181
rtpfunnel: Also write TWCC RTP header extension into buffer list buffers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6110 >
2024-02-14 01:56:20 +00:00
Philippe Normand
6f778eebf9
dashdemux2: Basic support for container-specific-track-id tag
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6041 >
2024-02-12 10:37:29 +00:00
Philippe Normand
e9ecde83a7
matroska-demux: Basic support for container-specific-track-id tag
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6041 >
2024-02-12 10:37:29 +00:00
Philippe Normand
30bb88a91b
qtdemux: Basic support for container-specific-track-id tag
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6041 >
2024-02-12 10:37:29 +00:00
Nirbheek Chauhan
d0ae93771e
meson: Don't use fs.copyfile() for qt6 resources
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3285
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6077 >
2024-02-09 11:14:09 +05:30
Ignazio Pillai
34741e1db2
cutter: add audio-level-meta
...
Set GstAudioLevelMeta on buffers
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5771 >
2024-02-08 13:52:40 +00:00
Nirbheek Chauhan
f6f448bb80
meson: Fix several warnings in the build
...
Deprecations, incorrect options, etc.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6058 >
2024-02-06 23:57:17 +00:00
Nirbheek Chauhan
63322705c8
good/tests: Don't enable soup tests if soup is disabled
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3268
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6058 >
2024-02-06 23:57:17 +00:00
Tim-Philipp Müller
2111d6f015
Back to development
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6066 >
2024-02-06 18:29:31 +00:00
Tim-Philipp Müller
9255e397f0
Release 1.23.1
2024-02-06 16:43:27 +00:00
Tim-Philipp Müller
e7d771903e
meson_options.txt: fix meson warning about default bool values being a string
2024-02-06 16:37:13 +00:00
Nirbheek Chauhan
a5cb2ef9cd
meson: Print a useful error message when qt windowing is not found
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6040 >
2024-02-03 05:42:26 +00:00
Hou Qi
aa68b5e02a
hlsdemux2/m3u8: use GstClockTimeDiff to do timestamp comparison
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5234 >
2024-02-01 08:41:23 +00:00
Sebastian Dröge
b730e7a1b2
rtpvp8pay: Use GstBitReader instead of dboolhuff implementation from libvpx
...
All compressed frame header values that are read as part of the
payloader are encoded as bits with 50:50 probability, and as such are
just the plain bits as they are.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5810 >
2024-01-31 16:52:28 +00:00
Daniel Morin
0a55c86e6a
rtspsrc: update rtsp url on redirect
...
- If a redirect took place on a GET when rtsp is tunneled we update the
rtsp url too.
- log source and final destination on redirect
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5222 >
2024-01-31 11:43:45 +00:00
Thibault Saunier
e1a8ce16b4
matroskademux: Lower verbosity of some often happenning warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6011 >
2024-01-30 09:09:22 +00:00
Thibault Saunier
77e7efe407
qtdemux: Lower verbosity of some often happenning warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6011 >
2024-01-30 09:09:22 +00:00
Tim-Philipp Müller
c84285d44d
meson: bump Meson requirement to >= 1.1 for all modules
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6002 >
2024-01-29 01:11:55 +00:00
Jonas Kvinge
a35723d531
meson: Set cpp_std to c++17 for TagLib
...
TagLib uses C++17 as of version 2.0.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5995 >
2024-01-27 12:44:48 +00:00
Mathieu Duponchelle
03d07e8e52
vpxenc: fix warning about decreasing PTS on first frame
...
The fields used to track this state should be initialized when
codec->inited is FALSE on set_format, not TRUE
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3200
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5876 >
2024-01-25 08:17:26 +00:00
Jonas K Danielsson
b0becfa46b
splitmuxsrc: Use natural ordering to find files
...
Today when using the `splitmuxsrc` on a collection of files named as:
```
item0.mkv
item1.mkv
item2.mkv
[...]
item10.mkv
item11.mkv
[...]
```
You will get a continuous stream made in the order of:
```
item0.mkv -> item1.mkv -> item10.mkv -> item11.mkv -> [...]
```
You can fix this by having smarter names of the items:
```
item000.mkv
item001.mkv
item002.mkv
[...]
item010.mkv
item011.mkv
[...]
```
Will get you:
```
item000.mkv -> item001.mkv -> item003.mkv -> item004.mkv -> [...]
```
But, we could also "fix" the former case by using natural ordering when
comparing the files in gstsplitutils.c.
Fixes #2523
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4491 >
2024-01-24 20:15:19 +00:00
Dan Searles
1d02d7eda0
rtspsrc: fix ttl setting for udpsink[1]
...
Fix ttl setting being incorrectly applied to udpsink[0] rather
than to udpsink[1].
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5955 >
2024-01-23 13:54:51 +00:00
Dan Searles
da55b953a1
rtspsrc: set multicast-iface on udpsinks
...
Copy rtspsrc property multicast-iface to its udpsinks to
allow messages over those sinks back to the server to work (and
prevent 'Network unreachable' warnings).
Closes : #3239
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5955 >
2024-01-23 13:54:51 +00:00
Guillaume Desmottes
fae6fbaa6b
flvdemux: don't re-use segment from one stream if the other has buffer earlier
...
Fix first audio buffers being out of segment because the audio stream
is starting earlier than the video one which was the first demuxed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5940 >
2024-01-19 11:05:05 +01:00
Guillaume Desmottes
632ee523fb
flvdemux: factor out ensure_new_segment()
...
- Use the pad instead of the element for logs, so it's clearer on which
pad this segment will be pushed.
- One copy was checking for invalid seq num, the other was not.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5940 >
2024-01-19 11:05:01 +01:00
Hou Qi
2539bb0b1d
rtpjitterbuffer: Fix build warning in rtp_jitter_buffer_append_query()
...
This is to fix build warnings when using [-Wmaybe-uninitialized]
../gst/rtpmanager/rtpjitterbuffer.c:1237:10: warning: 'head' may be used uninitialized [-Wmaybe-uninitialized]
1237 | return head;
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5907 >
2024-01-13 15:00:19 +00:00
Philippe Normand
8a99589d2c
vpxdec: Use appropriate domain and code for decoding errors
...
STREAM domain and DECODE error is commonly used in other decoders. ENCODE is for
encoders.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5916 >
2024-01-12 14:10:36 +00:00
Olivier Crête
814f21557f
soup: Avoid using GUri before GLib 2.66
...
Let's use gpointer for now
Fixes : #3169
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5906 >
2024-01-11 18:06:59 +00:00
Sebastian Dröge
6fa41f78bb
rtpsession: Remove some unused fields
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5899 >
2024-01-08 12:57:04 +02:00
Sanchayan Maity
00bbac6541
rtphdrext-clientaudiolevel: Fix level value being written by the extension
...
When level value is greater than 127, it was being clamped but this clamped
value was not the one being actually used. For level values greater than 127
this resulted in an incorrect value being used. As an example, a level value
of 187, after and'ed with 0x7F, it would result in 0x3B being reported as the
level value.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5893 >
2024-01-07 16:00:18 +05:30
Tim-Philipp Müller
bf4755331a
vpx: fix plugin description
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5864 >
2023-12-30 11:33:52 +00:00
Sebastian Dröge
c292da7044
rtpsession: Only warn once if configured latency needs to be known but isn't yet
...
Otherwise we would warn about this once for every single packet until
the LATENCY event is received.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5854 >
2023-12-27 11:00:44 +00:00
Tim-Philipp Müller
d415816cb1
rtpvrawdepay: only announce supported formats in sink template
...
For most video formats we currently just assume that they
have a depth of 8 bits, whilst advertising that we can
handle 8/10/12/16 bit depth.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5866 >
2023-12-25 19:00:18 +01:00
Sebastian Dröge
c9c26eab26
rtpvp8pay: Also set partition IDs in the packets if meta exists but without temporal_scalability
...
Encoders will add the meta to every single buffer, but we only cannot set
partition IDs properly when the meta has temporal_scalability set
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5814 >
2023-12-21 11:26:49 +00:00
Sebastian Dröge
2e86fb691a
video-format: Fix format order once again
...
RGBA should be before RBGA. Both the Python script and the gstreamer-rs
tests agree on that, but somehow this is not caught by the CI.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5837 >
2023-12-20 05:33:43 +00:00
Chao Guo
2e75b8c8e9
v4l2object: clear old fds in poll when closing v4l2object
...
When reopening a v4l2 device, the v4l2object->poll will include some old fds,
which was assigned to this device before. If the pipeline opens multiple v4l2
devices, the old fd may been assigned to other v4l2 devices when reopening
devices.
This will cause the timing of the pipeline become confusing when polling devices,
leading functional abnormalities.
Therefore, when closing v4l2object, remove the old fds in poll to ensure that the
pipeline timing is normal.
Signed-off-by: Chao Guo <chao.guo@nxp.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5820 >
2023-12-19 15:23:23 +00:00
Arun Raghavan
ee903a5afd
rtp: Fix incorrect RTP channel order lookup by name
...
The g_ascii_strcasecmp() logic is inverted, since it returns 0 on equality.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5815 >
2023-12-15 15:21:20 -05:00
Víctor Manuel Jáquez Leal
4f27b50c2e
gtkglsink: template caps to only 2D & rectangle texture targets
...
Apparently external-oes is not supported by the plugin as texture target,
while DMABuf uploading prefers it because it's zero copy.
This patch enables DMABuf uploading and rendering by using either 2D or
rectangle texture targets.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5795 >
2023-12-11 13:17:48 +01:00
Olivier Crête
e8d7604a6a
adaptivedemux2: Parse cookies in downloadhelper
...
We need to parse any cookie headers, otherwise we end up
sending back attributes likes "Secure" and "httponly" which break
some servers.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5776 >
2023-12-09 18:30:30 +00:00
Sebastian Dröge
14b94ea00b
rtpvp9pay: Don't include unused dboolhuff.h header
...
It's only used by the VP8 payloader.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5784 >
2023-12-09 11:17:15 +00:00
Xavier Claessens
b80f4a1fa4
v4l2src: Consider framerate during caps selection
...
This simplifies the way it picks the closest caps to preference and take into
consideration the framerate to avoid picking high resolution at 5fps or so.
Simply calculate a "distance" of caps A and B from the preference and put
closest first, sorting by framerate first.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5777 >
2023-12-08 21:05:46 +00:00
Guillaume Desmottes
a56923d5e6
qtdemux: fix bug report URL
...
Using PACKAGE_BUGREPORT as in other modules.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5762 >
2023-12-05 09:25:22 +01:00
Thibault Saunier
14c7d3f4e9
qtdemux: Do not update demux->offset
when droping data on EOS
...
The offset is updated right after and we were breaking it by updating it
twice.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5724 >
2023-12-02 08:08:26 +00:00
Thibault Saunier
b1b29de0fb
qtdemux: Do not mark stream as EOS only if all streams are EOS
...
The `GstFlowCombiner` is responsible for tracking the flow of each
stream and handle the overal flow return value. Without that, we
can end up with the following scenario:
- Audio+video stream
- Only the video stream is linked downstream
- The audio stream goes EOS, video doesn't yet
-> We update the Flow in the combiner with OK as all streams are not EOS
- Video goes EOS because downstream returned EOS
-> `qtdemux` returns `FLOW_OK` forever because the unlinked audio pad
has `last_flowret==FLOW_OK`
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5724 >
2023-12-02 08:08:26 +00:00
Thibault Saunier
8295b2ae5c
qtdemux: Determine EOS based on the stream segment
...
Depending on the stream segment might vary (because of edts for example)
leading to EOS being sent at the wrong time (too early for example).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5724 >
2023-12-02 08:08:26 +00:00
Hosang Lee
7bf646e5ba
qtdemux: Don't overflow sample index
...
Don't reduce sample index if it is already at 0.
Assigning -1 to a guint32 variable causes unexpected behavior.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5743 >
2023-12-01 13:34:12 +00:00
Hosang Lee
041e0c6cab
qtdemux: Fix reverse playback for pcm audio stream
...
Some raw lpcm or adpcm may have larger sample sizes than the max
buffer size value set.
Trimming the buffer causes bogus size error on reverse playback.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5742 >
2023-12-01 15:11:04 +09:00