Matthew Waters
48ab457d79
vulkan/physical-device: don't assume that queue_family_ops is filled
...
On old enough vulkan (< 1.2), we will never retrieve the family operations and
will perform a NULL pointer dereference when dumping the queue family op
properties.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5547 >
2023-10-25 16:38:06 +11:00
Adrien De Coninck
65365caa21
d3d11videosink: post "have-window-handle" element message on the bus
...
* when window_id is not user-provided and window_type==GST_D3D11_WINDOW_NATIVE_TYPE_HWND
* allows user to retrieve internally created window handle
* for custom positionning
* for custom icons
* ...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5544 >
2023-10-24 16:32:36 +02:00
David Rosca
8aac08506a
va: Use vaMapBuffer2
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5467 >
2023-10-23 19:40:16 +00:00
Jordan Petridis
9f3b8c9366
vkwindow_xcb: Make the visible private field a guint
...
This field is used to store gbooleans (which are ints) but if it's
a :1 bit depth assigning ints to it changes it's value as the only
valid values are -1 and 0.
Make it a guint instead so the cast would be correct.
```
../subprojects/gst-plugins-bad/gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.c:151:25: error:
implicit truncation from 'int' to a one-bit wide bit-field changes value from 1 to -1
[-Werror,-Wsingle-bit-bitfield-constant-conversion]
window_xcb->visible = TRUE;
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5432 >
2023-10-23 10:43:52 +05:30
Tim-Philipp Müller
654f3370a0
meson: Bump GLib requirement to >= 2.64
...
This includes fixes to make GstBus watches non-racy.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2126 >
2023-10-22 10:48:12 +01:00
Jordan Petridis
88e6dd0555
ci: switch the Fedora base image to f34
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1060 >
2023-10-22 05:23:28 +03:00
Jordan Petridis
0bc353085f
svthevcenc: Fix potential use of unitialized variable
...
In gst_svthevc_enc_propose_allocation if we don't get info from
the caps, we'd goto done, which could potentially try to unref
and unitialized pool variable.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5476 >
2023-10-21 20:08:59 +00:00
Piotr Brzeziński
e79b308f82
vtdec: Fix deadlock when attempting to negotiate
...
This was wrongly calling the base class method, which unnecessairly took the stream lock, already taken by
handle_frame(). The drain() call in negotiate() would then wait for the output loop to pause, while that loop
is stuck waiting to take the stream lock, thus causing a deadlock.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5521 >
2023-10-20 13:50:16 +02:00
Nirbheek Chauhan
0a29654d7b
svtav1enc: Don't segfault on not-negotiated
...
Don't drain on finish if we didn't configure the encoder.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5517 >
2023-10-20 12:54:44 +05:30
Olivier Crête
d0b587eb15
onnx: Remove enums file
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4916 >
2023-10-20 00:33:29 +00:00
Olivier Crête
a225755489
onnx: Remove unnecessary tensorid class
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4916 >
2023-10-20 00:33:29 +00:00
Olivier Crête
62f292ac73
onnx: Update to build against 1.16.1
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4916 >
2023-10-20 00:33:29 +00:00
Aaron Boxer
1ff585233a
onnx: add gstonnxinference element
...
This element refactors functionality from gstonnxinference element,
namely separating out the ONNX inference from the subsequent analysis.
The new element runs an ONNX model on each video frame, and then
attaches a TensorMeta meta with the output tensor data. This tensor data
will then be consumed by downstream elements such as gstobjectdetector.
At the moment, a provisional TensorMeta is used just in the ONNX
plugin, but in future this will upgraded to a GStreamer API for other
plugins to consume.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4916 >
2023-10-20 00:33:29 +00:00
Jan Alexander Steffens (heftig)
6053dd0d1b
tsmux: Fix default get_es_descrs_func
...
`tsmux_stream_default_get_es_descrs` is missing the `user_data`
parameter and shouldn't be cast to `TsMuxStreamGetESDescriptorsFunc`.
Prefer not casting at all to make sure we don't miss such an issue.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5496 >
2023-10-19 22:34:28 +00:00
Jan Alexander Steffens (heftig)
2d72008361
tsmux: Fix default new_stream_func
...
`tsmux_stream_new` is missing the `user_data` parameter and shouldn't be
cast to `TsMuxNewStreamFunc`.
Prefer not casting at all to make sure we don't miss such an issue.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5496 >
2023-10-19 22:34:28 +00:00
Jan Alexander Steffens (heftig)
5bac956b58
tsmux: Add missing include
...
We need `GstMpegtsPMTStream` here.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5496 >
2023-10-19 22:34:28 +00:00
Jan Alexander Steffens (heftig)
db88612853
tsmux: Simplify tsmux_section_write_packet
...
- Don't try to make the parameters match `GHFunc`. Use a dedicated
callback for `g_hash_table_foreach`.
- Don't try to be clever with buffer memories. We're allocating a full
packet anyway, might as well memcpy and save on a lot of complexity.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5496 >
2023-10-19 22:34:28 +00:00
Jan Alexander Steffens (heftig)
950789f61b
tsmux: tsmux_packet_out should always consume its buffer
...
Consuming the buffer only when successful is an antipattern and easily
leads to leaks.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5496 >
2023-10-19 22:34:28 +00:00
Jan Alexander Steffens (heftig)
55658ad166
tsmux: Don't memset in pad_stream when writing a PCR packet
...
tsmux_write_ts_header will write a stuffing adaptation field, so we
don't need to prefill the buffer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5496 >
2023-10-19 22:34:28 +00:00
Jan Alexander Steffens (heftig)
2dbd89b036
tsmux: Move out parameters of tsmux_write_ts_header
...
Move them to the end of the parameter list and also allow passing NULLs
to ignore the payload information, but assert that the payload length is
zero in this case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5496 >
2023-10-19 22:34:27 +00:00
Jan Alexander Steffens (heftig)
5128975a36
tsmux: Fix two more uses of gst_buffer_map
...
The buffers should be used for writing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5496 >
2023-10-19 22:34:27 +00:00
Nirbheek Chauhan
fd4828bafe
meson: Add a top-level option to enable webrtc
...
There are a bunch of plugins that you need for webrtc support, and
it's not obvious at all to users which those are.
With this commit, srtp, sctp and dtls options will be auto-enabled if
the webrtc option is enabled.
Requires meson 1.1
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5505 >
2023-10-19 06:38:45 +00:00
Nicolas Dufresne
41f478e97d
v4l2codecs: h265: Fix entry_point_offsets array leak
...
This array was being leaked.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5499 >
2023-10-17 15:06:26 -04:00
Detlev Casanova
5f9b24e3ba
codecs: h265: Do not free slice header before using it
...
The v4l2codecs H.265 decoder uses the
GstH265SliceHdr::entry_point_offset_minus1 array so make sure that it is not
freed before decoding the frame.
Before this patch, some H.265 input would segfault in
gst_v4l2_codec_h265_dec_fill_slice_params() when executing the line:
guint32 entry_point_offset = slice_hdr->entry_point_offset_minus1[i] + 1;
Make sure that the array is not freed before using it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5499 >
2023-10-17 15:06:10 -04:00
Seungha Yang
269ab85881
d3d11converter: Fix deadlock on taking property mutex
...
SRWLOCK should be zero initialized, but since we changed the private
struct to C++, use C++ mutex instead.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5498 >
2023-10-17 12:50:55 +00:00
Seungha Yang
65aa1b8faa
d3d11converter: Create ID3D11Buffer with initial data
...
... and remove unnecessary device lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5492 >
2023-10-17 10:48:49 +00:00
Seungha Yang
4e3d87edf5
d3d11converter: Don't set unnecessary constant buffer
...
Skip PSSetConstantBuffers() if it's not used by pixel shader
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5492 >
2023-10-17 10:48:49 +00:00
Diego Nieto
e290555367
mpegtsdemux: Fix comment about the jitter description
...
According to the information provided below, the Jitter (J) is
defined by a network delay (D) + a noise(i)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5494 >
2023-10-17 08:22:41 +00:00
Jan Alexander Steffens (heftig)
8a7d0efd96
tsmux: Fix error handling in pad_stream
...
Don't leak the map or the buffer if we encounter an error.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5490 >
2023-10-16 15:46:00 +02:00
Jan Alexander Steffens (heftig)
b1810d83bc
tsmux: Fill padding packets with stuffing bytes
...
Instead of leaving it uncleared, emitting probably old packet data but
potentially also random or sensitive application data.
Also fix the mapping mode.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5490 >
2023-10-16 15:46:00 +02:00
Seungha Yang
e2790d635c
d3d11screencapturesrc: Fix HWND capture mode
...
Use per-monitor-aware context to cover different DPI settings per
monitor
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2425
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5485 >
2023-10-16 01:02:36 +09:00
Seungha Yang
66bb9ee866
d3d11converter: Update shader code to make 4_0_level_9_1 compatible
...
4_0_level_9_1 target requires float4 SV_TARGET
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5483 >
2023-10-15 19:02:24 +09:00
Seungha Yang
a35c4fd5c5
d3d11converter: Fix 10/12bits planar output
...
Simple division can result in 10/12bits overflow.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5483 >
2023-10-15 01:47:29 +09:00
Seungha Yang
5ea1f8a548
d3d11converter: Print calculated matrix for debugging
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5483 >
2023-10-15 00:27:27 +09:00
Seungha Yang
ba02e94dde
d3d11converter: Calculate gamma LUT only once
...
Reuse calculated gamma lookup table and use immutable 1D texture
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5482 >
2023-10-14 13:37:08 +00:00
Seungha Yang
6f8c474293
d3d11converter: Remove unused variable
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5482 >
2023-10-14 13:37:08 +00:00
Seungha Yang
26e8bd1cc2
docs: Update Windows plugin docs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5481 >
2023-10-14 12:32:46 +00:00
Seungha Yang
347dd37225
dxva: Build gir and remove SDK header dependency
...
Build gir for documentation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5481 >
2023-10-14 12:32:46 +00:00
Seungha Yang
c5d60cee01
d3d12decoder: Hide non-default device from docs
...
... and add since marker
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5481 >
2023-10-14 12:32:46 +00:00
Seungha Yang
8a35c8a2a5
d3d11compositor: Fix typo in property description
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5481 >
2023-10-14 12:32:46 +00:00
Seungha Yang
0a05ba3f62
nvencoder: Add support for new preset/tune/multi-pass options
...
Adding new P1 ~ P7 presets and deprecate old preset values.
Also adding tune and multi-pass properties.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5428 >
2023-10-14 11:03:40 +00:00
Mart Raudsepp
bcc0885239
bs2b: Add missing space in plugin description
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5477 >
2023-10-13 09:04:14 +00:00
Mart Raudsepp
6c0e5ca689
colormanagement: Fix typo in pipeline example
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5478 >
2023-10-13 10:04:39 +03:00
Rahul T R
6fbe4d55c4
kmssink: Add TIDSS auto-detection
...
Add Texas Instruments TIDSS display controller into list of
auto-detected modules.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5469 >
2023-10-12 18:25:50 +00:00
Seungha Yang
ed29c23e86
d3d12, dwrite, va: Fix various msys2 build error/warning
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5454 >
2023-10-12 10:53:58 +00:00
Mengkejiergeli Ba
c14f4cda0c
msdkvpp: Use filter flag to handle passthrough for tone mapping
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5449 >
2023-10-12 05:02:37 +00:00
Seungha Yang
c2ed8759c8
d3d11videosink: Don't use DXGI_ALPHA_MODE_PREMULTIPLIED for HWND swapchain
...
It's allowed only for a swapchain type which does composition
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5464 >
2023-10-11 22:22:56 +00:00
Seungha Yang
7b564619cf
d3d11videosink: Fix rendering with initial fullscreen state
...
Change fullscreen mode once the swapchain is fully configured
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5462 >
2023-10-11 21:39:11 +00:00
Seungha Yang
15248d8b84
d3d11videosink: Fix toggling between fullscreen and maximized
...
Use GetWindowPlacement() and SetWindowPlacement() APIs
to remember and restore window status, such as maximized, position,
restore position, etc.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3016
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5462 >
2023-10-11 21:39:11 +00:00
Seungha Yang
f52ecb9607
d3d11converter: Add support for HLSL precompile and bytecode caching
...
Precompile pixel shaders for simple conversion path
(without gamma/primaries conversion) in case of MSVC build.
Even if runtime compile is required (cross-compiled or complex conversion
path), do it only once and reuse the compiled bytecode.
This precompile/caching can save about 95% of time taken by
gst_d3d11_converter_new() call.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3004
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5457 >
2023-10-11 18:40:46 +00:00