Tim-Philipp Müller
30f955f73a
ges: tools: fix msvc compiler warning about G_LOG_DOMAIN redefinition
...
cl: Command line warning D9025: overriding '/DG_LOG_DOMAIN="GES"'
with '/UG_LOG_DOMAIN'
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5312 >
2023-09-11 20:53:19 +00:00
Tim-Philipp Müller
600b626472
ges: tools: fix duplicate ges_tools definition in meson.build
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5312 >
2023-09-11 20:53:19 +00:00
Tim-Philipp Müller
4a857fbf87
ges: launcher: fix compiler warning with MSVC 2022
...
tools/ges-launcher.c(315): warning C4133: 'function':
incompatible types - from 'GESTrackType *' to 'guint *'
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5312 >
2023-09-11 20:53:19 +00:00
Nicolas Dufresne
1eaa671feb
glupload: Only allow non-linear formats with direct dmabuf uploaders
...
As we don't have any mapping from YUV formats + modifiers to an equivalent
emulated format (e.g. NV12 + modifier -> R8+modifier/RG88+modifier), do no
allow these formats to be used with the indirect DMABuf uploader.
Fixes #2942
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5270 >
2023-09-11 19:55:19 +00:00
Nicolas Dufresne
c1e03081c0
v4l2: object: Handle video helper return value
...
gst_video_info_set_interlaced_format() can return an error if the
width/height causes integer overflow. Handle this case, so that we can
fail cleanly. This has been experienced while testing an in-progress
driver.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5286 >
2023-09-11 15:05:34 -04:00
Nicolas Dufresne
353cb2da92
v4l2: bufferpool: Avoid warnings on empty last buffer
...
Some drivers will push an buffer flagged LAST but empty. In decoder
case, this results in an "producing too many buffer" warning, even
though the result is entirely correct. Detect this case in order to
signal EOS earlier and avoid this warning.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5286 >
2023-09-11 18:08:21 +00:00
Nicolas Dufresne
65350b601e
v4l2: bufferpool: Do not resize compressed buffer
...
Avoid resizing compressed buffer to their maximum size. This fixes a
regression that caused valid but very large streams to be generated.
Fixes #2953
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5286 >
2023-09-11 18:08:21 +00:00
Thomas Schneider
2f3fea33ca
androidmedia: fix hevc codec profile registration
...
Fix the codec registration logic such that all supported
profiles are available instead of just the first in the
list.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5282 >
2023-09-11 12:00:05 +00:00
Sebastian Dröge
889a3fe932
rtmp2: Set default flash version to NULL
...
This is consistent with the librtmp-based old rtmp plugin and ffmpeg.
While some servers require a valid flash-version, others are failing
with a too long or any flash-version at all.
By changing to the same default as in the old plugin and in ffmpeg,
GStreamer will at least behave the same and will work and fail with the
same servers without setting a flash-version.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5293 >
2023-09-11 08:23:33 +00:00
Philippe Normand
ce7b2af414
glsinkbin: Check sink property exists before attempting to read it
...
The same is done in the set_property function. This was noticed when attempting
to dump a pipeline containing glsinkbin sink=gtk4paintablesink to dot format.
Critical warnings were raised due to the missing force-aspect-ratio property on
that sink.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5311 >
2023-09-11 07:36:21 +00:00
Eva Pace
003e419ff5
examples: webrtc: rust: i64 -> u64 for session and handle ids
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5307 >
2023-09-11 06:21:32 +00:00
Nicolas Dufresne
c7e6463e9e
doc: Update cache after template pixel formats changes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5304 >
2023-09-10 19:13:28 -04:00
Nicolas Dufresne
bb979d8bc7
ci: Check video formats order
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5304 >
2023-09-10 19:06:07 -04:00
Nicolas Dufresne
16ae1286d1
wayland: Use generated formats list
...
Update the order according to what the generator produces.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5304 >
2023-09-10 19:06:07 -04:00
Nicolas Dufresne
5af78522b7
video: Use generated format order
...
Update the order according to what the generator produces.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5304 >
2023-09-10 19:06:07 -04:00
Nicolas Dufresne
d1043226d7
video: Fix unknown big endian format list
...
That list contained multiple formats that did not exists.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5304 >
2023-09-10 19:06:07 -04:00
Nicolas Dufresne
63b8a5f22d
scripts: Add a script to validate video formats list
...
These lists have complex ordering and are error prone even for trained
reviewers. This tool will parse the specified define in the specified file
and determin if there is any error, unknown formats or miss-ordering.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5304 >
2023-09-10 19:06:06 -04:00
Víctor Manuel Jáquez Leal
b7ded81f7b
vkbufferimagepool: short circuit usage for decoding
...
NVIDIA & RADV drivers don't report decoding features for color format. Setting
requested usage to zero to short circuit validation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5288 >
2023-09-08 18:11:55 +02:00
Matthew Waters
9d79852890
vkformat: assume that unknown rgb transfer is sRGB
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5288 >
2023-09-08 16:09:33 +00:00
Matthew Waters
b82a402bf1
vkformat: also check configured usage flags
...
This does also mean that if the primary format fails this check, we need
to try the secondary format before returning an error
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2957
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5288 >
2023-09-08 16:09:33 +00:00
Matthew Waters
4d3b03e8e8
vkformat: invert srgb and multiplane && planes > 1 checks
...
The primary format for RGB includes sRGB transfer but was not actually
being used.
The !(no_multiplane && planes > 1) check for YUV resulted in those
formats never being used.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5288 >
2023-09-08 16:09:33 +00:00
Matthew Waters
8a9d630e3b
vkformat: FORMAT_FEATURE_COLOR_ATTACHMENT also includes INPUT_ATTACHMENT
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5288 >
2023-09-08 16:09:33 +00:00
Matthew Waters
6c534655d4
vkformat: reorder RGBA formats before RGBx formats
...
Fixes gst_vulkan_format_to_video_format to use the RGBA formats instead
of RGBx formats.
Fixes vulkansink exposing a RGBx/BGRx format instead of the more
relevant RGBA/BGRA formats
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5288 >
2023-09-08 16:09:33 +00:00
Aleksandr Slobodeniuk
a98330636a
h264/h265parser: clarify some gtk-doc annotations
...
Needed for the documentation since the transfer
is not obvious.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5287 >
2023-09-08 13:41:01 +00:00
Seungha Yang
efe35a3f6c
h264parse, h265parse: Fix potential integer overflow
...
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2961
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5295 >
2023-09-08 12:45:12 +00:00
Seungha Yang
962384846d
codecs: Update gir
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5285 >
2023-09-08 11:51:23 +00:00
Seungha Yang
f9169c5431
nvdecoder: Move common logic to decoder helper object
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5285 >
2023-09-08 11:51:23 +00:00
Seungha Yang
6cf6c73712
d3d11decoder: Move common logic to decoder helper object
...
We can remove duplicated code by using the GstCodecPicture struct
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5285 >
2023-09-08 11:51:23 +00:00
Seungha Yang
97fc02cfe3
av1decoder: Port to GstCodecPicture struct
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5285 >
2023-09-08 11:51:23 +00:00
Seungha Yang
a73c6d7fb6
vp9decoder: Port to GstCodecPicture struct
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5285 >
2023-09-08 11:51:23 +00:00
Seungha Yang
4571fac946
vp8decoder: Port to GstCodecPicture struct
...
... and remove unused "pts" variable from GstVp8Picture struct
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5285 >
2023-09-08 11:51:23 +00:00
Seungha Yang
a5ddf7af3b
mpeg2decoder: Port to GstCodecPicture struct
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5285 >
2023-09-08 11:51:23 +00:00
Seungha Yang
6e7cab43be
h265decoder: Port to GstCodecPicture struct
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5285 >
2023-09-08 11:51:23 +00:00
Seungha Yang
ea3dfadbed
h264decoder: Port to GstCodecPicture struct
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5285 >
2023-09-08 11:51:23 +00:00
Seungha Yang
d69bacb954
codecs: Define common codec picture struct
...
Adding parent class of codec picture struct
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5285 >
2023-09-08 11:51:23 +00:00
Tim-Philipp Müller
1bfd8a9fb1
ci: disable gstreamer-sharp tests for gcc/clang matrix builds
...
gstreamer-sharp tests do some kind of nuget download as part of
the configure, and this frequently fails on the CI (possibly
because we're hammering it with parallel requests).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5251 >
2023-09-08 11:02:45 +00:00
Matthew Waters
fac5a83fd9
gl: add support for I420 10/12 bit formats
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5292 >
2023-09-07 17:03:19 +00:00
Robert Mader
649eeeaa27
wlvideoformat: Add P010
...
It is similar to NV12 but has 10bits per channel instead of 8.
As it is supported by many modern GPUs, VA-API and an increasing
number of Wayland compositors, let's support it as well.
Also bump the required libdrm version accordingly and add a temporary
define for the WL_SHM format.
Tested with Weston, Mutter and Sway.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5275 >
2023-09-07 13:50:48 +00:00
Robert Mader
fd82342bbd
waylandsink: Move format caps list to shared library
...
So it can be shared and more easily updated. While on it, order the
formats according to the documentation for GstVideo.VIDEO_FORMATS_ALL.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5275 >
2023-09-07 13:50:48 +00:00
Matthew Waters
9e6891076c
qml6glmixer: add support for non-RGBA inputs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5290 >
2023-09-07 02:12:29 +00:00
Matthew Waters
ba00a7efda
qml6glovleray: add support for non-RGBA inputs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5290 >
2023-09-07 02:12:29 +00:00
Matthew Waters
95db85e664
gl/mixer: use the pad's video info instead of creating our own
...
The pad's video info will match the actual video format in use.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5290 >
2023-09-07 02:12:29 +00:00
Matthew Waters
6efccf0ee1
qml6/sink: add support for non-RGBA input
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5290 >
2023-09-07 02:12:29 +00:00
Nicolas Dufresne
7e3f8e7907
basesrc: Delay unlocking so we can hold the STREAM_LOCK
...
unlock_stop() is expected to be run while the streaming thread is idle. To
guaranty this is the case, we should take the streamlock, but its not
possible to take this lock during state transitions from PAUSED to
PLAYING as the wait function that we want to terminate is holding it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4961 >
2023-09-06 17:34:45 +00:00
Nicolas Dufresne
47d79eedc9
basesrc: Retry create() if we are back from pause
...
After a create() call, which may have returned FLUSHING or a filled buffer,
if it possible that we detect that we are now in pause. As live sourced
don't produce data in pause, drop the buffer is any and later retry creating
a buffer. This will ensure that we resume from pause while avoiding displaying
ancient frame.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4961 >
2023-09-06 17:34:45 +00:00
soak
e506f9c23e
basesrc: Restore pause/resume in derived classes
...
When the pipeline goes from Playing to Paused, this change will invoke
unlock in the derived class. When the pipeline goes from Paused to
Playing, this change will invoke unlock_stop in the derived class.
This feature was removed in commit 523de1a9
and is now being restored.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4961 >
2023-09-06 17:34:45 +00:00
Thibault Saunier
6dd0019090
ges: Fix setting keyframes from ges-launch
...
There is no registered GValue conversion function from string to double (on purpose) so
we need to handle that case appropriately.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5294 >
2023-09-06 11:07:35 -03:00
Akihiro Sagawa
3c7ba382db
codecparsers: Fix MPEG-1 aspect ratio table
...
The values defined in ISO/IEC 11172-2 are different from those used so far.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5272 >
2023-09-06 12:24:37 +00:00
Philippe Normand
bb5d5e0066
glcontext_egl: Remove spurious mutex unlock
...
The context is not locked in any call site of the "failed" goto.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5291 >
2023-09-06 12:03:42 +01:00
He Junyan
6b23f2c4be
va: baseenc: use in_info rather than input_state->info
...
The in_info is correct video info which already considers the
DMA kind caps case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5289 >
2023-09-06 15:40:03 +08:00