Alexander Slobodeniuk
8e0046a738
tests/d3d11: add concurrency test for gstd3d11device
...
We suspect that it's not thread safe to just create and
destroy the device from any thread, particularly because
of D3D11CreateDevice, that is not documented as thread-safe.
While D3D11CreateDevice is usually protected from outside
by the gst_d3d11_ensure_element_data, it still can cross
with the Release() method of another device.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6686 >
2024-04-20 11:22:41 +00:00
Elliot Chen
13e17b9149
gstplay: query duration again if previous query failed
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6668 >
2024-04-19 20:49:03 +00:00
Seungha Yang
5179cbccfa
d3d12testsrc: Use shared 11on12 device
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6697 >
2024-04-20 04:16:48 +09:00
Seungha Yang
045c9ac6b9
dwrite: Use shared 11on12 device
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6697 >
2024-04-20 04:16:48 +09:00
Seungha Yang
cd97275a19
d3d12device: Hold d3d11on12 device to be shared
...
d3d11on12 device seems to be occupying a bit of GPU memory
Hold the instance in GstD3D12Device so that it can be shared
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6697 >
2024-04-20 04:16:41 +09:00
Seungha Yang
8e4fe98361
d3d12videosink: Handle mouse double click and modifier
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6693 >
2024-04-19 16:11:30 +00:00
Elliot Chen
824c70d35a
subparse: forward seek event first and return if succeeded
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4889 >
2024-04-19 15:24:36 +00:00
Seungha Yang
dabce9635d
d3d12videosink: Disconnect window's signal on dispose
...
Same as the commit of 7b69d1758f
but for d3d12videosink.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6692 >
2024-04-19 21:25:06 +09:00
Seungha Yang
6659bd6362
d3d12videosink: Handle external HWND's mouse/keyboard events
...
OS will not propagate the event to child HWND if it's handled by
the parent. Thus, navigation event should be handled by parent HWND's
event handler.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6692 >
2024-04-19 21:24:52 +09:00
Edward Hervey
a032c1e1bd
ges-command-line-formatter: Handle transitions
...
Avoids getting a noisy g_warning
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6683 >
2024-04-19 08:03:48 +00:00
Edward Hervey
37b60e5354
ges-timeline-tree: Fix debug statement
...
Was printing out garbage in the logs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6683 >
2024-04-19 08:03:48 +00:00
Sebastian Dröge
d42ee6e48c
vavp9enc: Preserve PTS and other frame metadata
...
See also https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4150
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6680 >
2024-04-19 07:18:35 +00:00
Seungha Yang
ba443e7a64
webview2: Handle double click and modifier
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6491 >
2024-04-18 20:19:38 +00:00
Seungha Yang
e0def6b355
d3d11videosink: Handle double click and modifier
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6491 >
2024-04-18 20:19:38 +00:00
Seungha Yang
e1910d2be1
navigation: Define mouse double click event
...
Windows and UI toolkits define mouse double click events
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6491 >
2024-04-18 20:19:38 +00:00
Hou Qi
4dfdaf67db
waylandsink: config buffer pool with query size when propose_allocation
...
If propose_allocation comes before set_caps, self->video_info
has not been extracted from caps and self->video_info.size is 0.
It causes buffer pool fail to set config . So need to use info
size got from query instead when propose_allocation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6666 >
2024-04-18 18:34:30 +00:00
Sebastian Dröge
750d53d7e0
rsvgdec: Remove unused GObject::finalize implementation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6613 >
2024-04-18 17:45:43 +00:00
L. E. Segovia
b8db473955
rsvgdec: Fix uses of librsvg functions deprecated since 2.52
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6613 >
2024-04-18 17:45:43 +00:00
Sebastian Dröge
5d876ff774
rsvgdec: Negotiate resolution with downstream and scale accordingly
...
Prefer the resolution given by the input but if downstream request a
specific resolution then scale to this without regards to the aspect
ratio.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1538
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6613 >
2024-04-18 17:45:43 +00:00
Philipp Zabel
46a41667a3
v4l2bufferpool: Ensure freshly created buffers are not marked as queued
...
Otherwise, if we run in to the copy case, this can cause these
groups to stay around with queued flag set, but never actually
queued, until gst_v4l2_allocator_flush() is called, which then
erroneously frees the associated memories, causing the release
function to decrement the allocator refcount where it was never
incremented, resulting in early allocator disposal, and either
deadlock or use after free.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6552 >
2024-04-18 16:42:43 +00:00
Edward Hervey
f33ce4fe8b
encodebin: Fix pad removal for encodebin vs encodebin2
...
Clarify the fact that `encodebasebin->src_pad` is set when using a static source
pad (`encodebin`) and when not set it's dynamically added source
pads (`encodebin2`).
Fixes usage of encodebin2 when profiles are updated
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6667 >
2024-04-18 09:11:58 +00:00
Nicolas Dufresne
e34f765a7e
v4l2codecs: Don't unref allocation query caps
...
The caps obtained from parsing the allocation query is borrowed and
should not be unreffed. This fixes criticals assertion introduced in
1.24.1.
(gst-launch-1.0:242): GStreamer-CRITICAL **: 19:48:02.667:
gst_mini_object_unref: assertion 'GST_MINI_OBJECT_REFCOUNT_VALUE (mini_object) > 0' failed
Fixes: 5189e8b956
("v4l2codecs: decoders: Add DMA_DRM caps support")
Closes #3462
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6679 >
2024-04-18 06:13:17 +00:00
Thibault Saunier
a342d14ba9
ges: Add support for sources reverse playback
...
It introduces a `reverse` property at the `nlesource` level which will
basically reverse playback of the clip.
We guarantee that outside that clip, the data flow looks like it was
playing forward as we add an 'identity' element with `single-segment=true`.
This start making use of the newly introduced concept of
`CHILD_PROP_FLAG_SET_ON_ALL_INSTANCES` as it is natural that
doing `source_clip.set_child_property("reverse", True)` will make
the whole clip go reverse, meaning that all the GESSource children
properties will be set. To set an individual source "reverse" child
property as the desired effect.
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-editing-services/-/issues/24
Depends on: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/451
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/918 >
2024-04-18 00:19:31 +00:00
Thibault Saunier
526f00b07f
ges: test-clip: Fix setting children asset ids
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/918 >
2024-04-18 00:19:31 +00:00
Thibault Saunier
388ad9e574
validate: Add an action to group containers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/918 >
2024-04-18 00:19:31 +00:00
Thibault Saunier
38d60c9f43
ges: Also track children props 'duplicates' in TimelineElement
...
We used to only track the first one but this was wrong, so we start
tracking all the children properties here, adapting the test which
was already thought for this to be implemented.
At the same time add some flags to determine how children properties
need to be handled adding a mode that means that all duplicated
children props will be set together when the user sets that particular
child property. This is going to be tested in a following commit.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/918 >
2024-04-18 00:19:31 +00:00
Thibault Saunier
9b43892f6e
ges: Add simple backward playback test
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/918 >
2024-04-18 00:19:31 +00:00
Thibault Saunier
47029ca9de
ges: tools: Fix printing validate action types
...
We were not taking into account some arguments could have been eaten
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/918 >
2024-04-18 00:19:31 +00:00
Mengkejiergeli Ba
49dee23e65
msdk: Add main-422-12 profile to hevc
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6591 >
2024-04-17 19:31:09 +00:00
Philippe Normand
83b1feb4f8
debug-viewer: Fix plugin loading machinery
...
The previous code was failing at least with Python 3.11 and Python 3.12.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6659 >
2024-04-17 16:24:15 +00:00
Edward Hervey
a2254a4968
ges-launcher: Fix for forcing container profiles
...
If the input profile doesn't have a container, it's fine since we are overriding
it. Just add the elementary stream to the target container profile
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6674 >
2024-04-17 16:07:47 +02:00
Jan Schmidt
26acd70c74
dvbsubenc: fixed some memory leaks and a crash
...
Fix leaks of internal GstBuffers, and a crash if subtitle segments end
up empty.
Based on a patch by Jurijs Satcs <jurijs.satcs@veset.tv>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6661 >
2024-04-17 11:37:49 +00:00
Xavier Claessens
686f74e4a4
format: Allow GST_AUDIO/VIDEO_FORMAT_UNKNOWN in _to_string() function
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6630 >
2024-04-17 01:19:58 +00:00
Alexander Slobodeniuk
b46383bf5e
d3d11converter: fix documentation for converter_new ()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6665 >
2024-04-16 23:30:51 +02:00
Loïc Le Page
cbc58c0483
gst-validate: add formatting for GstAudioMeta
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6461 >
2024-04-16 15:33:42 +00:00
Qian Hu (胡骞)
8d003f00e9
v4l2: add multiplane y42b(yuv422m)
...
for some jpg file, mediatek v4l2 jpeg decoder
hardware produce multi plane YUV 4:2:2 data
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6617 >
2024-04-16 09:03:47 +00:00
F. Duncanh
ac40e6b592
ximagesink: initialize mask for XISelectEvents
...
Fixes #3470
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6631 >
2024-04-16 00:13:43 -04:00
Tim-Philipp Müller
8564118d2a
ci: tag fedora amd64 docker job as placeholder job
...
It finishes fairly quickly in most cases and even if it
needs to rebuild the image it doesn't use a lot of cpu
resources.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6646 >
2024-04-15 23:29:13 +00:00
Hou Qi
105d232fde
v4l2bufferpool: queue back the buffer flagged LAST but empty
...
Some decoder drivers need to wait enough capture buffers before
starting to decode. But the dequeued buffer flag LAST but empty
has no chance to queue back to driver, which makes decode hang
after seek. So need to queue back such kind of buffer to driver.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6579 >
2024-04-15 18:07:17 +00:00
Philipp Zabel
e1f5bacf8d
v4l2: bufferpool: Drop writable check on output pool process
...
Output buffers don't have to be writable. Accepting read-only buffers
from the V4L2 buffer pool allows upstream elements to write directly
into the V4L2 buffers without triggering a CPU copy into a new buffer
from the same V4L2 buffer pool every time.
Tested with the vivid output device:
GST_DEBUG=GST_PERFORMANCE:7 gst-launch-1.0 videotestsrc ! v4l2sink device=/dev/video5
With this change, gst_v4l2_buffer_pool_dqbuf() must be allowed to not
resize read-only memories of output buffers.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6572 >
2024-04-15 17:11:00 +00:00
Seungha Yang
a7fe79c4de
mediafoundation: Fix device enumeration
...
Do not stop device enumerate even if a device could not be opened.
Otherwise the other devices listed after the failed device will not be
reported by device provider
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3460
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6598 >
2024-04-15 14:52:32 +00:00
Tim-Philipp Müller
60ac6d0883
tests: fix possible libscpp build failure in gst-plugins-bad
...
../subprojects/gst-plugins-bad/tests/check/libs/gstlibscpp.cc:41:
fatal error: gst/mpegts/gstmpegts-enumtypes.h: No such file or directory
Could only pass the needed deps to the libscpp test, but gets
messier to maintain, so let's at it for consistency.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6643 >
2024-04-15 11:41:51 +00:00
Philippe Normand
97d4c56c8f
tests: webrtcbin: Fix repaired-stream-id handling in simulcast test
...
The test was attempting to add the same stream-id extension twice, probably some
unfinished copy/paste.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6615 >
2024-04-15 08:43:09 +00:00
Seungha Yang
15434ce51d
dwrite: D3D12 integration
...
Adding d3d12 backend text renderer/blender by using d3d11on12 interop.
And subclassing renderer object per backend (i.e., d3d11, d3d12, and bitmap)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6620 >
2024-04-14 09:55:41 +00:00
Seungha Yang
f6ec4e6256
d3d12overlaycompositor: Add support for d3d12 memory
...
Don't allocate d3d12 texture if overlay is d3d12 memory already
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6620 >
2024-04-14 09:55:41 +00:00
Seungha Yang
13d892d336
d3d12: Move gst_d3d12_buffer_copy_into method to library
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6620 >
2024-04-14 09:55:41 +00:00
Seungha Yang
b242f5d2ec
d3d12converter: Port to GstD3D12Frame
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6620 >
2024-04-14 09:55:41 +00:00
Seungha Yang
cb670f8110
d3d12: Add GstD3D12Frame struct and helper method
...
Adding GstD3D12Frame struct with map, unmap, and copy methods.
This new struct is equivalent to GstVideoFrame but gst_d3d12_frame_map()
method will extract D3D12 specific resource handles from memory.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6620 >
2024-04-14 09:55:41 +00:00
Seungha Yang
8b88fcd18b
d3d12memory: Implement copy method
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6620 >
2024-04-14 09:55:41 +00:00
Nirbheek Chauhan
073d8fc52a
meson: Don't link to python for the gi overrides module
...
We only need to link to python directly for the plugin:
https://github.com/mesonbuild/meson/issues/7712#issuecomment-689357908
https://github.com/Homebrew/homebrew-core/pull/165176#issuecomment-2051835257
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6622 >
2024-04-13 22:24:32 +00:00