Doug Nazar
2e96ed13de
rfbsrc: Free various props before being set & during cleanup
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8648 >
2025-03-27 09:03:18 +00:00
Doug Nazar
c2cb94a421
frei0r: Free various props before being set
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8648 >
2025-03-27 09:03:18 +00:00
Doug Nazar
afd979c9e4
faceoverlay: Free various props during cleanup
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8648 >
2025-03-27 09:03:18 +00:00
Philippe Normand
1e2b103b20
alphacombine: De-couple flush-start/stop events handling
...
There is no guarantee that any FLUSH_STOP event is preceded by a FLUSH_START.
The element now stops flushing once it has received a FLUSH_STOP on all its sink
pads.
Fixes #4174
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8604 >
2025-03-12 18:34:53 +00:00
Thibault Saunier
ed693c7435
video: Give better names to buffer pools
...
Making debugging simpler
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8617 >
2025-03-12 14:49:22 +00:00
Carlos Bentzen
ee6618d9ba
h266parse: clear cache values with memset
...
Fixes a stack overflow on Windows/MSVC.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8588 >
2025-03-05 10:02:38 +00:00
Benjamin Gaignard
fab7e43fe2
debugutils: videocodectestsink: Add GBR_10LE as supported pixel format
...
Add GBR_10LE in the list of supported format of the element.
GBR_10LE is used as output format in Fluster ARGON tests suite.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8502 >
2025-02-18 13:01:14 +00:00
Benjamin Gaignard
a50dddeea2
videoparsers: av1: Fix typo in debug log
...
comsumed -> consumed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8502 >
2025-02-18 13:01:13 +00:00
Benjamin Gaignard
2f81d53efc
videoparsers: av1: Allow av1parse to parse annexb streams
...
Let's av1 parser do it job event it receives an annexb stream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8502 >
2025-02-18 13:01:13 +00:00
Edward Hervey
96e660e0d9
mpegts: Fix PCR Discontinuity handling for HLS
...
We can only reliably use the adaptation field discontinuity flag if our input is
properly timestamped on a regular basis (ex: UDP, DVB, RTP, etc...).
For HLS and other systems which don't provide that information, we should not
reset the base observations. Otherwise we would potentially end up picking a
reference time from a long time ago.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8480 >
2025-02-14 14:33:45 +00:00
Mart Raudsepp
def2f12d84
mpegtsmux: Fix error message for PID < 0x40 to be in the claimed base 16
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8463 >
2025-02-12 12:39:29 +00:00
Mart Raudsepp
395c8cafa6
mpegtsmux: Fix deadlock when requesting pad for PID < 0x40
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8463 >
2025-02-12 12:39:29 +00:00
Alexander Slobodeniuk
15bf924940
cpu-throttling-clock: fix missing GObject vtable chainups
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8452 >
2025-02-11 22:49:06 +01:00
Carlos Bentzen
b848c91dec
mpegtsmux: add support for VVC/H.266 video
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8435 >
2025-02-10 20:57:40 +00:00
Edward Hervey
63a03b167a
mpegts: Take into account adaptation field discont
...
If the flag is set, there is an *expected* discontinuity:
* For CC, we ignore the fact it's not contiguous
* For PCR, we acknowledge the values aren't contiguous
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8420 >
2025-02-10 19:41:21 +00:00
Alexander Slobodeniuk
b22c1da0d3
basetsmux: fix chaining up GObject's constructed virtual method
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8416 >
2025-02-10 17:49:29 +00:00
Alexander Slobodeniuk
9f5c08931d
rtpsrc: fix chaining up GObject's constructed virtual method
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8416 >
2025-02-10 17:49:29 +00:00
Glyn Davies
f32402e9b4
h264parse: Force full timestamp on all timecode updates. Was invalid between midnight and 1am
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8401 >
2025-02-10 11:50:23 +00:00
He Junyan
f63a70966e
av1parse: Handle the padding OBU correctly
...
The current av1parse can not find the edge of frame correctly if there
is padding OBUs inside the stream. We now use a flag seen_non_padding to
check whether we see some valid data after a data push. Then the padding
OBUs will be the part of the new frame.
We also refine the code logic to make the code more readable.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4044
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8269 >
2025-02-07 16:56:53 +00:00
Carlos Bentzen
bb74aceb5d
h266parse: clean up unused APS fields
...
Since APS is always carried in-band, we don't need to keep the APS
NALs around in the parser anymore.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
5fad23d26b
h266parse: enable vvc1 and vvi1 stream formats
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
05d4a2022e
h266parse: handle packetized frames
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
551782b32b
h266parse: don't prepend APS NALs on IDR frames
...
Instead, APS NALs can just be pushed an in-band NALs like PH and SEI.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
c7e9aba025
h266parse: negotiate before handling codec_data NALs
...
If we find VPS/SPS/PPS in codec_data and call gst_h266_parse_process_nal
with them, we need to have negotiated before in order to correctly
process them with flags like h266parse->transform set or not depending
on the negotiation. This is important because in certain vvc1/vvi1 streams we
may have correct codec_data but faulty parameter sets in the stream and
we would want to push the parameter sets from codec_data first.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
f4f7e99e05
h266parse: parse codec_data
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
8607ccdf2c
h266parse: update IDR position in more cases
...
The IDR position should be updated if we're processing an
IDR frame or pushing codec NALs. Not only when picture_header_in_slice_header_flag
is set.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
7c29249ca5
h266parse: fix typos
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
fe61b43814
h266parse: implement make_codec_data
...
implement serialization of codec_data containing VvcDecoderConfigurationRecord
as defined in ISO/IEC 14996-15.
The VPS/SPS/PPS NALs are added to the codec_data. APS NALs could be
optionally included as well but will be pushed in-band instead, because:
1. Logic is easier that way. We'd have to filter out for PREFIX_APS only
(SUFFIX_APS aren't allowed in codec_data).
2. APS NALs can also be sent for every non-keyframe slice, and often are, so just pushing
them in-band makes more sense to have less to keep track and avoid possible
duplicates.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Brad Hards
9b578abe15
h264parse: add conditional values to AVCConfigurationRecord
...
This adds the data required in AVCDecoderConfigurationRecord for
higher profile (High variants) configurations - everything in the if(...) {...} part
of ISO/IEC 14496-15:2024 Section 5.3.2.1.2. (or 5.3.3.1.2 in the 2019 version).
Resolves an error flagged by ComplianceWarden when muxing this into ISOBMFF.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8308 >
2025-01-22 15:58:21 +11:00
Sebastian Dröge
03942ff5b4
tsdemux: Fix backwards PTS wraparound detection with ignore-pcr=true
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8326 >
2025-01-20 17:57:31 +00:00
Carlos Bentzen
7405866c84
tsdemux: add support for VVC/H.266
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4940 >
2025-01-15 13:55:25 +01:00
Ruben Gonzalez
c6ed0c33a0
h264parse: drop duplicated call
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8299 >
2025-01-13 22:09:10 +01:00
Mathieu Duponchelle
3de86b2b97
docs: port plugins to explicit sources
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8273 >
2025-01-13 19:17:13 +01:00
Edward Hervey
eef680b441
bad: Add extra warning flags
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
64e9142d75
uritranscodebin: Fix definition usage
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
1bbd586e9e
timecode: Fix definition
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
6f9f951e83
rtmp2: Explicitly define scheme error enum
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
45df33196f
mxfdemux: Fix segments iteration
...
`i >= 0` is always true since it's an unsigned integer ...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
37a8d49eaa
siren: Cast shift mask to unsigned value
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
7a2aef9fa2
basetsmux: Add explicit macro for GstClockTimeDiff handling
...
The checks in the other macro were useless for unsigned values
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
67c4c35fb7
mxfdemux: Remove useless check
...
values will always be positive
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
5bc4ebfe61
speed: Refactor event handler
...
To avoid fallthrough issues which were tricky to fix
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
21d81d25ec
bad: Clearly specify fallthrough in switch/case
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
2f1f44cdc7
ristsink: Add missing break
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Ruben Gonzalez
da5a4f7820
videoparsers: Fix indentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8281 >
2025-01-12 22:51:44 +00:00
Tim-Philipp Müller
ef57213426
mpegtsmux: add support for interlaced JPEG XS
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8219 >
2025-01-08 19:48:31 +00:00
Tim-Philipp Müller
23ffffe57b
tsdemux: handle interlaced JPEG XS
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8219 >
2025-01-08 19:48:30 +00:00
Tim-Philipp Müller
9aab2ddd13
tsdemux: fix JPEG XS framerate handling for 29.97fps
...
.. and other framerate values with a 1.001 denominator.
The coded framerate denominator value is a code that maps to
either 1 (for 1) or 1.001 (for 2) not a direct value.
Before, 29.97fps would be announced as 15fps because it
would calculate 30/2 instead of 30/1.001.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8226 >
2024-12-31 16:19:16 +00:00
Edward Hervey
19cea52dbd
mpegts: Add provisional AV1 mapping
...
The main difference with the WIP av1-in-mpegts mapping is that the payload data
is not startcode-escaped. Most of the rest is sensible usage of it:
* Custom AV1G (AV1 Gstreamer) registration descriptor instead of AV01
* AV1CodecConfigurationRecord is stored in the same 0x80 custom descriptor and
conforms fully to the isobmff spec (i.e. does not the HDR fields from the
provisional mpegts specification which conflict with that one).
* Data is stored as OBU
* Access Unit is the frame level (same as provisional mpegts mapping)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4442 >
2024-12-20 14:19:00 +00:00
Nicolas Dufresne
988f806e7a
av1parse: Fix some debug trace and comment typo
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8026 >
2024-12-20 01:26:12 +00:00