Edward Hervey
98cc3cc865
ci: Add playbin3 validate step
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4001 >
2023-03-29 16:32:21 +02:00
Bart Van Severen
65f953cd23
rtsp: gstrtspurl: gst_rtsp_url_get_request_uri: use rtsps scheme for tls transport methods
...
gst_rtsp_url_get_request_uri returns rtsp://... url when requested url is rtsps://, this is not
in accordance with https://www.rfc-editor.org/rfc/rfc7826.html#section-19.2 .
This also impedes setting up a rtsps session with a live555 rtsp server.
Don't expose other than rtsp and rtsps internal gstreamer rtsp url schemes
to avoid regression:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2412
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4294 >
2023-03-29 11:38:47 +00:00
Bart Van Severen
c2b3afd3dd
Revert "rtsp: gstrtspurl: gst_rtsp_url_get_request_uri: fix incorrect scheme for tls transport methods"
...
This reverts commit 024ef7659d
because it causes a regression:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2412
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4294 >
2023-03-29 11:38:47 +00:00
Erik Fröbrant
456bbad2dd
curlbasesink: error codes in transfer error details
...
There is currently no easy way for an application to distinguish between
different resource write errors being set in the curlbasesink.
Add curl status codes as error details on transfer failure.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4062 >
2023-03-29 10:03:36 +00:00
Erik Fröbrant
8f094a1cc8
curlhttpsink: HTTP code in transfer error details
...
There is currently no easy way for an application to distinguish between
different resource write errors being set in the curlhttpsink.
Add HTTP status code as error details on transfer failure.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4062 >
2023-03-29 10:03:35 +00:00
Juan Navarro
b41a5d3ccb
gstutils: Add category and object to most logging messages
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4291 >
2023-03-28 22:41:53 +00:00
Hugo Svirak
631c72b219
videorate: Fix incorrect drop value when drop_only is true
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4052 >
2023-03-27 19:56:55 +00:00
Sebastian Dröge
49c9f31803
datetime: Return G_MAXFLOAT instead of G_MAXDOUBLE for no timezone offset
...
Returning G_MAXDOUBLE from a function returning a float is not going to
work well and MSVC also correctly warns about this.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4264 >
2023-03-27 16:50:33 +00:00
Haihua Hu
8541d6b990
decodebin3: fix hang issue when remove failing stream
...
Need mark selection_update to true when update selection,
otherwise, pipeline will not handle this selection update
sometimes when this flag has been reset
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4277 >
2023-03-27 13:52:42 +00:00
Matthew Waters
58d1ab4618
vulkanswapper: correctly handle force-aspect-ratio=false
...
It was simply ignored so actually handle it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4278 >
2023-03-27 11:58:46 +00:00
Shengqi Yu
96a46e31c7
appsink: add propose_allocation support
...
Adding propose_allocation is to meet the requirement of Application to
request buffers. Application sometimes need to create buffer pool
and request buffers to maintain buffer management itself, and Gstreamer plugin
import Application's buffers to use. So, add propose_allocation in
appsink like waylandsink and kmssink etc.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4185 >
2023-03-27 12:34:16 +03:00
Tim-Philipp Müller
c798f01fae
debugqroverlay: fix string leak
...
g_string_free(.., FALSE) gives us ownership of the string
already, no need to duplicate that again with g_strdup(),
and doing so will leak the string returned by g_string_free()
here. Caught by compiler warnings in newer GLib versions.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4273 >
2023-03-27 07:37:11 +00:00
Tim-Philipp Müller
330836db8e
taglist, plugins: fix compiler warnings with GLib >= 2.76
...
Fix compiler warnings about not using the return value when
freeing the GString segment with g_string_free(.., FALSE):
ignoring return value of ‘g_string_free_and_steal’ declared with attribute ‘warn_unused_result’
which we get with newer GLib versions. These were all harmless.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4273 >
2023-03-27 07:37:11 +00:00
Tim-Philipp Müller
94abeb1888
gitlint: allow commas and spaces in commit message prefix
...
e.g. "foo, bar: did stuff" should be allowed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4273 >
2023-03-27 07:37:11 +00:00
Thibault Saunier
00ed40dbfd
validate: scenario: Add a vmethod to free GstValidateActionParameter-s
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4265 >
2023-03-27 01:25:43 +00:00
Sebastian Dröge
da198e59b2
av1enc: Use correct enum type with libaom >= 3
...
This fixes, among other things, a compiler warning with clang.
Also add static assertions that our own enum values match with the ones
from libaom.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4223 >
2023-03-25 07:12:53 +00:00
Stéphane Cerveau
f3dfe7b125
openjpegdec: allow multithread decoding only in subframe mode
...
To avoid mis-ordered frames, allow multithread decoding only in
subframe mode.
Fixes #1786
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3948 >
2023-03-25 06:03:02 +00:00
Eva Pace
0bcc141b5e
README: Fix typo in test section
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4267 >
2023-03-25 00:05:45 +00:00
Mathieu Duponchelle
e8c362ee34
cea608mux: advance segment->position when outputting
...
It is the responsibility of the subclass to advance segment->position if
it wants to rely on gst_aggregator_simple_get_next_time() for timeouts
in live mode.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4266 >
2023-03-24 21:17:58 +00:00
Tim-Philipp Müller
ba417b0e07
rtpjpegdepay: fix logic error when checking if an EOI is present
...
We wouldn't add the missing EOI marker if the frame ended with
either 0xFF NN or 0xNN D9.
Fixes #2407
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4256 >
2023-03-24 19:39:33 +00:00
Víctor Manuel Jáquez Leal
292d6cdbed
vaencoder: remove display reference in decode picture
...
Since it's possible to grab the VA display from the GstBuffer and
GstMemory, there's no need to keep a reference to it in
GstVaEncodePicture.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3066 >
2023-03-24 14:05:15 +00:00
Víctor Manuel Jáquez Leal
494169aad4
vadecoder: remove display reference in decode picture
...
Since it's possible to grab the VA display from the GstBuffer and
GstMemory, there's no need to keep a reference to it in
GstVaDecodePicture.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3066 >
2023-03-24 14:05:15 +00:00
Víctor Manuel Jáquez Leal
746e81fccf
vkinstance: register GStreamer version as engine version
...
Specification says:
"""
engineVersion is an unsigned integer variable containing the developer-supplied
version number of the engine used to create the application.
"""
Assuming the engine is GStreamer, it would be expected to set its version as
engine version.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4243 >
2023-03-24 04:28:54 +00:00
Seungha Yang
af6dccd6e6
d3d11bufferpool: Fix invalid access in debug print loop
...
Add missing condition check in for loop
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4255 >
2023-03-23 18:15:03 +00:00
Víctor Manuel Jáquez Leal
1ace1a5275
vkinstance: enable GPU assisted validation
...
This allows to check for syncronization issues while using the validation layer.
https://vulkan.lunarg.com/doc/sdk/1.3.239.0/linux/synchronization_usage.html
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4245 >
2023-03-23 16:46:34 +00:00
Tobias Rapp
b30f982cf5
gst-libav: Update codec mapping for FFVHuff video
...
Replaces the ad-hoc type string 'video/x-gst-av-ffvhuff' with
'video/x-ffvhuff' for the avdec_ffvhuff and avenc_ffvhuff elements.
Related to #2389 .
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4250 >
2023-03-23 14:30:59 +00:00
Tobias Rapp
c467ac0869
gst-plugins-base: Add FourCC and type description for FFVHuff video
...
The FFVHuff video codec is a FFmpeg-specific variant of the lossless
HuffYUV codec with increased coverage of supported pixel formats and bit
depths.
Fixes #2389 .
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4250 >
2023-03-23 14:30:59 +00:00
Matthew Waters
ba81f3597d
vulkanoverlaycompositor: also support RGBA vulkan images
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4184 >
2023-03-23 22:18:47 +11:00
Sebastian Dröge
84e08a377b
mpegtsdemux: Fix handling of explicit Opus channel mapping
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4180 >
2023-03-23 08:46:50 +00:00
Sebastian Dröge
9d2ac6e90b
mpegtsmux: Allow writing arbitrary Opus channel mapping families and up to 255 channels
...
And fix writing of dual-mono special cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4180 >
2023-03-23 08:46:50 +00:00
Sebastian Dröge
b1cb36e74c
opusdec: Add support for decoding >8 channels
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4180 >
2023-03-23 08:46:50 +00:00
Sebastian Dröge
d78bed99e8
opusenc: Use downstream channel configuration when using channel mapping family 255
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4180 >
2023-03-23 08:46:50 +00:00
Sebastian Dröge
7e63427827
opusenc: Add support for encoding >8 channels and unknown/unpositioned layouts
...
This was kind of implemented before but missing a few pieces to actually
work correctly.
These configurations are mapped to channel mapping family 255.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4180 >
2023-03-23 08:46:50 +00:00
Edward Hervey
0be233a446
uridecodebin3: Remove play items that were never connected
...
This is a follow-up of the previous commit that enabled support for redirection.
The problem is that the urisourcebin that emitted the error redirection never
produced any pads, and therefore was never linked to decodebin3. This resulted
in the code waiting for that (output) item to finally switch over ... which will
never happen.
The fix is done by removing it early if it was never connected to decodebin3.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4252 >
2023-03-23 07:39:48 +01:00
Aleksandr Slobodeniuk
4f988e24d2
bin: fix documentation about event forwarding
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4249 >
2023-03-23 02:39:34 +00:00
Stéphane Cerveau
23661f0446
vulkan: gl: change symbols to static
...
Change window_proc and subclass_proc to static to avoid symbols
duplication.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4246 >
2023-03-23 00:56:04 +00:00
Stéphane Cerveau
e88e8527ed
sys: avoid double definition of symbol MEDIASUBTYPE_I420
...
Namespace the symbol MEDIASUBTYPE_I420 to avoid double definition
across dshow and mediafoundation plugins.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4246 >
2023-03-23 00:56:04 +00:00
Seungha Yang
96555c7ee9
nvh264encoder: Fix template caps
...
It should include progressive as well
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4236 >
2023-03-22 23:40:58 +00:00
Víctor Manuel Jáquez Leal
c159e40a9f
vulkan: silence gobject-instrospection warnings
...
According with gi annotations [1] the "optional" annotation must be only
for (out) or (inout) parameters.
1. https://gi.readthedocs.io/en/latest/annotations/giannotations.html
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4244 >
2023-03-22 14:19:13 +00:00
Piotr Brzeziński
5beef42922
qtdemux: Fix seek adjustment with SNAP_AFTER flag
...
With GST_SEEK_FLAG_SNAP_AFTER present, the previous version would
adjust seek time based on the keyframe farthest away from desired_time.
This was incorrect, because we always want the *earliest* suitable keyframe
to seek to, not the last one.
With this fix, in case of the SNAP_AFTER, we now look for the closest keyframe
that can be found after desired_time. Behaviour for SNAP_BEFORE should remain
unchanged.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4183 >
2023-03-22 13:05:53 +00:00
Edward Hervey
133c4b2ff9
uridecodebin3: Handle redirection errors
...
This is done by doing an immediate switch to the redirection URI if compatible.
Fixes #1562
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4242 >
2023-03-22 11:28:47 +00:00
François Laignel
1abc8aa733
examples: webrtc/janus/rust: add mandatory ws HTTP request headers
...
Trying to run the `janus` Rust `gst-example`, `tungstenite` reports:
> Missing, duplicated or incorrect header sec-websocket-key
Indeed, all mandatory headers from the following list are missing
(code from `tungstenite:🤝 :client::generate_request`):
```rust
const WEBSOCKET_HEADERS: [&str; 5] =
["Host", "Connection", "Upgrade", "Sec-WebSocket-Version", KEY_HEADERNAME];
```
These headers are mandatory for the websocket handshake. This feature is
selected by async-tungstenite.
Prior to this commit, the HTTP request was created with the header
"Sec-WebSocket-Protocol" only. Delegating the request creation to tungstenite
adds the missing headers.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4240 >
2023-03-22 09:48:28 +00:00
Tong Wu
ebc9780c5f
msdkdec: delete use_video_memory
...
Since msdkdec uses video pool as the output buffer pool at all time. The
use_video_memory variable is not useful anymore. Now delete it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4088 >
2023-03-22 05:07:19 +00:00
Tong Wu
8105d2044d
msdkdec: expand retry times to 1s
...
One-frame sleep time is not enough to wait until there is a surface
unlocked from downstream. Now expand it to 1s and add a return when
fail.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4088 >
2023-03-22 05:07:19 +00:00
Tong Wu
123c8d14c1
msdkallocator_d3d: add gst_msdk_frame_free callback function
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4088 >
2023-03-22 05:07:19 +00:00
Tong Wu
abe4d0046a
msdkdec: acquire buffer from video pool on Windows
...
Video memory is available on Windows. This patch is to make the buffers
acquired from d3d11 video pool.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4088 >
2023-03-22 05:07:19 +00:00
Tong Wu
d2902be9eb
msdkdec: add thiz->ds_has_known_allocator for d3d11
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4088 >
2023-03-22 05:07:19 +00:00
Tong Wu
245df2778e
msdkallocator_d3d: add alloc callback function for d3d allocator
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4088 >
2023-03-22 05:07:19 +00:00
Tong Wu
b3e13df8c1
msdkdec: add d3d11 pool during negotiation
...
Enable use_video_memory for Windows and add d3d11 pool.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4088 >
2023-03-22 05:07:19 +00:00
Tong Wu
2b9cda928b
msdkdec: add d3d11 caps for srcpad
...
Set decoder srcpad with D3D11Memory.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4088 >
2023-03-22 05:07:19 +00:00