Nicolas Dufresne
be95be4b31
video: pool: Make structure const when getting video alignment
...
Downgrade to const, this is backward compatible make makes the API compatible
wit more usages.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7201 >
2024-11-19 15:27:38 +00:00
Thibault Saunier
45806c4d66
gl: colorconvert: Add support for I422_10XX and I422_12XX
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7919 >
2024-11-19 12:39:01 +00:00
Guillaume Desmottes
ac04d9b7b1
libav: avviddec: log the old resolution when updating the pool
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7913 >
2024-11-19 08:04:00 +00:00
Guillaume Desmottes
7d49740269
libav: viddec: provide details if meta has the wrong resolution
...
Will produce a more useful assert error message.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7913 >
2024-11-19 08:04:00 +00:00
Nicolas Dufresne
0e2efb2de4
waylandsink: Properly handle unrecoverable errors
...
Allocation failures cannot be recovered and should lead to an error
being posted on the bus. Otherwise the pipeline will just stall.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7903 >
2024-11-18 16:02:13 -05:00
Nicolas Dufresne
f9c01f6479
waylandsink: Do not offer SHM pool when DMABuf is negotiated
...
Pools are expected to produce DMABuf when the caps are negotiated with
the associated caps feature. For that reason, avoid sharing the SHM pool
in this case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7903 >
2024-11-18 16:02:12 -05:00
Stéphane Cerveau
c67ac844ed
zbar: fix documentation
...
Fix some typos and markdown cleanup.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7914 >
2024-11-18 14:25:34 +00:00
Stéphane Cerveau
6d8cd9cf92
zxing: update documentation
...
Fix some typos and markdown cleanup.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7914 >
2024-11-18 14:25:34 +00:00
Albert Sjolund
f068b3bf5c
gstpad: specialize gst_pad_chain_list_default
...
In the case where the bufferlist is writable, send the
buffers immediately without adding to the refcount. This
allows writable buffers to maintain their writability, even
without implementing a chain_list function on the element.
Adds a test to verify this property, where a writable list
maintains refcount 1, but a readonly list increases it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7894 >
2024-11-18 10:59:34 +00:00
Robert Rosengren
6fff1ef971
gstdeviceprovider: fix leaking hidden providers
...
Free list of hidden providers upon stop and dispose.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7912 >
2024-11-18 09:20:34 +01:00
Matthew Waters
c3d4d500e0
vaapi/display_wayland: silence a maybe-unitialized warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:58 +11:00
Matthew Waters
26d581041a
vaapi/display_drm: silence a maybe-unitialized warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:58 +11:00
Matthew Waters
e993e0e981
vaapi/encoder: silence a maybe-unitialized warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:58 +11:00
Matthew Waters
1814d7ae11
rtph26xpay: silence some maybe-unitialized warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:58 +11:00
Matthew Waters
c7ee7c65ae
validate/gapplication: silence a maybe-unitialized warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:58 +11:00
Matthew Waters
995dcb04e0
tests/onvif: silence a maybe-unitialized warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:58 +11:00
Matthew Waters
c0f4a855cc
ges/clip: silence some maybe-unitiailized warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Matthew Waters
a566dfd339
uvcgadget: silence a maybe-uninitialized warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Matthew Waters
6eee4a513b
fdkaacenc: silence a maybe-unitialized warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Matthew Waters
bf22f282eb
encodebin: silence a maybe-unitialized warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Matthew Waters
741f935bbf
ristrtxsend: silence a maybe-uninitialized warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Matthew Waters
382ed4630e
av12json: silence a maybe-unitialized warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Matthew Waters
e2d143f65d
oggdemux: silence a maybe-unitialized warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Matthew Waters
3743f69c85
souphttpsrc: silence some maybe-uninitialized warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Matthew Waters
d98c83b297
v4l2videodec: silennce some maybe-uninitialized warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Matthew Waters
7b526775b4
rtsp-server-media-factory: silence some maybe-unused warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Matthew Waters
605cff0642
vulkan/videoutils: silence some maybe-unitialized warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Matthew Waters
8e758c715b
value: silence a maybe-unitialized warning
...
gstvalue.c:376:8: error: ‘s_val’ may be used uninitialized [-Werror=maybe-uninitialized]
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875 >
2024-11-18 12:10:57 +11:00
Albert Sjolund
72edd65710
rtpmanager: don't map READWRITE in twcc header ext
...
There is no need to map the buffer as writable, as there is
only a read performed on the mapped buffer. This is in line
with other header extensions, as no other extensions maps
it as readwrite.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7895 >
2024-11-17 10:00:12 +00:00
Philippe Normand
827caa662c
playbackutils: Fix caps leak in get_n_common_capsfeatures()
...
The gst_static_caps_get() return value is transfer-full.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7908 >
2024-11-16 18:24:23 +00:00
Nicolas Dufresne
000a7650fc
glupload: Upgrade uploader selection message to INFO
...
This allow using INFO log to quickly see what uploader we
picked. This is very useful as the DEBUG category has became
very noisy.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7891 >
2024-11-16 12:30:34 +00:00
Nicolas Dufresne
3c8b1427ca
glupload: dmabuf: Fix emulated tiled import
...
The added check for LINEAR modifier broke dmabuf import for
NV12 emulation (R8/RG88) of all sort (linear and tiled).
Fixes !5461
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7891 >
2024-11-16 12:30:34 +00:00
He Junyan
347393be36
Doc: Update the kmssink caps after adding DMA support
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:20:16 +08:00
Jakub Adam
34a400cc0e
kmsbufferpool: Accept DMA_DRM caps in the config
...
Only linear modifier is supported due to the dumb allocator's
limitation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
Jakub Adam
9e81a6517b
kmssink: ensure we have a valid vinfo_drm after set_caps
...
Consequently drop the check in import_dmabuf
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
Jakub Adam
d04a03d176
kmssink: enumerate drm formats when IN_FORMATS not present
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
6ad6b765ab
kmssink: Do not provide DMA buffer pool for non-linear caps
...
The dumb allocator does not support modifiers, so we can not allocate
non-linear buffers by ourself.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
e4d7ac5989
kmssink: Handle the DMA buffer importing correctly
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
a925630d87
kmssink: Add DMA kind caps into sink caps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
6f78e1c3e0
kmssink: Add helper functions to create DMA and raw caps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
3f510d1296
kmssink: Add a helper function to collect formats and modifiers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
9df377efc1
kmssink: Add modifier to gst_kms_allocator_dmabuf_import
...
Use the new drmModeAddFB2WithModifiers() API for binding the
non-linear BO.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
Thibault Saunier
7010efc8ed
meson: Bump minimum version to 1.3
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4025
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7899 >
2024-11-16 03:02:27 +00:00
Sebastian Dröge
dce0cdf548
audiostreamalign: Don't report disconts for every buffer if alignment-threshold is too small
...
If it is too small, the maximum allowed diff becomes 0 samples which would then
trigger if there is no discontinuity at all.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7888 >
2024-11-16 00:10:51 +00:00
Benjamin Gaignard
da02191411
v4l2codecs: Test ioctl return value and errno
...
Fix error testing when using V4L2_FMTDESC_FLAG_ENUM_ALL by using
both errno and the return value.
Fixes !7686 (merged)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7873 >
2024-11-15 23:22:30 +00:00
Sebastian Dröge
2bbf095e5b
matroskamux: Simplify timestamp comparison logic in find_best_pad()
...
If a buffer has no timestamp it is immediately muxed so we can directly break
the loop and simplify comparisons in the other cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7872 >
2024-11-15 22:33:53 +00:00
Sebastian Dröge
a391728ad4
matroskamux: Don't time out in live mode if no timestamped next buffer is available
...
The muxer can only advance the time if it has a timestamped buffer that can be
output, otherwise it will just busy-wait and use up a lot of CPU.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7872 >
2024-11-15 22:33:53 +00:00
Philippe Normand
701f563996
matroskamux: Delay stream-header until all sink pads have caps
...
If we don't wait, an incomplete header might be generated due to a race between
the _aggregate thread and the sink pad setcaps.
Fixes #3929
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7872 >
2024-11-15 22:33:53 +00:00
Marianna Smidth Buschle
2766e4816a
v4l2object: Fixed framerate negotiation
...
We had a problem with negotiation of the framerate.
Gstreamer was querying the FRAMEINTERVALS based on the max frame size
instead of the desired frame size.
This was resulting in non-negotiated errors when trying to run with a
smaller frame size and fps higher than the max for the max image size.
Fx the max framerate for 1024x1024 RGB on CMOSIS4000 is 28.292
While for 1024x100 RGB it is 280.867
But Gstreamer would allow any framerates bigger than 28.292 no matter
the frame size used...
I have fixed it by 1st changing the CAPS query to use the minimum frame
size instead of maximum.
This however has the downside of allowing gstreamer to negotiate
framerates that are too high if the image size is bigger than the
minimum.
This is not a huge problem since our driver just CLAMPS the fps value to
the max then.
However gstreamer was not being properly notified of this change, and
would therefore report a wrong fps in the CAPS structure.
Note that the fps would be correct inside the buffer info.
Since gstreamer was reading the fps back after setting it.
It was just not being "propagated" to the CAPS structure.
I have also added a WARNING to this point so we can see if the fps that
gstreamer tries to apply was accepted or not.
And the next part of the fix was to add a framerate check after the
frame size has been established.
I did this inside the fixate_caps function of the v4l2src, which was
calling the TRY_FMT in order to check if the format was correct.
So I just added a check for the ENUM_FRAMEINTERVALS in there.
And now we get the non-negotiated again if the fps is too high for the
selected frame size.
Also added a couple of warnings so it is easy to see that this was the
cause.
See:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3037
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7850 >
2024-11-15 22:29:56 +00:00
Stéphane Cerveau
0dd706a420
vkutils: add gst_vulkan_ensure_element_device
...
In order to keep the same device across
the elements in the pipeline, use either the device id
to create the device or get the device from the context
set by the peer elements.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7843 >
2024-11-15 20:32:24 +00:00