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