Projects
Essentials
gstreamer-plugins-bad-codecs
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 24
View file
gstreamer-plugins-bad-codecs.changes
Changed
@@ -1,4 +1,9 @@ ------------------------------------------------------------------- +Mon Aug 5 17:33:08 UTC 2024 - Bjørn Lie <zaitor@opensuse.org> + +- Update to version 1.24.6 + +------------------------------------------------------------------- Fri Jun 28 09:18:37 UTC 2024 - Bjørn Lie <zaitor@opensuse.org> - Update to version 1.24.5
View file
gstreamer-plugins-bad-codecs.spec
Changed
@@ -7,7 +7,7 @@ %define _version 1.24.0 Name: gstreamer-plugins-bad-codecs -Version: 1.24.5 +Version: 1.24.6 Release: 0 Summary: Codecs/plugins for gstreamer-plugins-bad License: LGPL-2.1-or-later @@ -71,7 +71,7 @@ -Drtmp=enabled \ -Dx265=enabled \ -Dopenaptx=enabled \ - -Dvoaacenc=enabled \ + -Dvoaacenc=disabled \ %{nil} %meson_build
View file
gst-plugins-bad-1.24.5.tar.xz/ChangeLog -> gst-plugins-bad-1.24.6.tar.xz/ChangeLog
Changed
@@ -1,3 +1,269 @@ +=== release 1.24.6 === + +2024-07-29 16:41:37 +0100 Tim-Philipp Müller <tim@centricular.com> + + * NEWS: + * RELEASE: + * gst-plugins-bad.doap: + * meson.build: + Release 1.24.6 + +2024-07-29 10:29:11 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> + + * gst-libs/gst/va/gstvaallocator.c: + va: refactor dmabuf handle close + 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-28 02:01:24 +0900 Seungha Yang <seungha@centricular.com> + + * sys/qsv/gstqsvav1enc.cpp: + * sys/qsv/gstqsvh264enc.cpp: + * sys/qsv/gstqsvh265enc.cpp: + * sys/qsv/gstqsvjpegenc.cpp: + * sys/qsv/gstqsvvp9enc.cpp: + qsv: Fix critical warnings + 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-27 02:18:45 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * ext/svtav1/gstsvtav1enc.c: + svtav1enc: Fix segfault when flushing + 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-25 22:44:51 +1000 Jan Schmidt <jan@centricular.com> + + * gst-libs/gst/va/gstvaallocator.c: + va: Fix dmabuf handle leaks + 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-24 22:22:03 +0200 Guillaume Desmottes <guillaume.desmottes@onestream.live> + + * ext/qroverlay/gstbaseqroverlay.c: + qroverlay: redraw overlay when caps changes + 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-24 22:21:41 +0200 Guillaume Desmottes <guillaume.desmottes@onestream.live> + + * ext/qroverlay/gstbaseqroverlay.c: + qroverlay: add some debug logs + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7234> + +2024-07-24 09:16:03 +0200 tomaszmi <257184-tomaszmi@users.noreply.gitlab.freedesktop.org> + + * ext/avtp/gstavtpsink.c: + avtp: Fixed Linux/Alpine 3.20 build + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7227> + +2024-07-24 02:33:50 +0900 Seungha Yang <seungha@centricular.com> + + * gst-libs/gst/cuda/gstcudanvrtc.cpp: + cuda: Fix runtime compiler loading with old CUDA tookit + Fallback to PTX if CUBIN symbol is unavailable + Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3685 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7223> + +2024-07-12 18:10:12 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> + + * ext/vulkan/vkupload.c: + * tests/check/libs/vkvideodecode.c: + vulkan: fix wrong stages or access in barriers + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7202> + +2024-03-19 20:04:15 -0300 L. E. Segovia <amy@centricular.com> + + * ext/isac/meson.build: + isac: Work around upstream having no shared library support for MSVC + None of the symbols in webrtc-audio-coding-1 are marked with + `__declspec(dllexport)`, rendering the library usable only if + it was built with GCC/Clang. + The only fix available (as the pulseaudio copy has not been updated + with Google's upstream) is to ensure the fallback builds statically. + Although this change will also affect webrtcdsp's dependency on + webrtc-audio-processing-1, it does not break its compilation. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7206> + +2024-07-16 23:08:39 +0200 Robert Mader <robert.mader@posteo.de> + + * sys/va/gstvabase.c: + vabase: Stop aligning VideoInfo during DMABUF import + Doing so resets the stride from the VideoMeta and it wasn't done before + the commit below. While on it, drop the plane size check as we can't + reliably predict the correct size when using DRM modifiers. + Fixes: 89b0a6fa23 ("va: refactor buffer import") + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7196> + +2024-07-17 12:45:31 +0200 Robert Mader <robert.mader@posteo.de> + + * sys/va/gstvabase.c: + vabase: Use correct VideoInfo during DMABUF import + The changes to the VideoInfo, notably the stride from the VideoMeta, + were lost. Avoid such mistakes by explicitly using the VideoInfo from + drm_info. + Fixes: 9f5b2c4e25 ("va: use GstVideoInfoDmaDrm when importing buffers") + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7196> + +2024-07-17 23:44:09 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * sys/applemedia/avfdeviceprovider.m: + * sys/applemedia/avfvideosrc.h: + * sys/applemedia/avfvideosrc.m: + avfdeviceprovider: Fix debug category initialization + The device monitor calls into avfvideosrc functions without + initializing the debug category, which causes multiple criticals. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7195> + +2024-07-15 12:44:52 +0200 Robert Mader <robert.mader@posteo.de> + + * sys/va/plugin.c: + va: Blocklist i965 driver for encoding + The driver - AKA intel-vaapi-driver - has been unmaintained for four years + now and encoding appears to be broken in various cases. As it's unlikely + that the situation will improve, blocklist the driver for encoding. + Decoding appears to be stable enough to keep it enabled. + The driver can still be used by setting the `GST_VA_ALL_DRIVERS` env + variable. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7186> + +2024-07-16 23:07:50 +0900 Seungha Yang <seungha@centricular.com> + + * sys/d3d12/gstd3d12compositor.cpp: + d3d12compositor: Fix transparent background mode with YUV output + In case of YUV format without alpha channel, zero clear value + for each channle will result in green color. Use calculated black + background color with alpha=0 for transparent background mode instead. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7185> + +2024-07-16 20:38:41 +0900 Seungha Yang <seungha@centricular.com> + + * sys/d3d11/gstd3d11compositor.cpp: + d3d11compositor: Fix transparent background mode with YUV output + In case of YUV format without alpha channel, zero clear value + for each channle will result in green color. Use calculated black + background color with alpha=0 for transparent background mode instead. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7185> + +2024-07-03 22:57:58 +0900 Seungha Yang <seungha@centricular.com> + + * gst-libs/gst/codecs/gsth264decoder.c: + h264decoder: Update output frame duration when second field frame is discarded + In case of an interlaced stream, if each field picture belongs to + different GstVideoCodecFrame, updates output frame's duration + based on discarded second field picture's timestamp information. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7175> + +2024-07-12 12:34:52 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> + + * gst-libs/gst/va/gstvadisplay.c: + vadisplay: fix minor version check + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7169> + +2024-07-04 02:02:42 +0200 Robert Mader <robert.mader@posteo.de> + + * gst-libs/gst/wayland/gstwlwindow.c: + waylandsink: Fix surface cropping for rotated streams + The wp_viewport source rectangle is applied in surface-local coordinates + after buffer_transform and buffer_scale. Therefore we need to swap width + and height for 90/270 deg. rotations. + This fixes playback of rotated videos such as portrait videos from + mobile devices. + See also: https://wayland.app/protocols/viewporter#wp_viewport + Fixes: 0b648f9a2d ("waylandsink: Crop surfaces to their display width height") + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7160> + +2024-07-04 22:49:38 +0900 Seungha Yang <seungha@centricular.com> + + * gst-libs/gst/d3d11/hlsl/PSMain_converter.hlsl: + d3d11converter: Fix runtime compiled shader code + Restore mistakenly deleted code in a previous MR + https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6803 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7138> + +2024-07-08 15:30:45 +0200 Ruben Gonzalez <rgonzalez@fluendo.com> + + * ext/vulkan/vkh265dec.c: + vkh265dec: Fix H.264 ref in logs + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7147> + +2024-07-05 18:17:38 +0530 Taruntej Kanakamalla <taruntej@asymptotic.io> + + * tests/check/elements/lc3.c: + lc3: remove bitstream comparison in the tests + since the encoded output is changing based on version + it does not make sense to check the output bitstream with a fixed + bytearray since the version in the target might vary. So sticking + to checking the number of output buffers and encoded frame size + similar to the other tests + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7142> + +2023-04-07 14:40:58 -0400 Chris Spoelstra <cs.spoelstra@gmail.com> + + * docs/plugins/gst_plugins_cache.json: + * ext/srt/gstsrtobject.c: + srtsrc: fix case fallthrough of authentication param + Add missing breaks to two case statements. + Also adds a missing lock of srtobject->element when getting the value + of PROP_AUTHENTICATION. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7127> + +2024-06-26 16:09:26 +0200 Guillaume Desmottes <guillaume.desmottes@onestream.live> + + * gst/rtmp2/rtmp/amf.c: + rtmp2: guard against calling gst_amf_node_get_type() with NULL + gst_amf_node_get_type() raises a CRITICAL if called with a NULL node. + All callers were checking for this except those. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7110> + +2024-06-02 11:40:04 +0300 Jan Schmidt <jan@centricular.com> + + * ext/hls/m3u8.c: + adaptivedemux: Fix handling closed caption streams + Fix a typo "CLOSED_CAPTION" -> "CLOSED-CAPTION" and + a broken if statement that always bailed out for + closed captions + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7105> + +2024-06-25 22:19:26 +1000 Jan Schmidt <jan@centricular.com> + + * ext/webrtcdsp/gstwebrtcdsp.cpp: + webrtcdsp: Enable multi_channel processing + Enable multi_channel processing in webrtc-audio-processing when the + input or output has multiple channels. + Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3220 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7104> + +2024-06-24 16:00:45 +0200 Piotr Brzeziński <piotr@centricular.com> + + * sys/applemedia/vtenc.c: + vtenc: Fix redistribute latency spam + Just a quick fix to only report the maximum noticed delay (measured by frames inside the encoder) instead of changing + the reported latency every time the number there changes, which is way too often. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7098> + +2024-06-20 22:18:02 +0900 Seungha Yang <seungha@centricular.com> + + * sys/d3d12/gstd3d12converter.cpp: + d3d12converter: Make gamma remap work as intended + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7080> + +2024-06-20 13:02:19 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson.build: + Back to development after 1.24.5 + === release 1.24.5 === 2024-06-20 12:54:15 +0100 Tim-Philipp Müller <tim@centricular.com>
View file
gst-plugins-bad-1.24.5.tar.xz/NEWS -> gst-plugins-bad-1.24.6.tar.xz/NEWS
Changed
@@ -2,11 +2,11 @@ GStreamer 1.24.0 was originally released on 4 March 2024. -The latest bug-fix release in the stable 1.24 series is 1.24.5 and was released on 20 June 2024. +The latest bug-fix release in the stable 1.24 series is 1.24.6 and was released on 29 July 2024. See https://gstreamer.freedesktop.org/releases/1.24/ for the latest version of this document. -Last updated: Wednesday 20 June 2024, 22:35 UTC (log) +Last updated: Monday 29 July 2024, 14:30 UTC (log) ## Introduction @@ -2114,13 +2114,13 @@ Cerbero build tool and packaging changes in 1.24.5 -- No changes +- osxrelocator: Fix RPATHs in deeply nested libraries Contributors to 1.24.5 Angelo Verlain, Chris Del Guercio, Corentin Damman, Edward Hervey, Francisco Javier Velázquez-García, He Junyan, Jakub Adam, -Jakub Vaněk, Khem Raj, Martin Nordholts, Mathieu Duponchelle, Nirbheek Chauhan, Piotr Brzeziński, Samuel Thibault, Sebastian -Dröge, Sergey Krivohatskiy, Seungha Yang, Tim-Philipp Müller, Zach van Rijn, +Jakub Vaněk, Khem Raj, L. E. Segovia, Martin Nordholts, Mathieu Duponchelle, Nirbheek Chauhan, Piotr Brzeziński, Samuel +Thibault, Sebastian Dröge, Sergey Krivohatskiy, Seungha Yang, Tim-Philipp Müller, Zach van Rijn, … and many others who have contributed bug reports, translations, sent suggestions or helped testing. Thank you all! @@ -2129,6 +2129,166 @@ - List of Merge Requests applied in 1.24.5 - List of Issues fixed in 1.24.5 +1.24.6 + +The sixth 1.24 bug-fix release (1.24.6) was released on 29 July 2024. + +This release only contains bugfixes and it should be safe to update from 1.24.x. + +Highlighted bugfixes in 1.24.6 + +- Fix compatibility with FFmpeg 7.0 +- qmlglsink: Fix failure to display content on recent Android devices +- adaptivedemux: Fix handling of closed caption streams +- cuda: Fix runtime compiler loading with old CUDA tookit +- decodebin3 stream selection handling fixes +- d3d11compositor, d3d12compositor: Fix transparent background mode with YUV output +- d3d12converter: Make gamma remap work as intended +- h264decoder: Update output frame duration for interlaced video when second field frame is discarded +- macOS audio device provider now listens to audio devices being added/removed at runtime +- Rust plugins: audioloudnorm, s3hlssink, gtk4paintablesink, livesync and webrtcsink fixes +- videoaggregator: preserve features in non-alpha caps for subclasses with non-system memory sink caps +- vtenc: Fix redistribute latency spam +- v4l2: fixes for complex video formats +- va: Fix strides when importing DMABUFs, dmabuf handle leaks, and blocklist unmaintained Intel i965 driver for encoding +- waylandsink: Fix surface cropping for rotated streams +- webrtcdsp: Enable multi_channel processing to fix handling of stereo streams +- Various bug fixes, memory leak fixes, and other stability and reliability improvements + +gstreamer + +- downloadbuffer: fix push mode +- queue: queue2: multiqueue: Don’t work with segment.position if buffers have no timestamps +- gst-inspect-1.0: Fix leak of plugin/feature + +gst-plugins-base + +- decodebin3: Fix detection of selection done +- glvideomixer: Fix critical when setting start-time-selection +- parsebin: accept-caps handling for elements with unusual sink pad names +- subparse: Don’t use jit for regular expressions when running in valgrind +- subparse: put valgrind header availability define into config.h for subparse +- videoaggregator: preserve features in non-alpha caps +- videoscale: correct classification error +- meson: Fix invalid include flag in uninstalled gl pc file +- Fix various memory leaks + +gst-plugins-good + +- adaptivedemux: Fix handling closed caption streams +- qml/glsink: also support GLES2 needing shader ‘precision’ directives +- v4l2object: use v4l2 reported width for padded_width when complex video formats +- v4l2: meson: fix SIZEOF_OFF_T when cross-compiling with Meson >= 1.3.0 + +gst-plugins-bad + +- svtav1enc: Fix segfault when flushing +- avfdeviceprovider: Fix debug category initialization +- osxaudiodeviceprovider: Listen for audio devices being added/removed +- avtp: Fixed Linux/Alpine 3.20 build +- cuda: Fix runtime compiler loading with old CUDA tookit +- d3d11compositor, d3d12compositor: Fix transparent background mode with YUV output +- d3d11converter: Fix runtime compiled shader code +- d3d12converter: Make gamma remap work as intended +- h264decoder: Update output frame duration when second field frame is discarded +- isac: Work around upstream having no shared library support for MSVC +- lc3: remove bitstream comparison in the tests +- qroverlay: redraw overlay when caps changes +- qsv: Fix critical warnings +- rtmp2: guard against calling gst_amf_node_get_type() with NULL +- srtsrc: fix case fallthrough of authentication param +- va: Blocklist unmaintained i965 driver for encoding +- va: Fix strides when importing DMABUFs +- va: Fix dmabuf handle leaks +- vadisplay: fix minor version check +- vkh265dec: Fix H.264 ref in logs +- vulkan: fix wrong stages or access in barriers +- vtenc: Fix redistribute latency spam +- waylandsink: Fix surface cropping for rotated streams +- webrtcdsp: Enable multi_channel processing + +gst-plugins-ugly + +- asfdemux: Be more lenient towards malformed header, fixes playback of files written by VLC + +GStreamer Rust plugins + +- audioloudnorm: Fix limiter buffer index wraparound off-by-one for the last buffer +- aws: s3hlssink: Do not call abort before finishing uploads +- gtk4paintablesink: Support RGBx formats in SW paths +- gtk4paintablesink: default to force-aspect-ratio=false for Paintable +- livesync: Use the actual output buffer duration of gap filler buffers +- livesync: Allow queueing up to latency buffers, also sync on the first buffer and add sync property +- webrtcsink: fix property types for rav1enc AV1 encoder + +gst-libav + +- Fix compatibility with ffmpeg 7 +- avauddec: Fix crash on stop() +- avmux: Fix crash when muxer doesn’t get codecid + +gst-rtsp-server + +- No changes + +gstreamer-vaapi + +- No changes + +gstreamer-sharp + +- No changes + +gst-omx + +- No changes + +gst-python + +- No changes + +gst-editing-services + +- ges: Various leak fixes + +gst-devtools, gst-validate + gst-integration-testsuites + +- validate: Remove G_REGEX_OPTIMIZE usage, helps avoid valgrind issues + +gst-examples + +- No changes + +Development build environment + +- libgudev wrap: add fallback uri +- liblc3 wrap: update to v1.1.1 + +Cerbero build tool and packaging changes in 1.24.6 + +- meson: Backport fix for Glib including a GCC-only flag in the pkg-config file +- libsoup: Workaround build error with GCC 14 +- libltc: Fix Windows build +- webrtc-audio-processing: Fix MinGW build +- libvpx: Also build a shared lib on macOS +- glib: Fix Windows build +- osxrelocator: Fix framework entrypoints being unable to load dylibs +- gobject-introspection, recipe: Fix more fallout from the Meson dylib ID fixes +- cargo-c.recipe: Ensure that we can change the id and rpath + +Contributors to 1.24.6 + +Chris Spoelstra, Edward Hervey, François Laignel, Guillaume Desmottes, Jakub Adam, Jan Schmidt, Jordan Petridis, L. E. Segovia, +Loïc Yhuel, Matthew Waters, Nirbheek Chauhan, Piotr Brzeziński, Robert Mader, Ruben Gonzalez, Sanchayan Maity, Sebastian Dröge, +Sebastian Gross, Seungha Yang, Shengqi Yu, Taruntej Kanakamalla, Tim-Philipp Müller, tomaszmi, Víctor Manuel Jáquez Leal, + +… and many others who have contributed bug reports, translations, sent suggestions or helped testing. Thank you all! + +List of merge requests and issues fixed in 1.24.6 + +- List of Merge Requests applied in 1.24.6 +- List of Issues fixed in 1.24.6 + Schedule for 1.26 Our next major feature release will be 1.26, and 1.25 will be the unstable development version leading up to the stable 1.26
View file
gst-plugins-bad-1.24.5.tar.xz/RELEASE -> gst-plugins-bad-1.24.6.tar.xz/RELEASE
Changed
@@ -1,4 +1,4 @@ -This is GStreamer gst-plugins-bad 1.24.5. +This is GStreamer gst-plugins-bad 1.24.6. The GStreamer team is thrilled to announce a new major feature release of your favourite cross-platform multimedia framework!
View file
gst-plugins-bad-1.24.5.tar.xz/docs/plugins/gst_plugins_cache.json -> gst-plugins-bad-1.24.6.tar.xz/docs/plugins/gst_plugins_cache.json
Changed
@@ -238705,7 +238705,7 @@ "construct": false, "construct-only": false, "controllable": false, - "default": "true", + "default": "false", "mutable": "null", "readable": true, "type": "gboolean", @@ -238953,7 +238953,7 @@ "construct": false, "construct-only": false, "controllable": false, - "default": "true", + "default": "false", "mutable": "null", "readable": true, "type": "gboolean", @@ -239261,7 +239261,7 @@ "construct": false, "construct-only": false, "controllable": false, - "default": "true", + "default": "false", "mutable": "null", "readable": true, "type": "gboolean", @@ -239498,7 +239498,7 @@ "construct": false, "construct-only": false, "controllable": false, - "default": "true", + "default": "false", "mutable": "null", "readable": true, "type": "gboolean",
View file
gst-plugins-bad-1.24.5.tar.xz/ext/avtp/gstavtpsink.c -> gst-plugins-bad-1.24.6.tar.xz/ext/avtp/gstavtpsink.c
Changed
@@ -44,10 +44,10 @@ */ #include <arpa/inet.h> +#include <net/ethernet.h> #include <linux/errqueue.h> #include <linux/if_packet.h> #include <linux/net_tstamp.h> -#include <net/ethernet.h> #include <net/if.h> #include <stdio.h> #include <string.h>
View file
gst-plugins-bad-1.24.5.tar.xz/ext/hls/m3u8.c -> gst-plugins-bad-1.24.6.tar.xz/ext/hls/m3u8.c
Changed
@@ -1317,7 +1317,7 @@ return GST_HLS_MEDIA_TYPE_VIDEO; if (strcmp (type_name, "SUBTITLES") == 0) return GST_HLS_MEDIA_TYPE_SUBTITLES; - if (strcmp (type_name, "CLOSED_CAPTIONS") == 0) + if (strcmp (type_name, "CLOSED-CAPTIONS") == 0) return GST_HLS_MEDIA_TYPE_CLOSED_CAPTIONS; return GST_HLS_MEDIA_TYPE_INVALID; @@ -1406,7 +1406,7 @@ if (media->group_id == NULL || media->name == NULL) goto required_attributes_missing; - if (media->mtype == GST_HLS_MEDIA_TYPE_CLOSED_CAPTIONS) + if (media->mtype == GST_HLS_MEDIA_TYPE_CLOSED_CAPTIONS && media->uri != NULL) goto uri_with_cc; GST_DEBUG ("media: %s, group '%s', name '%s', uri '%s', %s %s %s, lang=%s",
View file
gst-plugins-bad-1.24.5.tar.xz/ext/isac/meson.build -> gst-plugins-bad-1.24.6.tar.xz/ext/isac/meson.build
Changed
@@ -1,4 +1,9 @@ -webrtc_audio_coding_dep = dependency('webrtc-audio-coding-1', required: get_option('isac')) +if cc.get_define('_MSC_VER') != '' + webrtc_audio_coding_dep = dependency('webrtc-audio-coding-1', required: get_option('isac'), default_options: 'default_library=static') +else + webrtc_audio_coding_dep = dependency('webrtc-audio-coding-1', required: get_option('isac')) +endif + if webrtc_audio_coding_dep.found() isac_sources =
View file
gst-plugins-bad-1.24.5.tar.xz/ext/qroverlay/gstbaseqroverlay.c -> gst-plugins-bad-1.24.6.tar.xz/ext/qroverlay/gstbaseqroverlay.c
Changed
@@ -125,10 +125,15 @@ { GstBaseQROverlayPrivate *priv = PRIV (self); + GST_DEBUG_OBJECT (self, "%" GST_PTR_FORMAT, caps); + if (gst_video_info_from_caps (&priv->info, caps)) priv->valid = TRUE; else priv->valid = FALSE; + + /* needs to redraw the overlay as its position depends of the video size */ + gst_mini_object_replace (((GstMiniObject **) & priv->prev_overlay), NULL); } static GstVideoOverlayComposition * @@ -192,6 +197,9 @@ y = (int) (priv->info.height - square_size) * (priv->y_percent / 100); y = GST_ROUND_DOWN_4 (y); + GST_DEBUG_OBJECT (self, "draw overlay at (%d,%d) size: %dx%d", x, y, + info.width, info.height); + rect = gst_video_overlay_rectangle_new_raw (buf, x, y, info.width, info.height, GST_VIDEO_OVERLAY_FORMAT_FLAG_NONE); comp = gst_video_overlay_composition_new (rect);
View file
gst-plugins-bad-1.24.5.tar.xz/ext/srt/gstsrtobject.c -> gst-plugins-bad-1.24.6.tar.xz/ext/srt/gstsrtobject.c
Changed
@@ -447,6 +447,7 @@ break; case PROP_AUTHENTICATION: srtobject->authentication = g_value_get_boolean (value); + break; case PROP_AUTO_RECONNECT: srtobject->auto_reconnect = g_value_get_boolean (value); break; @@ -555,7 +556,10 @@ GST_OBJECT_UNLOCK (srtobject->element); break; case PROP_AUTHENTICATION: + GST_OBJECT_LOCK (srtobject->element); g_value_set_boolean (value, srtobject->authentication); + GST_OBJECT_UNLOCK (srtobject->element); + break; case PROP_AUTO_RECONNECT: GST_OBJECT_LOCK (srtobject->element); g_value_set_boolean (value, srtobject->auto_reconnect);
View file
gst-plugins-bad-1.24.5.tar.xz/ext/svtav1/gstsvtav1enc.c -> gst-plugins-bad-1.24.6.tar.xz/ext/svtav1/gstsvtav1enc.c
Changed
@@ -888,8 +888,13 @@ return GST_FLOW_ERROR; } else if (res != EB_NoErrorEmptyQueue && output_frames && output_buf) { // AV1 has no frame re-ordering so always get the oldest frame - frame = - gst_video_encoder_get_oldest_frame (GST_VIDEO_ENCODER (svtav1enc)); + if (!(frame = + gst_video_encoder_get_oldest_frame (GST_VIDEO_ENCODER + (svtav1enc)))) { + svt_av1_enc_release_out_buffer (&output_buf); + break; + } + if (output_buf->pic_type == EB_AV1_KEY_PICTURE || output_buf->pic_type == EB_AV1_INTRA_ONLY_PICTURE) { GST_VIDEO_CODEC_FRAME_SET_SYNC_POINT (frame);
View file
gst-plugins-bad-1.24.5.tar.xz/ext/vulkan/vkh265dec.c -> gst-plugins-bad-1.24.6.tar.xz/ext/vulkan/vkh265dec.c
Changed
@@ -215,7 +215,7 @@ if (!self->decode_queue) { GST_ELEMENT_ERROR (self, RESOURCE, NOT_FOUND, - ("Failed to create/retrieve vulkan H.264 decoder queue"), (NULL)); + ("Failed to create/retrieve vulkan H.265 decoder queue"), (NULL)); return FALSE; } @@ -223,7 +223,7 @@ VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_KHR); if (!self->decoder) { GST_ELEMENT_ERROR (self, RESOURCE, NOT_FOUND, - ("Failed to create vulkan H.264 decoder"), (NULL)); + ("Failed to create vulkan H.265 decoder"), (NULL)); return FALSE; }
View file
gst-plugins-bad-1.24.5.tar.xz/ext/vulkan/vkupload.c -> gst-plugins-bad-1.24.6.tar.xz/ext/vulkan/vkupload.c
Changed
@@ -685,7 +685,7 @@ cmd_buf = raw->exec->cmd_buf; if (!gst_vulkan_operation_add_frame_barrier (raw->exec, *outbuf, - VK_PIPELINE_STAGE_ALL_COMMANDS_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, + VK_PIPELINE_STAGE_TRANSFER_BIT, VK_ACCESS_TRANSFER_WRITE_BIT, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, NULL)) goto unlock_error;
View file
gst-plugins-bad-1.24.5.tar.xz/ext/webrtcdsp/gstwebrtcdsp.cpp -> gst-plugins-bad-1.24.6.tar.xz/ext/webrtcdsp/gstwebrtcdsp.cpp
Changed
@@ -628,6 +628,9 @@ GST_WEBRTC_ECHO_PROBE_UNLOCK (self->probe); } + config.pipeline.multi_channel_render = (info->channels > 1); + config.pipeline.multi_channel_capture = (probe_info.channels > 1); + /* Setup Filters */ // TODO: expose pre_amplifier
View file
gst-plugins-bad-1.24.5.tar.xz/gst-libs/gst/codecs/gsth264decoder.c -> gst-plugins-bad-1.24.6.tar.xz/gst-libs/gst/codecs/gsth264decoder.c
Changed
@@ -2180,10 +2180,46 @@ if (picture->second_field && picture->other_field && GST_CODEC_PICTURE_FRAME_NUMBER (picture) != GST_CODEC_PICTURE_FRAME_NUMBER (picture->other_field)) { - GstVideoCodecFrame *frame = gst_video_decoder_get_frame (decoder, + GstVideoCodecFrame *second_field = gst_video_decoder_get_frame (decoder, GST_CODEC_PICTURE_FRAME_NUMBER (picture)); + GstVideoCodecFrame *first_field = gst_video_decoder_get_frame (decoder, + GST_CODEC_PICTURE_FRAME_NUMBER (picture->other_field)); - gst_video_decoder_release_frame (decoder, frame); + /* Update frame duration. since we output a frame for two input field + * pictures, output buffer duration should be first-field-duration + + * second-field-duration */ + if (first_field) { + if (GST_CLOCK_TIME_IS_VALID (first_field->pts) && + GST_CLOCK_TIME_IS_VALID (second_field->pts)) { + GstClockTime first_field_end_time = first_field->pts; + GstClockTime frame_end_time = second_field->pts; + GstClockTime frame_duration; + + if (GST_CLOCK_TIME_IS_VALID (first_field->duration)) + first_field_end_time += first_field->duration; + + if (GST_CLOCK_TIME_IS_VALID (second_field->duration)) + frame_end_time += second_field->duration; + + frame_end_time = MAX (first_field_end_time, frame_end_time); + if (frame_end_time >= first_field->pts) { + frame_duration = frame_end_time - first_field->pts; + + GST_LOG_OBJECT (self, "Updating frame duration %" + GST_TIME_FORMAT " -> %" GST_TIME_FORMAT, + GST_TIME_ARGS (first_field->duration), + GST_TIME_ARGS (frame_duration)); + + first_field->duration = frame_duration; + } + } + gst_video_codec_frame_unref (first_field); + } else { + GST_ERROR_OBJECT (self, "Couldn't get first field codec frame %u", + GST_CODEC_PICTURE_FRAME_NUMBER (picture->other_field)); + } + + gst_video_decoder_release_frame (decoder, second_field); } /* C.4.4 */
View file
gst-plugins-bad-1.24.5.tar.xz/gst-libs/gst/cuda/gstcudanvrtc.cpp -> gst-plugins-bad-1.24.6.tar.xz/gst-libs/gst/cuda/gstcudanvrtc.cpp
Changed
@@ -45,10 +45,19 @@ } \ } G_STMT_END; +#define LOAD_OPTIONAL_SYMBOL(name,func) G_STMT_START { \ + if (!g_module_symbol (module, G_STRINGIFY (name), (gpointer *) &vtable->func)) { \ + GST_WARNING ("Failed to load '%s', %s", G_STRINGIFY (name), g_module_error()); \ + return TRUE; \ + } \ +} G_STMT_END; + + /* *INDENT-OFF* */ typedef struct _GstCudaNvrtcVTable { gboolean loaded; + gboolean have_cubin; nvrtcResult (*NvrtcCompileProgram) (nvrtcProgram prog, int numOptions, const char **options); @@ -154,6 +163,7 @@ } vtable = &gst_cuda_nvrtc_vtable; + vtable->have_cubin = FALSE; LOAD_SYMBOL (nvrtcCompileProgram, NvrtcCompileProgram); LOAD_SYMBOL (nvrtcCreateProgram, NvrtcCreateProgram); @@ -162,11 +172,12 @@ LOAD_SYMBOL (nvrtcGetPTXSize, NvrtcGetPTXSize); LOAD_SYMBOL (nvrtcGetProgramLog, NvrtcGetProgramLog); LOAD_SYMBOL (nvrtcGetProgramLogSize, NvrtcGetProgramLogSize); - LOAD_SYMBOL (nvrtcGetCUBINSize, NvrtcGetCUBINSize); - LOAD_SYMBOL (nvrtcGetCUBIN, NvrtcGetCUBIN); - vtable->loaded = TRUE; + LOAD_OPTIONAL_SYMBOL (nvrtcGetCUBINSize, NvrtcGetCUBINSize); + LOAD_OPTIONAL_SYMBOL (nvrtcGetCUBIN, NvrtcGetCUBIN); + vtable->have_cubin = TRUE; + return TRUE; error: @@ -387,6 +398,11 @@ if (!gst_cuda_nvrtc_load_library ()) return nullptr; + if (!gst_cuda_nvrtc_vtable.have_cubin) { + GST_DEBUG ("CUBIN related symbols are unavailable"); + return nullptr; + } + GST_TRACE ("CUDA kernel source \n%s", source); curet = CuDeviceGetAttribute (&major,
View file
gst-plugins-bad-1.24.5.tar.xz/gst-libs/gst/d3d11/hlsl/PSMain_converter.hlsl -> gst-plugins-bad-1.24.6.tar.xz/gst-libs/gst/d3d11/hlsl/PSMain_converter.hlsl
Changed
@@ -1630,6 +1630,32 @@ " }\n" "};\n" "\n" +"class ConverterRange : IConverter\n" +"{\n" +" float4 Execute (float4 sample)\n" +" {\n" +" float3 out_space;\n" +" out_space.x = postCoeff.CoeffX.x * sample.x;\n" +" out_space.y = postCoeff.CoeffY.y * sample.y;\n" +" out_space.z = postCoeff.CoeffZ.z * sample.z;\n" +" out_space += postCoeff.Offset;\n" +" return float4 (clamp (out_space, postCoeff.Min, postCoeff.Max), sample.a);\n" +" }\n" +"};\n" +"\n" +"class ConverterSimple : IConverter\n" +"{\n" +" float4 Execute (float4 sample)\n" +" {\n" +" float3 out_space;\n" +" out_space.x = dot (postCoeff.CoeffX, sample.xyz);\n" +" out_space.y = dot (postCoeff.CoeffY, sample.xyz);\n" +" out_space.z = dot (postCoeff.CoeffZ, sample.xyz);\n" +" out_space += postCoeff.Offset;\n" +" return float4 (clamp (out_space, postCoeff.Min, postCoeff.Max), sample.a);\n" +" }\n" +"};\n" +"\n" "class ConverterGamma : IConverter\n" "{\n" " float4 Execute (float4 sample)\n"
View file
gst-plugins-bad-1.24.5.tar.xz/gst-libs/gst/va/gstvaallocator.c -> gst-plugins-bad-1.24.6.tar.xz/gst-libs/gst/va/gstvaallocator.c
Changed
@@ -543,6 +543,17 @@ return FALSE; } +static void +_close_fds (VADRMPRIMESurfaceDescriptor * desc) +{ +#ifndef G_OS_WIN32 + for (guint32 i = 0; i < desc->num_objects; i++) { + gint fd = desc->objectsi.fd; + close (fd); + } +#endif +} + static gboolean _va_create_surface_and_export_to_dmabuf (GstVaDisplay * display, guint usage_hint, guint64 * modifiers, guint num_modifiers, @@ -628,6 +639,8 @@ failed: { + /* Free DMAbufs on failure */ + _close_fds (&desc); va_destroy_surfaces (display, &surface, 1); return FALSE; } @@ -660,6 +673,8 @@ NULL, 0, &info, &surface, &desc)) return DRM_FORMAT_MOD_INVALID; + /* Close the fds we won't be using */ + _close_fds (&desc); va_destroy_surfaces (display, &surface, 1); return desc.objects0.drm_format_modifier;
View file
gst-plugins-bad-1.24.5.tar.xz/gst-libs/gst/va/gstvadisplay.c -> gst-plugins-bad-1.24.6.tar.xz/gst-libs/gst/va/gstvadisplay.c
Changed
@@ -480,7 +480,7 @@ if (priv->driver_major < major) return FALSE; - if (priv->driver_minor < minor) + if (priv->driver_major == major && priv->driver_minor < minor) return FALSE; return TRUE;
View file
gst-plugins-bad-1.24.5.tar.xz/gst-libs/gst/wayland/gstwlwindow.c -> gst-plugins-bad-1.24.6.tar.xz/gst-libs/gst/wayland/gstwlwindow.c
Changed
@@ -456,6 +456,8 @@ GstVideoRectangle src = { 0, }; GstVideoRectangle dst = { 0, }; GstVideoRectangle res; + int wp_src_width; + int wp_src_height; switch (priv->buffer_transform) { case WL_OUTPUT_TRANSFORM_NORMAL: @@ -464,6 +466,8 @@ case WL_OUTPUT_TRANSFORM_FLIPPED_180: src.w = priv->scaled_width; src.h = priv->video_height; + wp_src_width = priv->video_width; + wp_src_height = priv->video_height; break; case WL_OUTPUT_TRANSFORM_90: case WL_OUTPUT_TRANSFORM_270: @@ -471,7 +475,11 @@ case WL_OUTPUT_TRANSFORM_FLIPPED_270: src.w = priv->video_height; src.h = priv->scaled_width; + wp_src_width = priv->video_height; + wp_src_height = priv->video_width; break; + default: + g_assert_not_reached (); } dst.w = priv->render_rectangle.w; @@ -481,8 +489,8 @@ if (priv->video_viewport) { gst_video_center_rect (&src, &dst, &res, TRUE); wp_viewport_set_source (priv->video_viewport, wl_fixed_from_int (0), - wl_fixed_from_int (0), wl_fixed_from_int (priv->video_width), - wl_fixed_from_int (priv->video_height)); + wl_fixed_from_int (0), wl_fixed_from_int (wp_src_width), + wl_fixed_from_int (wp_src_height)); wp_viewport_set_destination (priv->video_viewport, res.w, res.h); } else { gst_video_center_rect (&src, &dst, &res, FALSE);
View file
gst-plugins-bad-1.24.5.tar.xz/gst-plugins-bad.doap -> gst-plugins-bad-1.24.6.tar.xz/gst-plugins-bad.doap
Changed
@@ -35,6 +35,16 @@ <release> <Version> + <revision>1.24.6</revision> + <branch>1.24</branch> + <name></name> + <created>2024-07-29</created> + <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.24.6.tar.xz" /> + </Version> + </release> + + <release> + <Version> <revision>1.24.5</revision> <branch>1.24</branch> <name></name>
View file
gst-plugins-bad-1.24.5.tar.xz/gst/rtmp2/rtmp/amf.c -> gst-plugins-bad-1.24.6.tar.xz/gst/rtmp2/rtmp/amf.c
Changed
@@ -903,7 +903,7 @@ GST_TRACE ("Starting parse with %" G_GSIZE_FORMAT " bytes", parser.size); node = parse_value (&parser); - if (gst_amf_node_get_type (node) == GST_AMF_TYPE_INVALID) { + if (!node || gst_amf_node_get_type (node) == GST_AMF_TYPE_INVALID) { GST_ERROR ("invalid value"); goto out; } @@ -946,13 +946,13 @@ GST_TRACE ("Starting parse with %" G_GSIZE_FORMAT " bytes", parser.size); node1 = parse_value (&parser); - if (gst_amf_node_get_type (node1) != GST_AMF_TYPE_STRING) { + if (!node1 || gst_amf_node_get_type (node1) != GST_AMF_TYPE_STRING) { GST_ERROR ("no command name"); goto out; } node2 = parse_value (&parser); - if (gst_amf_node_get_type (node2) != GST_AMF_TYPE_NUMBER) { + if (!node2 || gst_amf_node_get_type (node2) != GST_AMF_TYPE_NUMBER) { GST_ERROR ("no transaction ID"); goto out; }
View file
gst-plugins-bad-1.24.5.tar.xz/meson.build -> gst-plugins-bad-1.24.6.tar.xz/meson.build
Changed
@@ -1,5 +1,5 @@ project('gst-plugins-bad', 'c', 'cpp', - version : '1.24.5', + version : '1.24.6', meson_version : '>= 1.1', default_options : 'warning_level=1', 'buildtype=debugoptimized' )
View file
gst-plugins-bad-1.24.5.tar.xz/po/gst-plugins-bad-1.0.pot -> gst-plugins-bad-1.24.6.tar.xz/po/gst-plugins-bad-1.0.pot
Changed
@@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: gst-plugins-bad-1.24.5\n" +"Project-Id-Version: gst-plugins-bad-1.24.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-06-20 12:56+0100\n" +"POT-Creation-Date: 2024-07-29 16:42+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
View file
gst-plugins-bad-1.24.5.tar.xz/po/gst-plugins-bad.pot -> gst-plugins-bad-1.24.6.tar.xz/po/gst-plugins-bad.pot
Changed
@@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: gst-plugins-bad-1.24.5\n" +"Project-Id-Version: gst-plugins-bad-1.24.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-06-20 12:56+0100\n" +"POT-Creation-Date: 2024-07-29 16:42+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
View file
gst-plugins-bad-1.24.5.tar.xz/sys/applemedia/avfdeviceprovider.m -> gst-plugins-bad-1.24.6.tar.xz/sys/applemedia/avfdeviceprovider.m
Changed
@@ -48,6 +48,8 @@ // https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/886 dm_class->probe = gst_avf_device_provider_probe; + gst_avf_video_src_debug_init (); + gst_device_provider_class_set_static_metadata (dm_class, "AVF Device Provider", "Source/Video", "List and provide AVF source devices",
View file
gst-plugins-bad-1.24.5.tar.xz/sys/applemedia/avfvideosrc.h -> gst-plugins-bad-1.24.6.tar.xz/sys/applemedia/avfvideosrc.h
Changed
@@ -83,6 +83,7 @@ GType gst_avf_video_src_get_type (void); +void gst_avf_video_src_debug_init (void); GstCaps *gst_av_capture_device_get_caps (AVCaptureDevice *device, AVCaptureVideoDataOutput *output, GstAVFVideoSourceOrientation orientation); G_END_DECLS
View file
gst-plugins-bad-1.24.5.tar.xz/sys/applemedia/avfvideosrc.m -> gst-plugins-bad-1.24.6.tar.xz/sys/applemedia/avfvideosrc.m
Changed
@@ -1181,6 +1181,18 @@ static void gst_avf_video_src_set_context (GstElement * element, GstContext * context); +void +gst_avf_video_src_debug_init (void) +{ + static gsize _init = 0; + + if (g_once_init_enter (&_init)) { + GST_DEBUG_CATEGORY_INIT (gst_avf_video_src_debug, "avfvideosrc", + 0, "iOS/MacOS AVFoundation video source"); + g_once_init_leave (&_init, 1); + } +} + static void gst_avf_video_src_class_init (GstAVFVideoSrcClass * klass) { @@ -1277,8 +1289,7 @@ 0, G_MAXUINT, 0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); #endif - GST_DEBUG_CATEGORY_INIT (gst_avf_video_src_debug, "avfvideosrc", - 0, "iOS/MacOS AVFoundation video source"); + gst_avf_video_src_debug_init (); gst_type_mark_as_plugin_api (GST_TYPE_AVF_VIDEO_SOURCE_POSITION, 0); gst_type_mark_as_plugin_api (GST_TYPE_AVF_VIDEO_SOURCE_ORIENTATION, 0);
View file
gst-plugins-bad-1.24.5.tar.xz/sys/applemedia/vtenc.c -> gst-plugins-bad-1.24.6.tar.xz/sys/applemedia/vtenc.c
Changed
@@ -1720,7 +1720,7 @@ } CFNumberGetValue (value, kCFNumberSInt32Type, &frames); - if (self->latency_frames == -1 || self->latency_frames != frames) { + if (MAX (self->latency_frames, frames) != self->latency_frames) { self->latency_frames = frames; if (self->video_info.fps_d == 0 || self->video_info.fps_n == 0) { /* FIXME: Assume 25fps. This is better than reporting no latency at
View file
gst-plugins-bad-1.24.5.tar.xz/sys/d3d11/gstd3d11compositor.cpp -> gst-plugins-bad-1.24.6.tar.xz/sys/d3d11/gstd3d11compositor.cpp
Changed
@@ -1544,6 +1544,9 @@ } } } + + self->clear_color2 = self->clear_color0; + self->clear_color2.color03 = 0.0; } static gboolean
View file
gst-plugins-bad-1.24.5.tar.xz/sys/d3d12/gstd3d12compositor.cpp -> gst-plugins-bad-1.24.6.tar.xz/sys/d3d12/gstd3d12compositor.cpp
Changed
@@ -1895,6 +1895,9 @@ } } } + + priv->clear_color2 = priv->clear_color0; + priv->clear_color2.color03 = 0.0; } static gboolean
View file
gst-plugins-bad-1.24.5.tar.xz/sys/d3d12/gstd3d12converter.cpp -> gst-plugins-bad-1.24.6.tar.xz/sys/d3d12/gstd3d12converter.cpp
Changed
@@ -884,7 +884,7 @@ } auto in_trc = in_info->colorimetry.transfer; - auto out_trc = in_info->colorimetry.transfer; + auto out_trc = out_info->colorimetry.transfer; auto gamma_dec_table = gst_d3d12_converter_get_gamma_dec_table (in_trc); auto gamma_enc_table = gst_d3d12_converter_get_gamma_enc_table (out_trc);
View file
gst-plugins-bad-1.24.5.tar.xz/sys/qsv/gstqsvav1enc.cpp -> gst-plugins-bad-1.24.6.tar.xz/sys/qsv/gstqsvav1enc.cpp
Changed
@@ -703,6 +703,9 @@ max_resolution.height = gst_qsv_resolutionsi.height; } + if (max_resolution.width == 0 || max_resolution.height == 0) + return; + GST_INFO ("Maximum supported resolution: %dx%d", max_resolution.width, max_resolution.height);
View file
gst-plugins-bad-1.24.5.tar.xz/sys/qsv/gstqsvh264enc.cpp -> gst-plugins-bad-1.24.6.tar.xz/sys/qsv/gstqsvh264enc.cpp
Changed
@@ -2174,6 +2174,9 @@ max_resolution.height = gst_qsv_resolutionsi.height; } + if (max_resolution.width == 0 || max_resolution.height == 0) + return; + GST_INFO ("Maximum supported resolution: %dx%d", max_resolution.width, max_resolution.height);
View file
gst-plugins-bad-1.24.5.tar.xz/sys/qsv/gstqsvh265enc.cpp -> gst-plugins-bad-1.24.6.tar.xz/sys/qsv/gstqsvh265enc.cpp
Changed
@@ -1532,6 +1532,9 @@ max_resolution.height = gst_qsv_resolutionsi.height; } + if (max_resolution.width == 0 || max_resolution.height == 0) + return; + GST_INFO ("Maximum supported resolution: %dx%d", max_resolution.width, max_resolution.height);
View file
gst-plugins-bad-1.24.5.tar.xz/sys/qsv/gstqsvjpegenc.cpp -> gst-plugins-bad-1.24.6.tar.xz/sys/qsv/gstqsvjpegenc.cpp
Changed
@@ -439,6 +439,9 @@ max_resolution.height = gst_qsv_resolutionsi.height; } + if (max_resolution.width == 0 || max_resolution.height == 0) + return; + GST_INFO ("Maximum supported resolution: %dx%d", max_resolution.width, max_resolution.height);
View file
gst-plugins-bad-1.24.5.tar.xz/sys/qsv/gstqsvvp9enc.cpp -> gst-plugins-bad-1.24.6.tar.xz/sys/qsv/gstqsvvp9enc.cpp
Changed
@@ -922,6 +922,9 @@ max_resolution.height = gst_qsv_resolutionsi.height; } + if (max_resolution.width == 0 || max_resolution.height == 0) + return; + GST_INFO ("Maximum supported resolution: %dx%d", max_resolution.width, max_resolution.height);
View file
gst-plugins-bad-1.24.5.tar.xz/sys/va/gstvabase.c -> gst-plugins-bad-1.24.6.tar.xz/sys/va/gstvabase.c
Changed
@@ -39,39 +39,33 @@ _try_import_dmabuf_unlocked (GstVaBufferImporter * importer, GstBuffer * inbuf) { GstVideoMeta *meta; - GstVideoInfo in_info = *importer->in_info; GstVideoInfoDmaDrm drm_info = *importer->in_drm_info; GstMemory *memsGST_VIDEO_MAX_PLANES; guint i, n_planes, usage_hint; gsize offsetGST_VIDEO_MAX_PLANES; uintptr_t fdGST_VIDEO_MAX_PLANES; - gsize plane_sizeGST_VIDEO_MAX_PLANES; - GstVideoAlignment align = { 0, }; /* This will eliminate most non-dmabuf out there */ if (!gst_is_dmabuf_memory (gst_buffer_peek_memory (inbuf, 0))) return FALSE; - n_planes = GST_VIDEO_INFO_N_PLANES (&in_info); + n_planes = GST_VIDEO_INFO_N_PLANES (&drm_info.vinfo); meta = gst_buffer_get_video_meta (inbuf); /* Update video info importerd on video meta */ if (meta) { - GST_VIDEO_INFO_WIDTH (&in_info) = meta->width; - GST_VIDEO_INFO_HEIGHT (&in_info) = meta->height; + GST_VIDEO_INFO_WIDTH (&drm_info.vinfo) = meta->width; + GST_VIDEO_INFO_HEIGHT (&drm_info.vinfo) = meta->height; g_assert (n_planes == meta->n_planes); for (i = 0; i < n_planes; i++) { - GST_VIDEO_INFO_PLANE_OFFSET (&in_info, i) = meta->offseti; - GST_VIDEO_INFO_PLANE_STRIDE (&in_info, i) = meta->stridei; + GST_VIDEO_INFO_PLANE_OFFSET (&drm_info.vinfo, i) = meta->offseti; + GST_VIDEO_INFO_PLANE_STRIDE (&drm_info.vinfo, i) = meta->stridei; } } - if (!gst_video_info_align_full (&in_info, &align, plane_size)) - return FALSE; - /* Find and validate all memories */ for (i = 0; i < n_planes; i++) { guint length; @@ -79,7 +73,7 @@ gsize mem_skip; if (!gst_buffer_find_memory (inbuf, - GST_VIDEO_INFO_PLANE_OFFSET (&in_info, i), plane_sizei, &mem_idx, + GST_VIDEO_INFO_PLANE_OFFSET (&drm_info.vinfo, i), 1, &mem_idx, &length, &mem_skip)) return FALSE;
View file
gst-plugins-bad-1.24.5.tar.xz/sys/va/plugin.c -> gst-plugins-bad-1.24.6.tar.xz/sys/va/plugin.c
Changed
@@ -174,6 +174,13 @@ GHashTableIter iter; gpointer key, value; + if (GST_VA_DISPLAY_IS_IMPLEMENTATION (device->display, INTEL_I965) + && g_getenv ("GST_VA_ALL_DRIVERS") == NULL) { + gst_plugin_add_status_warning (plugin, + "The Intel i965 VA driver is blocklisted for encoding, use GST_VA_ALL_DRIVERS to overwrite."); + return; + } + g_hash_table_iter_init (&iter, encoders); while (g_hash_table_iter_next (&iter, &key, &value)) { guint32 codec = *((gint64 *) key);
View file
gst-plugins-bad-1.24.5.tar.xz/tests/check/elements/lc3.c -> gst-plugins-bad-1.24.6.tar.xz/tests/check/elements/lc3.c
Changed
@@ -100,71 +100,6 @@ GST_PAD_ALWAYS, GST_STATIC_CAPS (RAW_AUDIO_CAPS_STRING)); -/* a fixed array of the size `frame-bytes` (i.e. 200) - * contains the first few bytes of the encoded output - * for an input buffer containing all 1's e.g. {'1','1','1','1' ....} - */ -static guint8 lc3_encoded_buff_48K200 = { - 0x16, 0x34, 0x7b, 0x8f, 0x5f, 0xd4, 0xf0, 0xa8, 0x34, 0x7f, 0xd1, 0xc7, - 0x55, 0xdc, 0x1a, 0x85, 0x77, 0x8d, 0xb1, 0xb7, 0x78, 0x2c, 0x20, 0x88, - 0x87, 0xd3, 0x4d, 0xb7, 0xf5, 0x1a, 0x15, 0x7d, 0xc1, 0xde, 0x25, 0xca, - 0x94, 0x80, 0x1d, 0x95, 0xbd, 0xf3, 0x50, 0x01, 0x64, 0xe2, 0x60, 0x28, - 0xec, 0xd3, 0xf6, 0x72, 0x2b, 0xf2, 0x6d, 0xf0, 0x83, 0xb4, 0x68, 0x97, - 0x7e, 0x6f, 0x49, 0xc6, 0x38, 0x79, 0x9e, 0xa8, 0x49, 0xab, 0xfc, 0xca, - 0xb8, 0x5c, 0xc6, 0xa5, 0xd9, 0x6e, 0xb4, 0xd2, 0x6a, 0x79, 0x17, 0x29, - 0xac, 0x70, 0x32, 0x6b, 0x13, 0x1b, 0x65, 0xdf, 0xc8, 0x6e, 0x81, 0xa4, - 0xe2, 0x8e, 0xd6, 0x4d, 0xe7, 0x30, 0xdc, 0x02, 0x12, 0xbb, 0x8c, 0x4d, - 0x11, 0x82, 0x66, 0xfa, 0x23, 0xa7, 0xcc, 0xd0, 0x35, 0x2b, 0x1d, 0x30, - 0x09, 0x52, 0x35, 0xf1, 0x3f, 0xc9, 0xb4, 0x52, 0xb5, 0x2b, 0x52, 0xb5, - 0x2b, 0x52, 0xb5, 0x2b, 0x52, 0xb5, 0x2b, 0x52, 0xb5, 0x2b, 0x52, 0xb5, - 0x2b, 0x52, 0xb5, 0x2b, 0x52, 0xb5, 0x55, 0xa9, 0x5a, 0x94, 0x6a, 0x29, - 0x8d, 0x59, 0x4d, 0xd6, 0x75, 0x53, 0x59, 0xd4, 0x4b, 0x64, 0x72, 0xa6, - 0x9d, 0x19, 0x4c, 0xae, 0xea, 0xd1, 0xc5, 0x91, 0x37, 0x50, 0x0e, 0xea, - 0xfb, 0xbb, 0x6b, 0x49, 0xee, 0xe3, 0x91, 0x96, 0xe2, 0x7a, 0x39, 0x84, - 0x1d, 0x17, 0xb8, 0x92, 0x34, 0x3c, 0x86, 0x3c -}; - -static guint8 lc3_encoded_buff_48K_7500us200 = { - 0x08, 0x90, 0x6b, 0x8b, 0x5d, 0x8e, 0x39, 0x55, 0x6c, 0x78, 0xb9, 0xed, - 0x00, 0x10, 0xeb, 0x7a, 0x67, 0x97, 0x4c, 0x59, 0xf4, 0xde, 0x4e, 0xc6, - 0x21, 0x9f, 0xf0, 0x83, 0x63, 0xd1, 0xa3, 0xe2, 0x28, 0x11, 0x30, 0xa0, - 0xf9, 0xa7, 0x6c, 0x38, 0x4c, 0xfb, 0xf0, 0xc3, 0x68, 0x70, 0xa3, 0x6e, - 0x3c, 0x4f, 0x8b, 0xd1, 0xd9, 0x67, 0x9b, 0x2c, 0x2b, 0x03, 0xca, 0xc8, - 0xa6, 0x62, 0xb1, 0xb1, 0xe2, 0x8b, 0x29, 0x5e, 0xd2, 0x6e, 0xaf, 0x3e, - 0xc3, 0x04, 0x0f, 0x16, 0xc8, 0xb4, 0xaf, 0x37, 0x3c, 0x64, 0x99, 0x52, - 0xb8, 0x55, 0x0e, 0x23, 0x6f, 0xf2, 0x1c, 0xc1, 0x10, 0xad, 0xd2, 0x41, - 0x55, 0x2a, 0xad, 0x2a, 0x96, 0xab, 0x4a, 0xa5, 0x55, 0xaa, 0xa5, 0x55, - 0xaa, 0xaa, 0xaa, 0xad, 0x56, 0x95, 0x56, 0xab, 0x4a, 0xd5, 0xab, 0x4a, - 0xd5, 0x68, 0x8b, 0x99, 0x5e, 0xaa, 0x5c, 0x60, 0x83, 0xcd, 0x99, 0x1b, - 0x69, 0xf7, 0xd0, 0xfa, 0x04, 0xeb, 0xb8, 0x24, 0xf1, 0x59, 0x00, 0xca, - 0x20, 0xe8, 0x38, 0x3c, 0x54, 0xac, 0x08, 0x90, 0x6b, 0x8b, 0x5d, 0x8e, - 0x39, 0x55, 0x6c, 0x78, 0xb9, 0xed, 0x00, 0x10, 0xeb, 0x7a, 0x67, 0x97, - 0x4c, 0x59, 0xf4, 0xde, 0x4e, 0xc6, 0x21, 0x9f, 0xf0, 0x83, 0x63, 0xd1, - 0xa3, 0xe2, 0x28, 0x11, 0x30, 0xa0, 0xf9, 0xa7, 0x6c, 0x38, 0x4c, 0xfb, - 0xf0, 0xc3, 0x68, 0x70, 0xa3, 0x6e, 0x3c, 0x4f -}; - - -static guint8 lc3_encoded_buff_24K200 = { - 0x08, 0xb8, 0xd1, 0xf2, 0xa8, 0x25, 0x52, 0x16, 0x75, 0x74, 0xab, 0x3d, - 0xae, 0x0f, 0xed, 0x0a, 0xfe, 0x7a, 0xf4, 0x16, 0x85, 0x14, 0x6f, 0x12, - 0x42, 0x6f, 0xdc, 0xea, 0x7e, 0x55, 0x01, 0x0c, 0x7d, 0x70, 0x91, 0x9d, - 0x42, 0xd9, 0xc2, 0x1e, 0x37, 0xdd, 0x27, 0xb6, 0x6e, 0x21, 0x48, 0xc0, - 0x6d, 0xe8, 0x56, 0xe2, 0x62, 0x56, 0x5b, 0x89, 0x0b, 0x5d, 0x4c, 0xc9, - 0x1e, 0x37, 0xe8, 0x7f, 0xb3, 0xa4, 0x32, 0xee, 0xce, 0x41, 0x26, 0x46, - 0x75, 0x49, 0xec, 0xdd, 0x7e, 0xed, 0x10, 0x84, 0xc8, 0x74, 0xac, 0xbc, - 0xff, 0x7b, 0x3b, 0x9e, 0xf8, 0xb7, 0xee, 0x26, 0xe6, 0xa5, 0xc0, 0xfb, - 0x4b, 0x2f, 0x90, 0x4c, 0x68, 0x7d, 0x57, 0x2e, 0x5a, 0xba, 0xaa, 0x45, - 0xf3, 0xba, 0xae, 0x5c, 0x91, 0xa8, 0xa2, 0x13, 0x74, 0x6c, 0xa2, 0x15, - 0x25, 0x6e, 0xb8, 0x26, 0x79, 0x8c, 0x3a, 0xe5, 0x55, 0x55, 0xcd, 0xb4, - 0xe5, 0x24, 0xd3, 0xfa, 0x89, 0xb0, 0x33, 0x59, 0x55, 0x45, 0x19, 0x92, - 0xad, 0xb2, 0xdb, 0x63, 0xc8, 0x19, 0xae, 0xb2, 0x0e, 0x23, 0xb9, 0x15, - 0x37, 0x16, 0xa4, 0xbc, 0xcc, 0xf4, 0x48, 0x4a, 0x50, 0x8e, 0x20, 0xad, - 0x8c, 0xb5, 0x9c, 0x45, 0xcd, 0xcc, 0xea, 0xd4, 0xc9, 0xa0, 0xc9, 0xac, - 0x57, 0x18, 0x10, 0x9c, 0xc3, 0x1d, 0x2d, 0xb2, 0x87, 0x0c, 0x3b, 0xe9, - 0xe3, 0xbf, 0x24, 0x08, 0x47, 0x07, 0x15, 0xde -}; - static GstElement * setup_lc3enc (GstStaticPadTemplate * srctmpl, GstStaticPadTemplate * sinktmpl) { @@ -215,8 +150,7 @@ } static void -enc_buffer_test (gint rate, gint channels, gint nbuffers, int frame_dur_us, - guint8 * expected_output) +enc_buffer_test (gint rate, gint channels, gint nbuffers, int frame_dur_us) { GstElement *lc3enc; GstBuffer *inbuffer, *outbuffer; @@ -288,27 +222,17 @@ for (i = 0; i < num_buffers; ++i) { GstMapInfo map; gsize size; - guint8 *data; outbuffer = GST_BUFFER (buffers->data); fail_if (outbuffer == NULL); gst_buffer_map (outbuffer, &map, GST_MAP_READ); - data = map.data; size = map.size; /* check the size of each out buffer per channel * is same as frame_bytes */ fail_unless_equals_int (size / channels, frame_bytes); - if (i == 0) { - /* verify the first channel data */ - fail_unless (0 == memcmp (data, expected_output, frame_bytes)); - - /* verify the first channel data */ - fail_unless (0 == memcmp (data + (frame_bytes * (channels - 1)), - expected_output, frame_bytes)); - } gst_buffer_unmap (outbuffer, &map); @@ -396,21 +320,21 @@ GST_START_TEST (test_48k_8ch_10000us) { - enc_buffer_test (48000, 8, 100, 10000, lc3_encoded_buff_48K); + enc_buffer_test (48000, 8, 100, 10000); } GST_END_TEST; GST_START_TEST (test_48k_8ch_7500us) { - enc_buffer_test (48000, 8, 100, 7500, lc3_encoded_buff_48K_7500us); + enc_buffer_test (48000, 8, 100, 7500); } GST_END_TEST; GST_START_TEST (test_24k_4ch_10000us) { - enc_buffer_test (24000, 4, 150, 10000, lc3_encoded_buff_24K); + enc_buffer_test (24000, 4, 150, 10000); } GST_END_TEST;
View file
gst-plugins-bad-1.24.5.tar.xz/tests/check/libs/vkvideodecode.c -> gst-plugins-bad-1.24.6.tar.xz/tests/check/libs/vkvideodecode.c
Changed
@@ -129,7 +129,7 @@ gst_vulkan_image_buffer_pool_config_set_allocation_params (config, usage, VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT, - VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR, VK_ACCESS_TRANSFER_WRITE_BIT); + VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR, VK_ACCESS_NONE); gst_vulkan_image_buffer_pool_config_set_decode_caps (config, profile_caps); gst_caps_unref (profile_caps); @@ -186,8 +186,7 @@ VK_PIPELINE_STAGE_ALL_COMMANDS_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT); gst_vulkan_operation_add_frame_barrier (exec, pic->out, - VK_PIPELINE_STAGE_ALL_COMMANDS_BIT, - VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, + VK_PIPELINE_STAGE_TRANSFER_BIT, VK_ACCESS_TRANSFER_READ_BIT, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, NULL); barriers = gst_vulkan_operation_retrieve_image_barriers (exec);
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.