summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-08-21Release 1.24.71.24.7Tim-Philipp Müller
2024-08-21avdemux: Never return 0 from read functionSebastian Dröge
Instead return AVERROR_EOF. The read function must never ever return 0 according to the documentation, and in practice this leads to infinite loops. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3369 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7391>
2024-08-20wpe: initialize threading.ready before reading itGuillaume Desmottes
Fixes Valgrind warning. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7385>
2024-08-19va: don't use GST_ELEMENT_WARNING in set_context() vmethodVíctor Manuel Jáquez Leal
Since bins can set the context of their children elements, the set_context() vmethod shouldn't call bus messages post methods, since it locks the parent object, the bin, which might be already locked, leading to a deadlock. Fixes: #3706 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7379>
2024-08-19urisourcebin: Actually drop EOS on old-school pad switchEdward Hervey
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7376>
2024-08-17urisourcebin: Don't hold lock when emitting about-to-finishEdward Hervey
This could trigger actions that re-enter this element Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7373>
2024-08-16v4l2object: handle unsupported hlg colorimetry gracefullyQian Hu (胡骞)
This patch addresses the issue where GStreamer would throw an error when attempting to use bt2100-hlg colorimetry with V4L2, which is not supported by the current V4L2 kernel. When bt2100-hlg colorimetry is set from caps, the check for transfer (GST_VIDEO_TRANSFER_ARIB_STD_B67) is bypassed. The main improvement is to avoid checking the transfer value in gst_v4l2_video_colorimetry_matches when it is GST_VIDEO_TRANSFER_ARIB_STD_B67. This is because the transfer value in the cinfo parameter comes from gst_v4l2_object_get_colorspace, which converts the transfer to another value, causing a mismatch. Since the kernel does not support GST_VIDEO_TRANSFER_ARIB_STD_B67, gst_v4l2_object_get_colorspace cannot map it correctly from V4L2 to GStreamer. Therefore, we ignore this check to prevent errors. changes: - Added a condition in gst_v4l2_video_colorimetry_matches to bypass the transfer check when the transfer is GST_VIDEO_TRANSFER_ARIB_STD_B67. - Ensured that the pipeline does not throw errors due to unsupported bt2100-hlg colorimetry in V4L2. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7369>
2024-08-16avdemux: Fix deadlock when serialized events are received from upstream ↵Sebastian Dröge
while opening Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3657 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7367>
2024-08-15pbutils: descriptions: use subsampling factor to get YUV subsamplingVíctor Manuel Jáquez Leal
The algorithm used to determine the YUV subsampling string uses width and height subsampling factor, not the raw subsampling. Otherwise all 4:2:0 YUV frames will be detected as 4:4:4 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7359>
2024-08-14h26xparse: bypass check for length_size_minus_oneQian Hu (胡骞)
fix playback fail, when some file with length_size_minus_one == 2 According to the spec 2 cannot be a valid value, so that stream has a bad config record. but breaking the decoding because of that, perhaps is too much. and ffmpeg seem not check this Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7358>
2024-08-13msdk: replace strcmp with g_strcmp0Víctor Manuel Jáquez Leal
Because strcmp doesn't handle NULL. Fixes: #3721 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7349>
2024-08-13rtspsrc: expose property for forcing usage of non-compliant URLsMathieu Duponchelle
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7346>
2024-08-13qt6glwindow: Fallback to GL_RGB on CopyTexImage2D errorNicolas Dufresne
With GLES 2.0 we are forced to use CopyTextImage2D which requires passing an internal format. With QT6 eglfs, we need to pass GL_RGB instead, probably because of how the texture has been created. As its hard to guess, simply fallback to GL_RGB on failure. This fixes usage or qml6glsrc with eglfs backend, without loosing support for semi-transparent window on other platforms. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7345>
2024-08-13qmlgl6src: Fix crash when use-default-fbo is falseNicolas Dufresne
When that property is set to its default qmlgl6src element simply crash as it will call gst_video_frame_unmap() twice. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7344>
2024-08-13meson: Add an option to disable gst-fullNirbheek Chauhan
Not all static-library build configurations need to use this, and the CPU time and RAM needed by gst-full targets is quite significant. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7343>
2024-08-12core: Log pad name, not just the pointerJan Schmidt
Change a debug statement that was just logging a pad pointer where it could log the pad name more usefully. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7336>
2024-08-09validate: Copy action structure before retrieving strings from itSebastian Dröge
The returned strings are only valid for as long as the structure is valid. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7334>
2024-08-09validate: Fix copying of action nameSebastian Dröge
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7334>
2024-08-08aom: av1enc: restrict allowed input width and heightTim-Philipp Müller
Restrict allowed input resolution to something sensible in light of libaom CVE-2024-5171. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7328>
2024-08-06webrtc: Add missing G_BEGIN/END_DECLS in headerJan Schmidt
Fix using webrtc.h from C++ by adding the GLib begin/end decls markers around the header contents in webrtc_fwd.h Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7313>
2024-08-06bin: Don't keep the object lock while setting a GstContext when handling ↵Sebastian Dröge
NEED_CONTEXT This can potentially deadlock. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3707 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7310>
2024-08-06rtspconnection: Handle invalid argument properlyMax Romanov
In case when conn->input_stream is NULL and glib was built with "glib_checks" enabled, g_pollable_input_stream_read_nonblocking() returns -1, but does not set the "err". The call stack: read_bytes() -> fill_bytes() -> fill_raw_bytes() The return value -1 passed up to read_bytes() and incorrectly processed there after "error:" label. This changes the return value to EINVAL. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7309>
2024-08-05avprotocol: Return EOF when stream is out of dataJesper Jensen
According to the ffmpeg documentation[1] the read_packet function should never return 0. ffmpegdata_peek returns 0 when the stream is EOF causing us to fail detecting EOF and never close the pipeline, continually spinning on more data. ffmpeg instead wants an AVERROR_EOF code for to signal EOF. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7299>
2024-08-05xv: imagepool: Improve error loggingNicolas Dufresne
The shm creation function can return a GError, use this to improve the error reporting. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7292>
2024-08-05xvimagesink: Fix crash in pool on errorNicolas Dufresne
The set_config() virtual function is not support to free the config. As a side effect, when there is protocol error of some sort, we endup with a crash. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7292>
2024-08-03vaapi: Fix sps_max_dec_pic_buffering_minus1 value in h265 decoderDavid Rosca
Fixes decoding SLPPLP_A_VIDYO_2 sample. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7298>
2024-08-02h265parse: Reject FD received before SPSJordan Yelloz
A previous fix, a275e1e029e9b5d88be26b8304c9a162e4567346, is correct but was too permissive since it treats all un-matched NAL units the same as AU delimiters even though some other NAL unit types can be encountered in the processing loop. The problem this can cause is that some hardware decoders experience bad performance when handling FD units that precede the SPS. This change restores the original behavior for FDs so that they're ignored until the SPS is received and it preserves the codec conformance test gains that the fix has achieved. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7296>
2024-08-02glframebuffer: Improve error tracingNicolas Dufresne
glCheckFrameStatus() can fail by returning 0, and otherwise return a status. Fix the trace to make it clear when we get an unkown status compare to having an error, in which case we also trace the error code. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7295>
2024-08-02qt6glwindow: Only use GL_READ_FRAMEBUFFER when we do blitsNicolas Dufresne
This fbo target is not always supported, and should only be used along with the frame buffer blit extension. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7295>
2024-08-01qt6: glwindow: Don't leak previously rendered bufferNicolas Dufresne
If the consumer reads the buffers too slowily, simply unref the previously rendered buffer instead of leaking it. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7289>
2024-07-31v4l2: Fix colorimetry mismatch for encoded format with RGB color-matrixHou Qi
video-info supports encoded format to have RGB color-matrix, while v4l2object just leave the v4l2 matrix to default when mapping GST_VIDEO_COLOR_MATRIX_RGB. It causes gst matrix changed to be GST_VIDEO_COLOR_MATRIX_BT601 when mapping v4l2 colorimetry. So add support for encoded format with RGB color-matrix in v4l2object. Note that for M2M encoders, we should in theory assume that that we can transfer this value from OUTPUT to CAPTURE queues, though its only true if the drivers does not do CSC. For now, we don't support any RGB codecs, but leaving a note for the future. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7284>
2024-07-31v4l2object: SRGB colorspace is documented limited-rangeNicolas Dufresne
Split JPEG and SRGB so that we can follow the specified difference. The SRGB definition in V4L2 does not follow the standard, and is document so. This is also why JPEG colorspace exists. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7284>
2024-07-31v4l2object: Fix size of plane_size array calculationNicolas Dufresne
Due to missing parenthesys, only the first element of the array was being cleared. As it is a staticly sized array in the object, this code could also be simplified. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7284>
2024-07-31v4l2object: Fix translation of quantizationNicolas Dufresne
The V4L2_MAP_QUANTIZATION macro has been fixed to something a lot saner, fix our replica accordingly. The new macro now simply set the quantization to full range is the pixel formats is RGB based, or if the JPEG colorspace is used. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7284>
2024-07-30rsvgoverlay: add debug categoryGuillaume Desmottes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7281>
2024-07-30nlecomposition: Don't leak QoS eventsEdward Hervey
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7280>
2024-07-29Back to development after 1.24.6Tim-Philipp Müller
2024-07-29Release 1.24.61.24.6Tim-Philipp Müller
2024-07-29macos: Listen for audio devices being added/removedPiotr Brzeziński
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7258>
2024-07-29parsebin: accept-caps handling for elements with unusual pad namesPhilippe Normand
In case the last element of the parse chain doesn´t have a sink pad named "sink", send the accept-caps query to the first sink pad of the element. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7257>
2024-07-29va: refactor dmabuf handle closeVíctor Manuel Jáquez Leal
Moved the close loop into a function guarded for non-win32 platforms. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7256>
2024-07-27qsv: Fix critical warningsSeungha Yang
Fixing warnings GStreamer-CRITICAL **: 01:21:25.862: gst_value_set_int_range_step: assertion 'start < end' failed Although when QSV runtime reports a codec is supported, resolution query fails sometimes, espeically VP9 encoder case on Windows. Don't try to register an element if resolution query returned an error Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7252>
2024-07-27svtav1enc: Fix segfault when flushingNirbheek Chauhan
gst_video_encoder_get_oldest_frame() is nullable, and will signal that all frames are handled by returning NULL. Fixes #3650 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7251>
2024-07-26va: Fix dmabuf handle leaksJan Schmidt
Close dmabuf handles manually when they're not going to be passed into GStreamer FD memory, to avoid fd handle leaks. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7245>
2024-07-25videoscale: correct classification errorShengqi Yu
videoscale does not have convert function, so remove the convert description in it's classification. Otherwise, if we want use autovideoconvert to convert colorsapce, autovideoconvert will select videoscale to do convert and this will cause to fail. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7235>
2024-07-25qroverlay: redraw overlay when caps changesGuillaume Desmottes
The position needs to be updated as it depends of the video size. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7234>
2024-07-25qroverlay: add some debug logsGuillaume Desmottes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7234>
2024-07-25ci: Fix subprojects cache dir usage on macOS jobsNirbheek Chauhan
The location is on `/subprojects` on macOS. In all cases, the actual location is specified in `.gitlab-ci.yml`. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7238>
2024-07-24wraps: libgudev: add fallback uriTim-Philipp Müller
Release tarball is .xz but we currently use a snapshot from gitlab, so just mirror the .bz2 instead of changing all URLs. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7228>
2024-07-24avtp: Fixed Linux/Alpine 3.20 buildtomaszmi
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7227>