Jordan Petridis
8339384d3a
jack: return TRUE during init when failing to dlopen
...
If we return FALSE, that means the plugin won't be tried again,
even if jack is available afterwards.
Followup to 689dbd1fbe
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4507 >
2023-04-28 14:57:38 +00:00
Seungha Yang
c98ad6f249
wasapi2: Allows process loopback capture on Windows 10
...
As per MS documentation[1], it requires Windows 10 Build 20348
but it seems to be supported by old versions too
[1] https://learn.microsoft.com/en-us/windows/win32/api/audioclientactivationparams/
ns-audioclientactivationparams-audioclient_process_loopback_params
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2524
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4505 >
2023-04-28 14:11:16 +00:00
Sebastian Dröge
3044b0992f
Revert "splitmuxsink: Avoid assertion when WAITING_GOP_COLLECT on reference context"
...
This reverts commit f29c19be58
. If this is
called for the reference context then we would run into an infinite
loop, which is not really better than an assertion.
By fixing up DTS to never be ahead of the PTS in the previous commit
this situation should be impossible to hit now.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4498 >
2023-04-28 11:00:19 +00:00
Sebastian Dröge
de907c225b
splitmuxsink: Catch invalid DTS to avoid running into problems later
...
DTS > PTS makes no sense, so we clamp DTS to the PTS. Also if there's a
PTS but no DTS, then assume that PTS=DTS to make sure we're not working
with a much older DTS.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4498 >
2023-04-28 11:00:19 +00:00
Nirbheek Chauhan
479f0175b5
meson: Add feature options for optional va deps libdrm and gudev
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4428 >
2023-04-28 15:22:31 +05:30
Nirbheek Chauhan
55ee0635d3
meson: Fix libdrm and vaapi configure checks
...
We do not need fallback: for libdrm checks because the wrap file
already has a [provide] section.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4428 >
2023-04-28 15:21:10 +05:30
Víctor Manuel Jáquez Leal
3a09e700e6
vkswapper: missing image barrier after vkCmdClearColorImage
...
After clear color image command the swapper image needs to add a barrier before
copying the buffer to display on it. Otherwise a potential synchronization
problem might occur.
Fixes #2403
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4501 >
2023-04-28 00:59:57 +00:00
Víctor Manuel Jáquez Leal
f12e052e54
vulkan: use VK_QUEUE_FAMILY_IGNORED in barriers
...
Instead of using the valid queue family 0 (zero) if there aren't queue transfers
there's no need to specify a not validated queue family, but just
VK_QUEUE_FAMILY_IGNORED.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4501 >
2023-04-28 00:59:57 +00:00
Seungha Yang
4ed3c46de7
cudamemory: Fix for semi planar YUV memory size decision
...
UV plan of the semi planar format requires only half of Y plane size
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4502 >
2023-04-27 20:55:53 +00:00
Seungha Yang
fafecf9cb3
sample: Add gst_clear_sample() method
...
Similar to other GstMiniObject clear helper methods like
gst_clear_buffer().
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4473 >
2023-04-28 04:38:30 +09:00
Seungha Yang
b7083ad242
sample: Fix typo around gst_sample_copy() method
...
It's sample, not buffer
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4473 >
2023-04-27 18:35:41 +00:00
Sebastian Dröge
ef89bac181
rtspsrc: Fix handling of *
control path
...
Regression introduced by 7f9d689572
.
Thanks to Tristan Matthews for reporting this.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4497 >
2023-04-27 13:47:56 +00:00
Edward Hervey
0db6149880
decodebin3: Handle streams without CAPS or TIME segment
...
decodebin3 will do its best to figure out whether a parsebin is required to
process the incoming stream.
The problem is that for push-based stream it could happen that the stream would
not provide any caps, resulting in nothing being linked internally.
Furthermore, there is the possibility that a stream *with* caps would not be
using a TIME segment, which is required for multiqueue to properly work.
In order to fix those two issues, we force the usage of parsebin on push-based
streams:
* When the pad is linked, if upstream can't provide any caps
* When we get a non-TIME segment
Fixes #2521
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4492 >
2023-04-27 12:50:21 +00:00
Stéphane Cerveau
61416bc532
pbutils: add video/x-ivf to descriptions
...
Add missing description for video/x-ivf spotted
with gst-discoverer-1.0
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4248 >
2023-04-27 06:45:27 +00:00
Stéphane Cerveau
f0d61ac8b0
libav: set the frame rate values in ffmpeg stream context
...
To avoid a default value to be used in mux.c+304, give the
frame rate detected from the caps.
Fix IVF header.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4248 >
2023-04-27 06:45:26 +00:00
Stéphane Cerveau
6f21ef9d3a
libav: add av1 to gst_ffmpeg_caps_to_codecid
...
Restrict the stream-format to obu-stream
and the alignment to "tu" and "frame" as "obu"
is not properly supported by libav.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4248 >
2023-04-27 06:45:26 +00:00
Daniel Moberg
4c1de25e9d
webrtc: do not tear down data channel before data is flushed
...
Current implementation can in some cases detect
that all data is sent but in reality it is not,
leading to a push to an unlinked pad.
This is a race between the probe used to track data sent and a
call to close.
This patch sends an EOS before starting the close procedure
and then waits for the EOS event to come through to the
src pad before commencing with tear down.
This ensures that any queued data before EOS is flushed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4462 >
2023-04-27 00:40:18 +00:00
Matthew Waters
262be30b6f
ccutils: generate valid padding in field 1 when needing to generate field 2
...
Fixes CC in Field 2 but not in Field 1 errors.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4490 >
2023-04-26 20:43:13 +00:00
Seungha Yang
4710f45e65
d3d11videosink: Fix for ignored initial render rectangle
...
Application can set target render rect before internal HWND
configuration
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2518
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4480 >
2023-04-26 19:39:09 +00:00
Sebastian Szczepaniak
277a9f0cef
qtdemux: Add support for cenc sample grouping
...
Co-authored-by: Xabier Rodriguez Calvar <calvaris@igalia.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3551 >
2023-04-26 18:51:56 +00:00
Guillaume Desmottes
0d254f59b8
core: pad: fully log event being pushed
...
It's useful when debugging to check the details of the event being sent,
like the segment for example.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4493 >
2023-04-26 18:00:14 +00:00
Mathieu Duponchelle
781a228d3a
docs: update hotdoc theme to 0.15
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4488 >
2023-04-26 13:50:42 +02:00
Mathieu Duponchelle
3868771191
docs-index: de-hardcode toned row color
...
Instead use a bootstrap panel and let styling occur based on that,
making the index page work well with the dark theme.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4488 >
2023-04-26 13:50:21 +02:00
Thibault Saunier
9dda8050f2
validate: Add a way to avoid checking property value after setting it
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4485 >
2023-04-26 00:03:06 +00:00
Hou Qi
aed4d31e67
decodebin3: fix segment fault when print decoder log
...
Segment fault happens when cannot find decoder but try to print
decoder name. Need to check the decoder.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4461 >
2023-04-25 21:42:15 +08:00
Stéphane Cerveau
40bd8468af
bad: disable dtls test if openssl is not present
...
On MacOS with homebrew, the openssl library is not
properly detected with pkg-config.
So disable the test compilation if openssl
is not properly detected along with libcrypto.
libcrypto is detected but it uses the system one
which leads to the error:
your binary is not an allowed client of /usr/lib/libcrypto.dylib for
architecture x86_64
See more details from Apple:
https://developer.apple.com/forums/thread/124782
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4481 >
2023-04-25 10:01:57 +00:00
Yinhang Liu
35177b81b3
msdk: Fix segfault for OneVPL dispatcher + legacy MSDK runtime path
...
From the spec, the OneVPL dispatcher should be able to work with
legacy MSDK runtime:
https://www.intel.com/content/www/us/en/docs/onevpl/upgrade-from-msdk/2023-1/onevpl-hardware-support-details.html
Currently supported capabilities:
OneVPL dispatcher + OneVPL runtime: dynamic capability
MSDK dispatcher + MSDK runtime: static capability
MSDK dispatcher + OneVPL runtime: static capability
OneVPL dispatcher + legacy MSDK runtime: static capability
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2506
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4466 >
2023-04-25 08:09:29 +00:00
Yinhang Liu
e97b5ad355
msdk: Add NumFilters check for VPP description
...
When NumFilters is equal to 0, the function should return
immediately.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4466 >
2023-04-25 08:09:29 +00:00
Yinhang Liu
ca125bd304
msdk: Add return when creating caps fails for VPP
...
When creating caps fails, the function should return immediately
and should not continue to register the plugin.
This patch fixes the issue of "gst_mini_object_ref: assertion
'mini_object != NULL' failed" in
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2506
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4466 >
2023-04-25 08:09:29 +00:00
Eva Pace
692d4a3a16
webrtcbin: Fix trace log 'from' value
...
`webrtc->signaling_state` (from) and `new_signaling_state` (to) had the
same value when printed in a trace log. This commit adds a
`old_signaling_state` variable to hold the previous value, so that the
print statement works as intented.
Spotted by: Mustafa Asım REYHAN
Fixes #1802
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4362 >
2023-04-25 04:27:02 +00:00
Thibault Saunier
7aaf2b48ef
doc: Avoid shelling out to hotdoc to generate plugins config files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4479 >
2023-04-25 02:57:55 +00:00
Thibault Saunier
6e305a471f
meson: Add CameraBin and Va girs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4479 >
2023-04-25 02:57:55 +00:00
Stéphane Cerveau
cc81e961a0
applemedia: fix missing definition
...
Fix missing kCVPixelFormatType_64RGBALE definition
on Catalina for example
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4478 >
2023-04-24 17:05:03 +00:00
Jordan Petridis
791a068c58
build: appease clang warning
...
Clang complains about these variables being (possibly) unitialized, even
when they are assigned to NULL or proper value inside the macro.
Might as well initialize them to avoid the warning.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4281 >
2023-04-24 12:37:07 +00:00
Martin Nordholts
2fed3bf6c4
webrtc: Plug leaks of resolved ICE addresses
...
The addresses we get from `resolve_host_finish()` (via
`resolve_host_async()`, `resolve_host_main_cb()`, `on_resolve_host()`,
`g_resolver_lookup_by_name_finish()`) must be freed. Otherwise we leak
memory.
Leak found and confirmed fixed with GCC AddressSanitizer.
Change-Id: If32d24452d626234f01b253b77a7d6d16eac1cee
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4469 >
2023-04-24 06:23:30 +00:00
Thibault Saunier
b14e675a27
gir: Checkout all .gir files and check that they are updated on the CI
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3010 >
2023-04-22 09:32:32 -04:00
Guillaume Desmottes
d4a9106499
videoflip: check that stream actually changed when resetting
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4377 >
2023-04-22 14:03:16 +02:00
Guillaume Desmottes
7c4e36acfd
videoflip: reset orientation if not present in a tag update
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4377 >
2023-04-22 14:02:13 +02:00
Guillaume Desmottes
c0fa04fcaf
videoflip: handle tag list scopes
...
STREAM taglist can now overrides the orientation from the GLOBAL
taglist, but not the other way around.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4377 >
2023-04-22 14:02:13 +02:00
Guillaume Desmottes
96afec6253
videoflip: reset orientation on new stream
...
Fix the following use:
- upstream sends a video with a rotation tag, say 90°
- upstream switches to another video without rotation
- the second video was still rotated by videoflip
Fix this by resetting the orientation when receiving STREAM_START.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4377 >
2023-04-22 14:02:13 +02:00
Guillaume Desmottes
61a5da1014
videoflip: add test rotating from tags
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4377 >
2023-04-22 14:02:13 +02:00
Sebastian Dröge
6c429a5891
audiotestsrc: Initialize all samples in wave=ticks mode
...
Previously samples were only initialized in 2 out of 3 cases.
Probably fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/337
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4475 >
2023-04-22 08:44:02 +00:00
Ruben Gonzalez
a7f4d5716a
gst: Delete inoperative ARG_PLUGIN_SPEW
...
Logic related with the option was deleted 20 years ago in commit:
086de421dc
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4452 >
2023-04-21 12:35:39 +00:00
Seungha Yang
3811894d9c
d3d11overlay: Enhance documentation and fix typo
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4455 >
2023-04-20 18:05:27 +00:00
Seungha Yang
c7c380abb1
d3d11memory: Remove redundant bind flag validation
...
It has been validated outside of each function already
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4455 >
2023-04-20 18:05:27 +00:00
Patricia Muscalu
c6bb20bba8
playsink: Fix volume leak
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4459 >
2023-04-20 14:21:15 +00:00
Jordan Petridis
63ccf85049
sctp: Avoid old-style function defintions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4457 >
2023-04-20 09:38:59 +00:00
Jordan Petridis
689dbd1fbe
jack: Dynamically load libjack at runtime instead of linking
...
In order to provide build and provide the jack plugin with the prebuilt
binaries of gstreamer we distribute with releases, we can not depend
on an external dependency nor can we ship plugins linking to libraries
we don't provide.
We can also not provide jack ourselves, as it would likely cause a
mismatch with the jack daemon on the host.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4350 >
2023-04-20 11:10:15 +03:00
Nicolas Dufresne
e709e2d97c
meson: Add a wrap file for libgudev
...
And allow fallback to it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4447 >
2023-04-19 22:47:19 +00:00
U. Artie Eoff
bab573b59c
gst-libav: map P010, VUYA, Y410, P012, Y212, and Y412
...
P010 has been around for a long time.
VUYX introduced in:
cc5a5c9860
P012, Y212, XV30 (Y410), and XV36 (Y412) introduced in:
d75c4693fe
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4454 >
2023-04-19 16:47:17 -04:00
Edward Hervey
ab458eae56
pcapparse: Add support for Linux "cooked" capture encapsulation v2
...
See https://www.tcpdump.org/linktypes/LINKTYPE_LINUX_SLL2.html
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4451 >
2023-04-19 09:56:47 +02:00
Thibault Saunier
03ac969240
d3d11: Fix typo in interlace mode name in enum
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4414 >
2023-04-18 14:56:41 +00:00
Sebastian Dröge
6a0965cb8a
tsdemux: Set number of channels to 2 for dual mono Opus
...
Instead of leaving it at 0, which will then cause caps creation to fail.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4445 >
2023-04-18 14:56:44 +03:00
Sebastian Dröge
63a4d8bb54
ges: base-xml-formatter: Don't pass non-GObject pointers to GST_DEBUG_OBJECT
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4443 >
2023-04-18 10:03:46 +00:00
badcel
acb913a878
base: adapter: Explicitly mark size parameter as input
...
The generated gir file marks the size parameter as "out" by default.
This is wrong in the context of a caller allocated buffer with a given size.
Explicitly marking the size parameter as (in) fixes the issue.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4399 >
2023-04-18 08:41:46 +00:00
Guillaume Desmottes
901383771d
dash: mpdclient: fix divide by 0 if segment has no duration
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4436 >
2023-04-18 06:37:27 +00:00
Seungha Yang
53dc1b96e2
d3d11compositor: Reconfigure resource only when output caps is changed
...
GstD3D11Converter setup is heavy operation since it requires
shader compile, GPU resource allocation, some math, mutex, etc.
We can avoid it if negotiated caps is not changed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4439 >
2023-04-17 17:30:26 +00:00
Seungha Yang
52cb42f4bb
deinterlace: Add support for high bitdepth planar YUV formats
...
Add C implementation for high bitdepth planar YUV formats
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1476 >
2023-04-18 01:32:25 +09:00
Seungha Yang
aabe9136f6
deinterlace: yadif: Prettify indentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1476 >
2023-04-18 01:25:45 +09:00
Seungha Yang
c883ab593c
d3d11: Add d3d11overlay element
...
Similar to cairooverlay element but this element emits "draw"
signal with Direct3D11 render target view, so that an application
can render/overlay/blend on the given render target view
without any copy operation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4415 >
2023-04-17 23:22:57 +09:00
Seungha Yang
3d6a609590
d3d11compositor: Add "ignore-inactive-pads" property
...
Same as compositor element
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4438 >
2023-04-17 13:19:15 +00:00
Seungha Yang
7eefdd1b95
d3d11compositor: Skip zero alpha input
...
Blending such input is a waste of resource since nothing will
be rendered
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4438 >
2023-04-17 13:19:15 +00:00
Sebastian Dröge
83106de7e7
video: timecode: Add support for framerates lower than 1fps
...
These are not explicitly defined but the existing calculations can be
extended to also cover that case by inverting them to avoid floating
point calculations.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2465
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4374 >
2023-04-17 10:26:11 +00:00
Edward Hervey
4c6f41a00a
qtdemux: Fix av1C parsing
...
This is a regression introduced by
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3882
The av1c codec configuration parsing would always fail due to an off-by-one
error, the content of an atom starting at offset 8 (i.e. the 9th byte) and not
9 (the 10th byte).
Also introduce a break in order to not get stray warnings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4433 >
2023-04-17 09:28:43 +02:00
Yinhang Liu
75af296b82
msdkvpp: Enable dynamic capability support
...
Enable dynamic capability support for msdkvpp. The gstmsdkvpp
element can create the sink caps and src caps dynamically for
different platforms.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:06 +00:00
Yinhang Liu
b1ebe93eb2
msdkvpp: Add function to dynamically create sink caps and src caps
...
We need to create the sink caps and src caps dynamically for different
platforms. By default, the vpp init function create static pad template
and the compatibility and flexibility of the platform are too poor.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:06 +00:00
Yinhang Liu
bfbde5ce22
msdkdec: Enable dynamic capability support
...
Enable dynamic capability support for msdkav1dec, msdkh264dec,
msdkh265dec, msdkmjpegdec, msdkmpeg2dec, msdkvc1dec, msdkvp8dec,
msdkvp9dec.
The gstmsdkdec elements can create the sink caps and src caps
dynamically for different platforms.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:06 +00:00
Yinhang Liu
aa59d9828f
msdkdec: Add function to dynamically create sink caps and src caps
...
We need to create the sink caps and src caps dynamically for different
platforms. By default, the dec init function create static pad template
and the compatibility and flexibility of the platform are too poor.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:06 +00:00
Yinhang Liu
a4fc1c5031
msdkenc: Add documented capabilities to expose "stable" caps
...
Although msdkenc supports dynamic caps, it still needs to expose
"stable" caps to users.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:06 +00:00
Yinhang Liu
da4b6f17cf
msdkenc: Support image formats in low power mode for sink caps
...
There are some special image formats in low power mode, these
image formats should be supported in sink caps.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:06 +00:00
Yinhang Liu
3cb9c34030
msdkenc: Remove static templates in format setting
...
The elements have supported dynamic capability query, and it is not
necessary to refer the static templates.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:06 +00:00
Yinhang Liu
30d3ce3a9e
msdkenc: Enable dynamic capability support
...
Enable dynamic capability support for msdkav1enc, msdkh264enc,
msdkh265enc, msdkmjpegenc, msdkvp9enc, msdkmpeg2enc.
The gstmsdkenc elements can create the sink caps and src caps
dynamically for different platforms.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:06 +00:00
Yinhang Liu
7aa0b29da8
msdk: Add function to specify string array parameters
...
Sometimes it is necessary to manually specify string parameters
of multiple options, such as format, interlace-mode, etc.
Add function to support this requirment.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:06 +00:00
Yinhang Liu
1f8d939559
msdkenc: Add function to dynamically create sink caps and src caps
...
We need to create the sink caps and src caps dynamically for different
platforms. By default, the enc init function create static pad template
and the compatibility and flexibility of the platform are too poor.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:05 +00:00
Yinhang Liu
3f47cdaee8
msdk: add function to get the format list
...
This static format list will be used to check the formats
supported by the platform.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:05 +00:00
Yinhang Liu
97e081c9d6
msdk: Register elements based on the codecs supported by the platform
...
By default, msdk plugin will register all encoders and decoders
on any platform, even unsupported encoders and decoders will be
registered. Dynamically register encoders and decoders besed on
the supported codecs on different platforms.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:05 +00:00
Yinhang Liu
f773752bd8
msdk: Add function to get the implementation description
...
Through the implementation description, we can dynamically obtain
the codec capabilities supported by the platform.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:05 +00:00
Yinhang Liu
34a812a0c0
msdk: Add functions to get data members from MsdkSession
...
When getting mfxImplDescription, these data members need to
be used.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:05 +00:00
Yinhang Liu
6242fca526
msdk: Create msdk context without job_type
...
The job_type is not necessary when creating a normal msdk
context. Make the APIs for creating context more flexible.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:05 +00:00
Yinhang Liu
dafb801a18
msdk: Move all _gst_caps_has_feature to gstmsdkcaps.c
...
_gst_caps_has_feature is used by all msdk elements, so
move it to gstmsdkcaps.c
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4177 >
2023-04-17 05:24:05 +00:00
Mathieu Duponchelle
9072424eb3
symbol_index: update with late additions
...
Those symbols were just marked as plugin API but existed already,
we accept that they don't have Since markers
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4408 >
2023-04-13 21:46:59 +00:00
Mathieu Duponchelle
be208b9f50
docs: mark GstVideoConvertScale as plugin API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4408 >
2023-04-13 21:46:59 +00:00
Mathieu Duponchelle
6c25caa572
docs: mark GstSRTSink and GstSRTSrc as plugin API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4408 >
2023-04-13 21:46:59 +00:00
Mathieu Duponchelle
6a27fe8955
docs: mark GstRTPMux as plugin API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4408 >
2023-04-13 21:46:59 +00:00
Mathieu Duponchelle
15102e2eef
docs: mark GstGLSinkBin as plugin API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4408 >
2023-04-13 21:46:59 +00:00
Nicolas Dufresne
2e76371666
v4l2: Fix use after free of fmtdesc part 2
...
Add missing code in merge commit e890e6e8d8
("v4l2: Fix use after free of fmtdesc"). The v4l2object code was
missing.
Related to https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4317
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4411 >
2023-04-13 13:54:32 -04:00
Nicolas Dufresne
e890e6e8d8
v4l2: Fix use after free of fmtdesc
...
The decoder needs to force another enumeration of the format. For
this it was clearing the v4l2object insternal list, leaving a fmtdesc
pointer pointing to freed memory. This patch clears the fmtdesc pointer
that has just been free. It also makes sure the probe function does not
use the cached formats list. The probe function will restore the current
fmtdesc pointer based on the currently configured pixelformat.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4317 >
2023-04-13 15:32:14 +00:00
Nicolas Dufresne
3a17200638
v4l2: videodec: Prefer acquired caps over anything downstream
...
As we don't have anything smart in the fixation process, we may endup with
a format that has a lower bitdepth, even if downstream can handle higher
depth. it is notably the case when negotiating with deinterlace, which places
is non-passthrough caps before its passthrough one. This makes the generic
fixation prefer the formats natively supported by deinterlace element over
the HW 10bit format. As some HW can downscale 10bit to 8bit, this can break
10bit decoding.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4317 >
2023-04-13 15:32:13 +00:00
Nicolas Dufresne
89854fd2f3
v4l2: videodec: Remove leading space in comment
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4317 >
2023-04-13 15:32:13 +00:00
Sebastian Dröge
6378ebbdcd
ptp-helper: Add a feature option for the PTP support
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4410 >
2023-04-13 12:43:25 +00:00
Sebastian Dröge
2e84603b02
ptp-helper: Convert various meson message() to warning()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4410 >
2023-04-13 12:43:25 +00:00
Sebastian Dröge
7cba04f2c6
ptp-helper: Don't check for a Rust compiler on unsupported platforms
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4410 >
2023-04-13 12:43:25 +00:00
Sebastian Dröge
b35d598003
ptp-helper: Check for the required Rust toolchain version via meson
...
If an older version is found that gives a more useful output than a
compiler error at a later time.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4410 >
2023-04-13 12:43:25 +00:00
Seungha Yang
acdf70e576
pluginloader-win32: Fix for pipe connection error
...
Don't error out on WAIT_IO_COMPLETION. It means queued APC job
was executed but the job may not be our callback.
For example, user or system might be able to schedule APC on
gst_init() thread or so.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4405 >
2023-04-13 07:08:09 +00:00
Tim-Philipp Müller
bbb0a30f32
docs: update old gstreamer-sdk media urls
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4406 >
2023-04-13 03:20:36 +00:00
Jan Alexander Steffens (heftig)
ac83e121a7
imagesequencesrc: Properly set default location
...
Noticed this because the generic_states test kept segfaulting at random.
GLibC 2.37 can crash when NULL is supplied as a format string.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4109 >
2023-04-13 01:55:23 +00:00
Sebastian Dröge
16ce61fb57
gst: tracer: Initialize tracing infrastructure even if the debug system is not compiled in
...
There is a separate #define for the tracing infrastructure.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2467
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4402 >
2023-04-13 01:14:18 +00:00
Seungha Yang
af86c4b80e
d3d11videosink: Remove pointless GetDC call
...
We don't use the Win32 device context handle at all.
Removing code which was copied from GL code blindly
in early d3d11 implementation stage a long time ago
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4407 >
2023-04-12 19:54:31 +00:00
Tim-Philipp Müller
b020d399cb
multifile: error out if no filename was set
...
Fixes #2483
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4404 >
2023-04-12 18:55:26 +00:00
Michael Olbrich
fe6b76c64e
srtpdec: fix "srtp-key" check
...
The original code was:
if (!gst_structure_get (s, "srtp-key", GST_TYPE_BUFFER, &buf, NULL) || !buf) {
goto error;
} else {
stream->key = buf;
}
So use "srtp-key" if it is set so a non NULL buffer. The condition was
incorrectly inverted in ad7ffe64a6
to:
if (gst_structure_get (s, "srtp-key", GST_TYPE_BUFFER, &buf, NULL) || !buf) {
stream->key = buf;
} ...
Fix the condition so it works as originally intended and avoid accessing
'buf' uninitialised.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4401 >
2023-04-12 18:16:21 +00:00