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
d63c965ec8
vulkan: Include api header
...
Needed for GST_VULKAN_HAVE_VIDEO_EXTENSIONS
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
b4b140440f
d3d11: Ignore undef issues with external headers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
67b5414c24
d3d12: Disable implicit fallthrough checks
...
There are some missing explicit fallthrough statements in the direct headers
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
9b5ea24e2b
h265parser: Fix unsigned value reading
...
Unsigned values are always above 0, use MAX variant for reading
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
8d0cd490f0
mpeg2decoder: Remove useless check
...
The enum is unsigned
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
9b8ecba9a1
vkinstance: Remove useless check
...
priv->requested_api_major is unsigned
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
8b62792e5c
d3d12: Add missing breaks to switch/case
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
916774b4f0
h265bitwriter: Don't use type too small
...
The computed `coef_val` could exceed the maximum range of a gint8. Use a bigger
one, the checks after will ensure it's properly cropped/padded
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
5bb22c24dc
mpegts: Add missing break
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
b78c119a42
msemediabuffer: Fix ASCII character detection
...
Use glib function. The previous check was checking whether a signed int was
lower than its limit (which ... is always TRUE).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
efbe1e96ca
msesourcebuffer: Fix unsigned value handling
...
Use the explicit valid clocktime handler instead
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Colin Kinloch
4a56c82f0c
wayland: Print table split when DMABuf format changes
...
The `zwp_linux_dmabuf_v1` doesn't specify an order for modifier events
to be sent.
In my case the linear format was sent last resulting in the first item
in each row being the previous format.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8272 >
2025-01-09 18:34:51 +00:00
Olivier Crête
33259e7ea4
analytics: Tensor dimensions are always row-major or col-major
...
Simplify by removing the extra fields, as this is what all
frameworks give us.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8250 >
2025-01-08 21:47:52 +00:00
Daniel Morin
0a343fa738
analytics: remove batch-size
...
- Batch-size will be the outer-most dimension. Presence of batch dimension can
be identified using `dims` and `id`.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8191 >
2025-01-03 23:14:39 +00:00
Seungha Yang
2ff7b5a5ab
d3dshader: Add sampling pixel shader for scRGB SRV
...
Shaders required for HDR capturing
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8227 >
2025-01-02 05:57:38 +09:00
Sebastian Dröge
9909654a9a
play: Fix stream id leaks on initial stream selection
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7650 >
2024-12-28 13:51:50 +02:00
Sebastian Dröge
0b00cb04b3
play: Add stream-id based selection of streams to match better playbin3's API
...
As part of this
- Add accessors for the stream ID and selection API based on the
stream ID
- Deprecate the old index-based APIs
- Remove playbin support
- Implement the track enable API based on stream selection
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7648 >
2024-12-27 19:00:18 +00:00
He Junyan
51618400ec
libs: codecparsers: Add the missing ilrp_idx field in H266's ref list
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5710 >
2024-12-20 08:22:31 +08:00
He Junyan
5b768ce0cc
libs: codecparsers: H266 GstH266RefPicListStruct's abs_delta_poc_st should be 16 bits
...
Its value range is 0~(2^15 − 1) according to the spec.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5710 >
2024-12-20 08:22:31 +08:00
Stéphane Cerveau
97d62d2291
vkencoder: init debug category earlier
...
The encoder has not been created if the codec is not supported by
the hardware, so the GST_WARNING_OBJECT will fail to find a suitable
category.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8138 >
2024-12-19 19:49:06 +00:00
Stéphane Cerveau
f618270c59
vkdecoder: init debug category earlier
...
The decoder has not been created if the codec is not supported by
the hardware, so the GST_WARNING_OBJECT will fail to find a suitable
category.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8138 >
2024-12-19 19:49:06 +00:00
Matthew Waters
dbf4915abd
cuda/context: add gpu stack size property
...
Allows reducing the initial stack size of GPU threads. Cuda should
automatically increase this value if a kernel requires a larger stack.
Can save roughly 40MB of GPU memory for a single nvh264enc instance.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8158 >
2024-12-19 00:33:03 +00:00
Matthew Waters
d6563016ca
cuda: add CuGet/SetCtxLimit()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8158 >
2024-12-19 00:33:03 +00:00
Nicolas Dufresne
a6be74786e
va: display: Optimize out some property indirection
...
Because it was visible during some profiling, I thought it cost nothing
to optimize out the uneeded property get roundtrip.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8179 >
2024-12-18 13:38:42 -05:00
Nirbheek Chauhan
0c17efafa3
meson: Improve NVMM CUDA detection
...
1. Add some comments explaining what headers and libs are expected on
what systems
2. Only look in default incdirs if no incdir is specified
3. Require libnvbufsurface.so on Jetson when cuda-nvmm=enabled
4. Require libatomic on Jetson when cuda-nvmm=enabled
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8021 >
2024-12-16 14:47:23 +00:00
Seungha Yang
9962c57b5b
d3d12: Suppress misleading leak report
...
Set may-be-leaked flag to child objects if needed,
since the parent object holding refcount of the child
will be leaked intentionally
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8152 >
2024-12-16 09:47:21 +00:00
Seungha Yang
eac069b46d
d3d12: Add d3d12deinterlace element
...
Adding D3D12 compute shader based deinterlace element
with YADIF filtering
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8140 >
2024-12-14 12:09:23 +00:00
Seungha Yang
e3348ea402
d3dshader: Add YADIF deinterlacing compute shader code
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8140 >
2024-12-14 12:09:23 +00:00
Oskar Fiedot
a3a7acdd0a
analytics: add rotation to object detection mtd
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7938 >
2024-12-11 11:54:15 +01:00
Víctor Manuel Jáquez Leal
060563c357
vkoperation: enable inline query only if it's a video operation
...
This commit enables the usage of inline queries, if and only if, the
provided
pNext structure, in gst_vulkan_opeation_enable_query(), chains a
VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR typed structure.
Also it guards "gstvkvideo-private.h" include
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8112 >
2024-12-10 15:52:21 +00:00
Stéphane Cerveau
fd1946c26b
vkvideo: add video_maintenance1 check
...
Add gst_vulkan_video_maintenance1_supported
to check if the video session needs
VK_VIDEO_SESSION_CREATE_INLINE_QUERIES_BIT_KHR
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8112 >
2024-12-10 15:52:21 +00:00
Daniel Morin
a1e623d200
analytics: add _N_TO_N relation type
...
This relation type define relations between each components of two groups.
First component of first group relate to first component of second group,
Second component of second group relate to second component of second group,
and so on. It's a denser way to express relations in this context.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8087 >
2024-12-09 18:18:30 +00:00
Aaron Boxer
c03fb74469
h265parse: remove useless NULL setting in gst_h265_parser_free
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8082 >
2024-12-05 06:41:35 -05:00
Aaron Boxer
95151af803
h264parse: remove useless NULL setting in gst_h264_nal_parser_free
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8082 >
2024-12-05 06:39:06 -05:00
Stéphane Cerveau
6790093fe6
vkoperation: use inline query with video maintenance1
...
When video_maintenance1 is supported,
gst_vulkan_operation_begin_query will now use
the inline query mechanism instead of vkCmdBeginQuery
API.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7995 >
2024-12-04 22:01:02 +00:00
Stéphane Cerveau
59cb6e6869
vkdevice: enable VK_KHR_VIDEO_MAINTENANCE_1_EXTENSION_NAME
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7995 >
2024-12-04 22:01:02 +00:00
Víctor Manuel Jáquez Leal
a26b348351
vkphysicaldevice: dump if video maintenance1 is supported
...
Dump if VK_KHR_video_maintenance1 features is supported by the driver.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7995 >
2024-12-04 22:01:02 +00:00
Sebastian Dröge
19e3617dc0
h264parse: Free SEI if parsing succeeds but alignment afterwards fails
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8056 >
2024-12-04 16:05:44 +00:00
Sebastian Dröge
8830c65b8f
h265parse: Free SEI if parsing succeeds but alignment afterwards fails
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4076
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8056 >
2024-12-04 16:05:44 +00:00
Guillaume Desmottes
bfda0f4858
h265parse: parse unregistered SEI without user data
...
Same change as in h264parse.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7931 >
2024-12-04 13:56:13 +00:00
Guillaume Desmottes
082a8fcd5e
h264parse: parse unregistered SEI without user data
...
We get loads of warnings when parsing videos from users:
gsth264parser.c:1115:gst_h264_parser_parse_user_data_unregistered: No more remaining payload data to store
gsth264parse.c:646:gst_h264_parse_process_sei:<h264parse0> failed to parse one or more SEI message
Those are raised because of unregistered SEI without user data.
The spec does not explicitly state that unregistered SEI needs to have
data and I suppose the UUID by itself can carry valuable information.
FFmpeg also parses and exposes such SEI so there is no reason for us no
too as well.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7931 >
2024-12-04 13:56:13 +00:00
Víctor Manuel Jáquez Leal
44b8a50879
vkencoder-private: add gst_vulkan_encoder_is_started()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8007 >
2024-12-04 02:17:45 +00:00
Víctor Manuel Jáquez Leal
549404ccaa
vkencoder-private: add again GST_TYPE_VULKAN_ENCODER_RATE_CONTROL_MODE
...
It was already part of the old rate control mechanism but it had wrong the
namespace.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8007 >
2024-12-04 02:17:45 +00:00
Víctor Manuel Jáquez Leal
e03b124c10
vkencoder-private: implement callback to chain control rate structures
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8007 >
2024-12-04 02:17:45 +00:00
Víctor Manuel Jáquez Leal
b99276a7f9
vkencoder-private: implement callback to chain codec specific structures
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8007 >
2024-12-04 02:17:45 +00:00
Víctor Manuel Jáquez Leal
ab6aafb076
vkencoder-private: handle quality level
...
It creates a new structure for passing the codec quality structure at _start(),
where it will be filled. The quality level can be set or changed according
encoder limits.
Later the quality level will be set at _update_session_parameters() and at each
frame encoding. That's why it has to be set at _start().
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8007 >
2024-12-04 02:17:45 +00:00
Víctor Manuel Jáquez Leal
d63ec09b5e
vkencoder-private: rename first_encode_cmd to session_reset
...
Since it reflect better when it's needed to be used: to reset the current
session.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8007 >
2024-12-04 02:17:45 +00:00
Víctor Manuel Jáquez Leal
200484a84b
vkencoder-private: shuffle down VkVideoBeginCodingInfoKHR initialization
...
to make it more cohesive
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8007 >
2024-12-04 02:17:45 +00:00