Matthew Waters
9046e60aa7
decklink: reinstate some hardcoded colorimetry handling
...
Needed when we don't yet have an open device and are doing negotiation.
colorimetry=bt601 is only actually supported by decklink for PAL and NTSC
formats. All other formats use bt709 or above.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7742 >
2024-10-30 03:47:14 +00:00
Matthew Waters
2832aab78a
decklink: only expose HDR colorimetry if 2020 colorspace is supported
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7742 >
2024-10-30 03:47:13 +00:00
Matthew Waters
19a60f341c
decklinkvideosrc: ignore HDR metadata consisting of all zeros
...
In some cases decklinkvideosink may produce such stream when the
information is unknown.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7742 >
2024-10-30 03:47:13 +00:00
Matthew Waters
06c344d43a
decklinkvideosink: provide default values when HDR metadata is not available
...
Some file format standards don't require mastering-display-info
and content-light-level values to be provided.
Decklink however requires the static HDR metdata for the PQ transfer
function which we may not have.
CTA-861-G mentions that in this case, 0 may provided as an 'unknown'
value which is what we use here.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7742 >
2024-10-30 03:47:13 +00:00
Matthew Waters
a509a1fd40
decklinkvideosink: fix incorrect EOTF value
...
Checking for mastering-display-info twice is incorrect. One of the
checks should be for the content-light-level.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7742 >
2024-10-30 03:47:13 +00:00
Nicolas Dufresne
30c6f2c163
wayland: Add NV15 support
...
This format, which maps to NV12_10LE40 in GStreamer is produced by Rockchip
video decoders when decoding 4:2:0 10 bit content.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7569 >
2024-10-30 02:27:12 +00:00
Seungha Yang
7f9be72e72
vp8decoder: Fix resolution change handling
...
Do not store resolution in set_format() so that resolution change
can be detected on keyframe as intended.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3928
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7710 >
2024-10-29 20:19:15 +00:00
Sebastian Dröge
8f5dca9611
rtmp2sink: Initialize base_ts / last_ts with the actual first observed timestamp
...
Initializing it with zero can falsely trigger the overflow / underflow detection
code if the first observed timestamp is a big integer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7745 >
2024-10-29 17:27:42 +00:00
Víctor Manuel Jáquez Leal
899792a5ef
va{av1,vp9}enc: fix return value
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7773 >
2024-10-29 15:29:51 +00:00
Xavier Claessens
468dcbe9b7
Revert "unixfd: disable flaky test_unixfd_segment for now"
...
This reverts commit 06cd4e2457
.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6765 >
2024-10-29 12:12:26 +00:00
Xavier Claessens
9b946098df
unixfd: Fix racy unit test by adding wait-for-connection property
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6765 >
2024-10-29 12:12:26 +00:00
Sebastian Dröge
5da635c2da
play: Improve play message API inconsistencies
...
* Consistently name parse functions according to their message type and
deprecate the misnamed ones,
* Add missing parse functions,
* Check for the correct message type when parsing
* Use correct field name for warning message details
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7754 >
2024-10-29 10:14:56 +00:00
Julian Bouzas
04af62b70f
lcevch264enc: Set 'byte-stream' format and 'au' alignment in output caps
...
This is because the LCEVC EIL SDK from V-Nova always outputs encoded video in
that format. This also avoids using the parser in some scenarios.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7750 >
2024-10-29 03:00:11 +00:00
Pablo García
6bbddc683d
d3d11: implement mouse wheel events
...
Adittion of d3d11 support for WM_MOUSEWHEEL and WM_MOUSEHWHEEL events,
which are triggered when the mouse is scrolled vertically or horizontally
respectively.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7705 >
2024-10-28 22:23:41 +00:00
Jordan Petridis
22ec1d8e4e
ci: add suppressions for OpenSSL false positives
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7455 >
2024-10-25 13:55:20 +00:00
Jordan Petridis
bc666db5fe
gst-plugins-bad.supp: Remvoe gssdp leaks that have been fixed
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7455 >
2024-10-25 13:55:20 +00:00
Edward Hervey
36e999b5f5
vacompositor: Add since marker
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7455 >
2024-10-25 13:55:20 +00:00
Edward Hervey
8bc8aedc62
codecparsers: Fix gtk-doc
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7455 >
2024-10-25 13:55:20 +00:00
Edward Hervey
fb2077061f
bad: Mark more types as plugin API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7455 >
2024-10-25 13:55:19 +00:00
Edward Hervey
908fc15411
docs: Fix av1parser symbols
...
Don't use un-named structures
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7455 >
2024-10-25 13:55:19 +00:00
Edward Hervey
cb87d7b129
plugins_cache: Update for fedora 40 build
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7455 >
2024-10-25 13:55:19 +00:00
Jordan Petridis
14c1bedb45
gstvafilter: Add back missing property comments
...
In b1cda4439b
the property comments
were removed, even though these are marked as public api.
Add back the comments, and a Since version for interpolation-method.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7455 >
2024-10-25 13:55:18 +00:00
Edward Hervey
38c07a2d01
all: Fix closure annotations
...
This was misused almost everywhere.
See
https://gi.readthedocs.io/en/latest/annotations/giannotations.html#support-for-gobject-closures
and: https://www.bassi.io/articles/2023/02/20/bindable-api-2023/
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7725 >
2024-10-25 08:58:29 +00:00
Diego Nieto
43c9c3a020
debugutils: videocodectestsink: support GRAY8 and GRAY10_LE{16,32}
...
Add support for:
* GST_VIDEO_FORMAT_GRAY8
* GST_VIDEO_FORMAT_GRAY10_LE16
* GST_VIDEO_FORMAT_GRAY10_LE32
These formats are used by Fraunhofer VVC encoder and decoder.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7706 >
2024-10-25 05:53:22 +00:00
Carlos Falgueras García
561ca94916
video: Add GRAY10_LE16 support
...
This adds a 10-bit variant of grayscale packed into 16 bits little-endian
words. The MSB 6 bits are padding and should be ignored. This format is
used by Fraunhofer VVC encoder and decoder libraries.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7706 >
2024-10-25 05:53:22 +00:00
Peter Stensson
06d4629521
codectimestamper: Fix gint wraparound in pts_compare_func
...
The diff between compared timestamps might be outside the gint range
resulting in wrong sorting results. This patch corrects that by
comparing the timestamps and then returning -1, 0 or 1 depending on the
result.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7726 >
2024-10-25 01:49:10 +00:00
Andoni Morales Alastruey
e8ab9349f5
vtdec: add support for level 6 6.1 and 6.2
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7729 >
2024-10-24 21:45:32 +00:00
Jordan Yelloz
bcaf72ba62
mpegtsmux: Schedule PMT update on stream removal
...
Following the behavior of tsmux_program_add_stream(), this ensures that a PMT
update will also be caused by removal of a stream from a program.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7719 >
2024-10-24 16:08:12 +00:00
Sebastian Dröge
493f8e440a
mpegtsdemux: Handle PTS/DTS wraparound with ignore-pcr=true
...
The wraparound handling code assumes that the PCR gets updated regularly for
being able to detect wraparounds. With ignore-pcr=true that was not the case and
it stayed initialized at 1h forever.
To avoid this problem, update the fake PCR whenever the PTS advanced by more
than 5s, and also detect wraparounds in these fake PCRs.
Problem can be reproduced with
$ gst-launch-1.0 videotestsrc pattern=black ! video/x-raw,framerate=1/5 ! \
x264enc speed-preset=ultrafast tune=zerolatency ! mpegtsmux ! \
tsdemux ignore-pcr=true ! fakesink
which restarts timestamps at 0 after around 26h30m.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7588 >
2024-10-24 15:09:15 +00:00
Seungha Yang
8c3d516a14
d3d12: Additional fixes for MinGW build
...
Various fixes for GCC build, including actual bug fixes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7722 >
2024-10-24 06:54:30 +09:00
Seungha Yang
703cc1783e
d3d12: Fix MinGW build with installed DirectX-Headers
...
Required for cerbero MinGW build
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7154 >
2024-10-22 21:25:11 +00:00
Daniel Morin
db78446576
tensordecoder: Correct Klass, for ssd TD
...
Tensor decoder need a specific klass to be able to auto-plug them
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7698 >
2024-10-22 20:23:32 +00:00
Jochen Henneberg
2ae846a77a
examples: va: Added VP8 encoder to dynamic reconfigure
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6959 >
2024-10-22 11:48:49 +00:00
Jochen Henneberg
f31581544c
va: Added VP8 encoder
...
Fixes #3430
Fixes #3576
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6959 >
2024-10-22 11:48:49 +00:00
Jochen Henneberg
982bfe4f5d
codecparsers: vp8parser: Added frame type enums
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6959 >
2024-10-22 11:48:49 +00:00
Seungha Yang
fb6a5c8a0c
d3d12mipmapping: Fix debug category
...
Fixing copying-and-pasting mistake
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7701 >
2024-10-20 16:01:10 +00:00
Benjamin Gaignard
451b32574f
v4l2codecs: dynamically discovers supported pixels formats
...
If the driver allows it, for each stateless decoder,
enumerate all the pixels formats and use this list for source
pad instead of a static template.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7686 >
2024-10-19 22:14:13 +00:00
Benjamin Gaignard
3a52cbcc67
v4l2codecs: Update videodev2.h with V4L2_FMTDESC_FLAG_ENUM_ALL flag
...
Add V4L2_FMTDESC_FLAG_ENUM_ALL flag to support discovering all
possible pixel formats.
Add V4L2_FMT_FLAG_META_LINE_BASED to not create a hole in flag
definition.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7686 >
2024-10-19 22:14:13 +00:00
Víctor Manuel Jáquez Leal
45b01f9456
h26xbitwriter: false have_space if aligning fails on aud
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7655 >
2024-10-19 17:28:41 +00:00
Edward Hervey
360787ef27
qrbaseoverlay: Add doc/since
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7692 >
2024-10-19 16:31:13 +00:00
He Junyan
dce250beb8
vaav1enc: Do not enable palette mode by default
...
Palette mode should only be enabled only when we know that the content
of the picture is simple. For example, only white letters on black
screen in SCC mode. So, by default, we need to disable it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7668 >
2024-10-19 12:34:40 +00:00
Benjamin Gaignard
c67e6cdec7
kmssink: Add IMX-DCSS auto-detection
...
Add IMX DCSS display controller into list of
auto-detected modules.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7685 >
2024-10-19 04:54:18 +00:00
Benjamin Gaignard
e13065b22a
v4l2codecs: vp9: Allow inter-frames resolution change
...
When the stream resolution change it is needed to negotiate
a new pools and to update the caps.
Resolution change could occurs on a new sequence or a new
picture so move resolution change detection code in a common
function.
For memory allocation reasons, only allows resolution change
on non keyframe if the driver support remove buffer feature.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7684 >
2024-10-19 01:39:04 +00:00
Benjamin Gaignard
34997e88ae
codecs:vp9 decoder: Remove unsused info field
...
Video info field is never used so remove it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7684 >
2024-10-19 01:39:04 +00:00
Benjamin Gaignard
0f171b2086
codecs: vp9 decoder: Drain output buffers before resolution change
...
We must drain the pending output picture so that subclass can renegotiate
the caps. Not doing so while still renegotiating would mean that the
subclass would have to do an allocation query before pushing the caps.
Pushing the caps now without this would also not work since these caps
won't match the pending buffers format.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7684 >
2024-10-19 01:39:04 +00:00
Benjamin Gaignard
ad537ef934
v4l2codecs: Add remove buffers helpers
...
Add helpers function to call VIDIOC_REMOVE_BUFS ioctl.
If the driver support this feature buffers are removed from the queue when:
- the pool when is detached from the decoded.
- the pool is released.
- allocation failed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7684 >
2024-10-19 01:39:04 +00:00
Benjamin Gaignard
fecdfe18ca
v4l2codecs: Do not register stateless decoder if the driver doesn't support VIDIOC_CREATE_BUFS
...
If the driver can't allocate buffers with VIDIOC_CREATE_BUFS do not
register it has stateless decoder.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7684 >
2024-10-19 01:39:04 +00:00
Benjamin Gaignard
2753a8f0c1
v4l2codecs: Replace VIDIOC_REQBUFS calls by VIDIOC_CREATE_BUFS
...
Use VIDIOC_CREATE_BUFS ioctl to create buffers instead of VIDIOC_REQBUFS
because it allows to create buffers also while streaming.
To prepare the introduction of VIDIOC_REMOVE_BUFFERS create
the buffers one per one instead of a range of them. This way
it can, in the futur, fill the holes.
gst_v4l2_decoder_request_buffers() is stil used to remove all
the buffers of the queue.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7684 >
2024-10-19 01:39:04 +00:00
Benjamin Gaignard
c25c4355b1
v4l2codecs: udpate videodev2.h
...
Update videodev2.h to be aligned with kernel version v6.10
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7684 >
2024-10-19 01:39:03 +00:00
Emil Ljungdahl
68bbfdc9a2
webrtcbin: Clean up bin elements when datachannel is removed
...
When a datachannel within a session is removed after proper close,
reference to the error_ignore_bin elements of the datachannel
appsrc/appsink were left in webrtcbin.
This caused the bin-objects to be left and not freed until the whole
webrtc session was terminated. Among other things that includes a thread
from the appsrc.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7675 >
2024-10-18 23:14:09 +00:00