Changes of Revision 4

gstreamer-plugins-bad-codecs.changes Changed
x
 
1
@@ -1,4 +1,10 @@
2
 -------------------------------------------------------------------
3
+Fri Feb  4 20:56:11 UTC 2022 - Bjørn Lie <zaitor@opensuse.org>
4
+
5
+- Update to version 1.18.6
6
+- Add explicit gstreamer-plugins-bad Requires.
7
+
8
+-------------------------------------------------------------------
9
 Sun Jan 30 15:59:49 UTC 2022 - Bjørn Lie <zaitor@opensuse.org>
10
 
11
 - Limit Obsolete of orig-addon to version 1.18.5 and older.
12
gstreamer-plugins-bad-codecs.spec Changed
20
 
1
@@ -7,7 +7,7 @@
2
 %define _version 1.18.0
3
 
4
 Name:           gstreamer-plugins-bad-codecs
5
-Version:        1.18.5
6
+Version:        1.18.6
7
 Release:        0
8
 Summary:        Codecs/plugins for gstreamer-plugins-bad
9
 License:        LGPL-2.1-or-later
10
@@ -43,7 +43,8 @@
11
 BuildRequires:  pkgconfig(x265)
12
 
13
 Provides:       gstreamer-plugins-bad-orig-addon = %{version}
14
-Obsoletes:      gstreamer-plugins-bad-orig-addon <= 1.18.5
15
+Obsoletes:      gstreamer-plugins-bad-orig-addon < 1.18.6
16
+Requires:       gstreamer-plugins-bad >= %{_version}
17
 Supplements:    gstreamer-plugins-bad
18
 
19
 %description
20
gst-plugins-bad-1.18.6.tar.xz/.gitignore Added
18
 
1
@@ -0,0 +1,16 @@
2
+*~
3
+
4
+Build
5
+*.user
6
+*.suo
7
+*.ipch
8
+*.sdf
9
+*.opensdf
10
+*.DS_Store
11
+
12
+# Meson
13
+/build
14
+/subprojects
15
+
16
+# hotdoc
17
+docs/hotdoc/libs/generated_sitemap.txt
18
gst-plugins-bad-1.18.6.tar.xz/.gitlab-ci.yml Added
3
 
1
@@ -0,0 +1,1 @@
2
+include: "https://gitlab.freedesktop.org/gstreamer/gst-ci/raw/1.18/gitlab/ci_template.yml"
3
gst-plugins-bad-1.18.5.tar.xz/ChangeLog -> gst-plugins-bad-1.18.6.tar.xz/ChangeLog Changed
179
 
1
@@ -1,3 +1,177 @@
2
+=== release 1.18.6 ===
3
+
4
+2022-02-02 15:07:37 +0000  Tim-Philipp Müller <tim@centricular.com>
5
+
6
+   * ChangeLog:
7
+   * NEWS:
8
+   * RELEASE:
9
+   * gst-plugins-bad.doap:
10
+   * meson.build:
11
+     Release 1.18.6
12
+
13
+2022-01-27 17:56:29 +0100  Jakub Adam <jakub.adam@collabora.com>
14
+
15
+   * ext/webrtc/gstwebrtcbin.c:
16
+     webrtcbin: Chain up to parent constructed method
17
+     Failing to do so makes GstWebRTCBin invisible to the leaks tracer.
18
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2570>
19
+
20
+2022-01-11 13:21:55 -0500  Dave Piché <dave.piche@motorolasolutions.com>
21
+
22
+   * ext/webrtc/gstwebrtcbin.c:
23
+     webrtc: fix log error message in function gst_webrtc_bin_set_local_description
24
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2569>
25
+
26
+2022-01-13 11:31:55 +0000  Tim-Philipp Müller <tim@centricular.com>
27
+
28
+   * gst/mxf/mxfvanc.c:
29
+     mxfdemux: don't error out if VANC track only contains packets we don't handle
30
+     If the VANC track does contain packets, but we skip over all packets, just
31
+     treat it the same as if there hadn't been any packets at all and send a
32
+     GAP event instead of erroring out with "Failed to handle essence element".
33
+     We would error out because when we reach the end of the loop without having
34
+     found a closed caption packet the flow return variable is still FLOW_ERROR
35
+     which is what it has been initialised to.
36
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2568>
37
+
38
+2022-01-10 15:24:13 +0800  Mengkejiergeli Ba <mengkejiergeli.ba@intel.com>
39
+
40
+   * gst-libs/gst/codecparsers/gstav1parser.h:
41
+     av1parser: Fix data type of film grain param
42
+     Fix cb_offset and cr_offset data type from guint8 to guint16. According
43
+     to spec, cb_offset and cr_offset are 9 bit long, while guint8 can cause
44
+     interger overflow, and thus change to guint16.
45
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2567>
46
+
47
+2021-12-29 21:29:02 +0100  Rafał Dzięgiel <rafostar.github@gmail.com>
48
+
49
+   * ext/assrender/gstassrender.c:
50
+     assrender: Support RFC8081 mime types
51
+     Old "application/*" are now as per RFC8081 deprecated in favor of
52
+     new "font/*" mime types. Some new encoders are already using the
53
+     updated mime types. We need to also add them to the support list
54
+     in order for assrender to correctly identify them as fonts.
55
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2566>
56
+
57
+2021-01-20 12:04:48 +0100  Rafał Dzięgiel <rafostar.github@gmail.com>
58
+
59
+   * ext/assrender/gstassrender.c:
60
+     assrender: Add "application/vnd.ms-opentype" mimetype detection
61
+     The "application/vnd.ms-opentype" mimetype is commonly used in many fonts attached in the matroska videos.
62
+     Assrender should treat it as compatible without the need of parsing the file extension.
63
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2566>
64
+
65
+2021-12-29 21:28:56 +0100  Rafał Dzięgiel <rafostar.github@gmail.com>
66
+
67
+   * ext/assrender/gstassrender.c:
68
+     assrender: Handle ".ttc" attachment extension
69
+     TTC stands for "TrueType Collection" file. We can pass it
70
+     into libass as any other attachment. Add it to the supported
71
+     extensions list, so the fonts it contains will be used.
72
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2566>
73
+
74
+2021-12-11 11:33:39 -0300  Thibault Saunier <tsaunier@igalia.com>
75
+
76
+   * docs/plugins/gst_plugins_cache.json:
77
+   * ext/soundtouch/gstpitch.cc:
78
+     pitch: Specify layout as required for negotiation
79
+     There are cases where it might negotiate 'non-interleaved' while it
80
+     is wrong.
81
+     ```
82
+     gst-launch-1.0 audiotestsrc !  "audio/x-raw, format=(string)F32LE, layout=(string)non-interleaved" ! audioconvert ! audioresample ! pitch tempo=1.2 ! audioconvert ! "audio/x-raw,format=S16LE" ! fakesink
83
+     Setting pipeline to PAUSED ...
84
+     Pipeline is PREROLLING ...
85
+     (gst-launch-1.0:3029628): GStreamer-Audio-CRITICAL **: 11:42:22.477: gst_audio_buffer_map: assertion '(!meta && info->layout == GST_AUDIO_LAYOUT_INTERLEAVED) || (meta && info->layout == meta->info.layout)' failed
86
+     ERROR: from element /GstPipeline:pipeline0/GstAudioConvert:audioconvert1: The stream is in the wrong format.
87
+     Additional debug info:
88
+     ../subprojects/gst-plugins-base/gst/audioconvert/gstaudioconvert.c(876): gst_audio_convert_transform (): /GstPipeline:pipeline0/GstAudioConvert:audioconvert1:
89
+     failed to map input buffer
90
+     ERROR: pipeline doesn't want to preroll.
91
+     ERROR: from element /GstPipeline:pipeline0/GstAudioTestSrc:audiotestsrc0: Internal data stream error.
92
+     Setting pipeline to NULL ...
93
+     Additional debug info:
94
+     ../subprojects/gstreamer/libs/gst/base/gstbasesrc.c(3127): gst_base_src_loop (): /GstPipeline:pipeline0/GstAudioTestSrc:audiotestsrc0:
95
+     streaming stopped, reason error (-5)
96
+     ERROR: pipeline doesn't want to preroll.
97
+     Freeing pipeline ...
98
+     ```
99
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2565>
100
+
101
+2021-11-05 13:12:14 +0100  Antonio Ospite <antonio.ospite@collabora.com>
102
+
103
+   * sys/magicleap/meson.build:
104
+     magicleap: update lumin_rt libraries names to the latest official version
105
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2561>
106
+
107
+2021-10-30 01:41:51 +0900  Seungha Yang <seungha@centricular.com>
108
+
109
+   * gst-libs/gst/codecs/gsth265decoder.c:
110
+     codecs: h265decoder: Fix per-slice leak
111
+     As documented, slice header parsed via gst_h265_parser_parse_slice_hdr()
112
+     should be cleared, otherwise it would result in memory leak.
113
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2559>
114
+
115
+2021-10-28 17:41:54 +0100  Tim-Philipp Müller <tim@centricular.com>
116
+
117
+   * gst/videoparsers/gstmpeg4videoparse.c:
118
+     mpeg4videoparse: fix criticals trying to insert configs that don't exist yet
119
+     With mpeg4videoparse drop=false config-interval=N|-1 we might be
120
+     trying to insert a config before we have actually received one,
121
+     in which case we'll try to map a NULL buffer which will generate
122
+     lots of criticals.
123
+     Fixes #855
124
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2558>
125
+
126
+2021-09-23 19:30:32 +0300  Sebastian Dröge <sebastian@centricular.com>
127
+
128
+   * ext/webrtc/gstwebrtcbin.c:
129
+     webrtcbin: Always set SINK/SRC flags
130
+     webrtcbin can act as a sink/source depending on the SDP later. Without
131
+     setting this here already, surrounding bins might not notice this and
132
+     the pipeline configuration might become inconsistent, e.g. with regards
133
+     to latency.
134
+     See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/737
135
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2556>
136
+
137
+2021-08-16 18:15:42 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
138
+
139
+   * gst/mpegtsdemux/mpegtspacketizer.c:
140
+     mpegtspacketizer: memcmp potentially seen_before data
141
+     Theoretically the version number is incremented every time there's a new
142
+     section, but in a world of streaming we can't easily make that
143
+     assumption.
144
+     An example of a broken use case is when we're cat-ing two mpeg-ts files
145
+     together, which is equivalent of capturing a DVB stream while switching
146
+     channels. A set-top box would know that we switched the channels and
147
+     reset the demuxer, but in practice this might not happen.
148
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2555>
149
+
150
+2021-02-25 14:09:50 +0100  Stéphane Cerveau <scerveau@collabora.com>
151
+
152
+   * ext/zxing/gstzxing.cpp:
153
+   * ext/zxing/meson.build:
154
+   * tests/check/elements/zxing.c:
155
+     zxing: update to support version 1.1.1
156
+     Support new API in 1.1.1
157
+     Update the supported input video format.
158
+     Update tests to use parse_launch
159
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2554>
160
+
161
+2021-10-21 00:31:24 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
162
+
163
+   * gst/interlace/gstinterlace.c:
164
+     interlace: Reset after changing state to READY
165
+     Trying to reset before the pads have been deactivated races with the
166
+     streaming thread. There was also a buggy buffer clear leaving a dangling
167
+     `stored_frame` pointer around. Use `gst_interlace_reset` so this happens
168
+     properly.
169
+     Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2553>
170
+
171
+2021-09-09 00:12:51 +0100  Tim-Philipp Müller <tim@centricular.com>
172
+
173
+   * meson.build:
174
+     Back to development
175
+
176
 === release 1.18.5 ===
177
 
178
 2021-09-08 20:03:37 +0100  Tim-Philipp Müller <tim@centricular.com>
179
gst-plugins-bad-1.18.5.tar.xz/NEWS -> gst-plugins-bad-1.18.6.tar.xz/NEWS Changed
201
 
1
@@ -2,13 +2,13 @@
2
 
3
 GStreamer 1.18.0 was originally released on 8 September 2020.
4
 
5
-The latest bug-fix release in the 1.18 series is 1.18.5 and was released
6
-on 8 September 2021.
7
+The latest bug-fix release in the 1.18 series is 1.18.6 and was released
8
+on 2 February 2022.
9
 
10
 See https://gstreamer.freedesktop.org/releases/1.18/ for the latest
11
 version of this document.
12
 
13
-Last updated: Wednesday 8 September 2021, 11:00 UTC (log)
14
+Last updated: Wednesday 2 February 2022, 11:30 UTC (log)
15
 
16
 Introduction
17
 
18
@@ -2103,9 +2103,8 @@
19
 Known Issues
20
 
21
 -   GStreamer 1.18 versions <= 1.18.4 would fail to build on Linux with
22
-    Meson 0.58 due to an issue with the include directories. Either
23
-    apply the patch or build with an older Meson version (<= 0.57) until
24
-    there is a GStreamer 1.18.5 release that includes the fix.
25
+    Meson 0.58 due to an issue with the include directories.
26
+    GStreamer >= 1.18.5 includes a fix for this.
27
 
28
 Contributors
29
 
30
@@ -3183,16 +3182,180 @@
31
 -   List of Merge Requests applied in 1.18.5
32
 -   List of Issues fixed in 1.18.5
33
 
34
+1.18.6
35
+
36
+The sixth 1.18 bug-fix release (1.18.6) was released on 2 February 2022.
37
+
38
+This release only contains bugfixes and security fixes and it should be
39
+safe to update from 1.18.x.
40
+
41
+Highlighted bugfixes in 1.18.6
42
+
43
+-   tagdemux: Fix crash when presented with malformed files (security
44
+    fix)
45
+-   video-converter: Fix broken gamma remap with high bitdepth YUV
46
+    output
47
+-   shout2send: Fix issues with libshout >= 2.4.2
48
+-   mxfdemux: fix regression with VANC tracks that only contains packet
49
+    types we don’t handle
50
+-   Better plugin loading error reporting on Windows
51
+-   Fixes for deprecations in Python 3.10
52
+-   build fixes, memory leak fixes, reliability fixes
53
+-   security fixes
54
+
55
+gstreamer
56
+
57
+-   gstplugin: Fix for UWP build
58
+-   gstplugin: Better warnings on plugin load failure on Windows
59
+-   gst-ptp-helper: Do not disable multicast loopback
60
+-   concat: fix qos event handling
61
+-   pluginfeature: Fix object leak
62
+-   baseparse: fix invalid avg_bitrate after reset
63
+-   multiqueue: Fix query unref race on flush
64
+-   gst: Initialize optional event/message fields when parsing
65
+-   bitwriter: Fix the trailing bits lost when getting its data.
66
+-   multiqueue: never consider a queue that is not waiting
67
+-   input-selector: Use proper segments when cleaning cached buffers
68
+
69
+gst-plugins-base
70
+
71
+-   tagdemux: Fix crash when presented with malformed files (security
72
+    fix)
73
+-   videoencoder: make sure the buffer is writable before modifying
74
+    metadata
75
+-   video-converter: Fix for broken gamma remap with high bitdepth YUV
76
+    output
77
+-   sdpmessage: fix mapping single char fmtp params
78
+-   oggdemux: fix a race in push mode when performing the duration seek
79
+-   uridecodebin: Fix critical warnings
80
+-   audio-converter: Fix resampling when there’s nothing to output
81
+-   tcp: fix build on Solaris
82
+-   uridecodebin3: Nullify current item after all play items are freed.
83
+-   audio-resampler: Fix segfault when we can’t output any frames
84
+-   urisourcebin: Handle sources with dynamic pads and pads already
85
+    present
86
+-   playbin2/3: autoplug/caps: don’t expand caps to ANY
87
+-   uridecodebin3/urisourcebin: Reusability fixes
88
+-   rtspconnection: Only reset timeout when socket is unused
89
+-   gstvideoaggregator.c: fix build with gcc 4.8
90
+
91
+gst-plugins-good
92
+
93
+-   rtspsrc: Fix critical while serializing timeout element message
94
+-   multifilesrc: fix caps leak
95
+-   shout2: Add compatibility for libshout >= 2.4.2 shout_open return
96
+    values
97
+-   v4l2: Update fmt if padded height is greater than fmt height
98
+-   v4l2bufferpool: set video alignment of video meta
99
+-   qtmux: fix deadlock in gst_qt_mux_prepare_moov_recovery
100
+-   matroska: Add support for muxing/demuxing ffv1
101
+-   qtdemux: Try to build AAC codec-data whenever it’s possible
102
+
103
+gst-plugins-bad
104
+
105
+-   interlace: Fix a double-unref on shutdown
106
+-   webrtcbin: Chain up to parent constructed method
107
+-   webrtc: fix log error message in function
108
+    gst_webrtc_bin_set_local_description
109
+-   mxfdemux: don’t error out if VANC track only contains packets we
110
+    don’t handle
111
+-   av1parser: Fix data type of film grain param
112
+-   assrender: Support RFC8081 mime types
113
+-   pitch: Specify layout as required for negotiation
114
+-   magicleap: update lumin_rt libraries names to the latest official
115
+    version
116
+-   codecs: h265decoder: Fix per-slice leak
117
+-   mpeg4videoparse: fix criticals trying to insert configs that don’t
118
+    exist yet
119
+-   webrtcbin: Always set SINK/SRC flags
120
+-   mpegtspacketizer: memcmp potentially seen_before data
121
+-   zxing: update to support version 1.1.1
122
+
123
+gst-plugins-ugly
124
+
125
+-   No changes
126
+
127
+gst-libav
128
+
129
+-   avcodecmap: Add support for GBRA_10LE/BE
130
+
131
+gst-rtsp-server
132
+
133
+-   rtsp-stream: fix get_rates raciness
134
+-   rtsp-media: Only unprepare a media if it was not already unpreparing
135
+    anyway
136
+-   rtsp-media: Unprepare suspended medias too
137
+-   rtsp-client: make sure sessmedia will not get freed while used
138
+-   rtsp-media: Also mark receive-only (RECORD) medias as prepared when
139
+    unsuspending
140
+-   rtsp-session: Don’t unref medias twice if it is removed inside…
141
+-   examples: Fix leak in appsrc2 example
142
+
143
+gstreamer-vaapi
144
+
145
+-   libs: video-format: Check if formats map is not NULL
146
+-   vaapidecode: Autogenerate caps template
147
+-   vaapipostproc: copy over metadata also when using system allocated
148
+    buffer
149
+
150
+gst-python
151
+
152
+-   Avoid treating float as int (fix for Python 3.10)
153
+
154
+gst-editing-services
155
+
156
+-   meson: Remove duplicate definition of ‘examples’ option
157
+
158
+gst-devtools
159
+
160
+-   No changes
161
+
162
+gst-integration-testsuites
163
+
164
+-   No changes
165
+
166
+gst-build
167
+
168
+-   env: Fix deprecations from python 3.10
169
+-   Various fixes for macOS
170
+-   update FFmpeg wrap to 4.3.3
171
+
172
+Cerbero build tool and packaging changes in 1.18.6
173
+
174
+-   Some fixes for Fedora 34
175
+-   cerbero: Backport fix for removed loop param of PriorityQueue()
176
+-   cerbero: Fix support for Fedora 35
177
+-   Add support for Visual Studio 2022
178
+-   openssl.recipe: Fix crash on iOS TestFlight
179
+-   UnixBootstrapper: remove sudo as root user
180
+-   bzip2.recipe: bump version to 1.0.8
181
+-   openssl.recipe: upgrade to version 1.1.1l
182
+
183
+Contributors to 1.18.6
184
+
185
+Antonio Ospite, Célestin Marot, Dave Piché, Erlend Eriksen, Fabrice
186
+Fontaine, Guillaume Desmottes, Haihua Hu, He Junyan, Jakub Adam, Jan
187
+Alexander Steffens (heftig), Jan Schmidt, Jeremy Cline, Jordan Petridis,
188
+Mathieu Duponchelle, Matthew Waters, Mengkejiergeli Ba, Michael Gruner,
189
+Nirbheek Chauhan, Ognyan Tonchev, Pascal Hache, Rafał Dzięgiel,
190
+Sebastian Dröge, Seungha Yang, Stéphane Cerveau, Teng En Ung,Thibault
191
+Saunier, Thomas Klausner, Tim-Philipp Müller, Tobias Reineke, Tobias
192
+Ronge, Tomasz Andrzejak, Trung Do, Víctor Manuel Jáquez Leal, Vivia
193
+Nikolaidou,
194
+
195
+… and many others who have contributed bug reports, translations, sent
196
+suggestions or helped testing. Thank you all!
197
+
198
+List of merge requests and issues fixed in 1.18.6
199
+
200
+-   List of Merge Requests applied in 1.18.6
201
gst-plugins-bad-1.18.5.tar.xz/RELEASE -> gst-plugins-bad-1.18.6.tar.xz/RELEASE Changed
16
 
1
@@ -1,4 +1,4 @@
2
-This is GStreamer gst-plugins-bad 1.18.5.
3
+This is GStreamer gst-plugins-bad 1.18.6.
4
 
5
 The GStreamer team is thrilled to announce a new major feature release
6
 of your favourite cross-platform multimedia framework!
7
@@ -82,7 +82,7 @@
8
 For help and support, please subscribe to and send questions to the
9
 gstreamer-devel mailing list (see below for details).
10
 
11
-There is also a #gstreamer IRC channel on the Freenode IRC network.
12
+There is also a #gstreamer IRC channel on the OFTC IRC network.
13
 
14
 ==== Developers ====
15
 
16
gst-plugins-bad-1.18.5.tar.xz/docs/plugins/gst_plugins_cache.json -> gst-plugins-bad-1.18.6.tar.xz/docs/plugins/gst_plugins_cache.json Changed
16
 
1
@@ -217938,12 +217938,12 @@
2
                 "long-name": "Pitch controller",
3
                 "pad-templates": {
4
                     "sink": {
5
-                        "caps": "audio/x-raw:\n         format: F32LE\n           rate: [ 8000, 2147483647 ]\n       channels: [ 1, 2147483647 ]\n",
6
+                        "caps": "audio/x-raw:\n         format: F32LE\n           rate: [ 8000, 2147483647 ]\n       channels: [ 1, 2147483647 ]\n         layout: interleaved\n",
7
                         "direction": "sink",
8
                         "presence": "always"
9
                     },
10
                     "src": {
11
-                        "caps": "audio/x-raw:\n         format: F32LE\n           rate: [ 8000, 2147483647 ]\n       channels: [ 1, 2147483647 ]\n",
12
+                        "caps": "audio/x-raw:\n         format: F32LE\n           rate: [ 8000, 2147483647 ]\n       channels: [ 1, 2147483647 ]\n         layout: interleaved\n",
13
                         "direction": "src",
14
                         "presence": "always"
15
                     }
16
gst-plugins-bad-1.18.5.tar.xz/ext/assrender/gstassrender.c -> gst-plugins-bad-1.18.6.tar.xz/ext/assrender/gstassrender.c Changed
21
 
1
@@ -1546,11 +1546,17 @@
2
   static const gchar *mimetypes[] = {
3
     "application/x-font-ttf",
4
     "application/x-font-otf",
5
-    "application/x-truetype-font"
6
+    "application/x-truetype-font",
7
+    "application/vnd.ms-opentype",
8
+    "font/ttf",
9
+    "font/otf",
10
+    "font/sfnt",
11
+    "font/collection"
12
   };
13
   static const gchar *extensions[] = {
14
     ".otf",
15
-    ".ttf"
16
+    ".ttf",
17
+    ".ttc"
18
   };
19
 
20
   GstBuffer *buf;
21
gst-plugins-bad-1.18.5.tar.xz/ext/soundtouch/gstpitch.cc -> gst-plugins-bad-1.18.6.tar.xz/ext/soundtouch/gstpitch.cc Changed
30
 
1
@@ -73,13 +73,15 @@
2
     "audio/x-raw, " \
3
       "format = (string) " GST_AUDIO_NE (F32) ", " \
4
       "rate = (int) [ 8000, MAX ], " \
5
-      "channels = (int) [ 1, MAX ]"
6
+      "channels = (int) [ 1, MAX ], " \
7
+      "layout = (string) interleaved"
8
 #elif defined(SOUNDTOUCH_INTEGER_SAMPLES)
9
   #define SUPPORTED_CAPS \
10
     "audio/x-raw, " \
11
       "format = (string) " GST_AUDIO_NE (S16) ", " \
12
       "rate = (int) [ 8000, MAX ], " \
13
-      "channels = (int) [ 1, MAX ]"
14
+      "channels = (int) [ 1, MAX ]", \
15
+      "layout = (string) interleaved"
16
 #else
17
 #error "Only integer or float samples are supported"
18
 #endif
19
@@ -459,8 +461,8 @@
20
   return res;
21
 }
22
 
23
-/* generic convert function based on caps, no rate 
24
- * used here 
25
+/* generic convert function based on caps, no rate
26
+ * used here
27
  */
28
 static gboolean
29
 gst_pitch_convert (GstPitch * pitch,
30
gst-plugins-bad-1.18.5.tar.xz/ext/webrtc/gstwebrtcbin.c -> gst-plugins-bad-1.18.6.tar.xz/ext/webrtc/gstwebrtcbin.c Changed
36
 
1
@@ -4754,7 +4754,7 @@
2
           (GDestroyNotify) _free_set_description_data, promise)) {
3
     GError *error =
4
         g_error_new (GST_WEBRTC_BIN_ERROR, GST_WEBRTC_BIN_ERROR_CLOSED,
5
-        "Could not set remote description. webrtcbin is closed");
6
+        "Could not set local description. webrtcbin is closed");
7
     GstStructure *s =
8
         gst_structure_new ("application/x-gstwebrtcbin-promise-error",
9
         "error", G_TYPE_ERROR, error, NULL);
10
@@ -6012,6 +6012,8 @@
11
       (GstWebRTCIceOnCandidateFunc) _on_local_ice_candidate_cb, webrtc, NULL);
12
 
13
   g_free (name);
14
+
15
+  G_OBJECT_CLASS (parent_class)->constructed (object);
16
 }
17
 
18
 static void
19
@@ -6568,6 +6570,16 @@
20
 static void
21
 gst_webrtc_bin_init (GstWebRTCBin * webrtc)
22
 {
23
+  /* Set SINK/SRC flags as webrtcbin can act as one depending on the
24
+   * SDP later. Without setting this here already, surrounding bins might not
25
+   * notice this and the pipeline configuration might become inconsistent,
26
+   * e.g. with regards to latency.
27
+   * See: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/737
28
+   */
29
+  gst_bin_set_suppressed_flags (GST_BIN_CAST (webrtc),
30
+      GST_ELEMENT_FLAG_SINK | GST_ELEMENT_FLAG_SOURCE);
31
+  GST_OBJECT_FLAG_SET (webrtc, GST_ELEMENT_FLAG_SINK | GST_ELEMENT_FLAG_SOURCE);
32
+
33
   webrtc->priv = gst_webrtc_bin_get_instance_private (webrtc);
34
   g_mutex_init (PC_GET_LOCK (webrtc));
35
   g_cond_init (PC_GET_COND (webrtc));
36
gst-plugins-bad-1.18.5.tar.xz/ext/zxing/gstzxing.cpp -> gst-plugins-bad-1.18.6.tar.xz/ext/zxing/gstzxing.cpp Changed
132
 
1
@@ -36,6 +36,9 @@
2
  * * #GstSample `frame`: the frame in which the barcode message was detected, if
3
  *   the .#GstZXing:attach-frame property was set to %TRUE (Since 1.18)
4
  *
5
+ *   This element is based on the c++ implementation of zxing which can found
6
+ *   at https://github.com/nu-book/zxing-cpp.
7
+ *
8
  * ## Example launch lines
9
  * |[
10
  * gst-launch-1.0 -m v4l2src ! videoconvert ! zxing ! videoconvert ! xvimagesink
11
@@ -137,9 +140,8 @@
12
   return barcode_format_type;
13
 }
14
 
15
-
16
 #define ZXING_YUV_CAPS \
17
-    "{ Y800, I420, YV12, NV12, NV21, Y41B, Y42B, YUV9, YVU9 }"
18
+    "{ARGB, xRGB, Y444, Y42B, I420, Y41B, YUV9, YV12}"
19
 
20
 
21
 static GstStaticPadTemplate gst_zxing_src_template =
22
@@ -171,13 +173,16 @@
23
   gboolean attach_frame;
24
   gboolean rotate;
25
   gboolean faster;
26
-  guint format;
27
+  ImageFormat image_format;
28
+  guint barcode_format;
29
 };
30
 
31
 static void gst_zxing_set_property (GObject * object, guint prop_id,
32
     const GValue * value, GParamSpec * pspec);
33
 static void gst_zxing_get_property (GObject * object, guint prop_id,
34
     GValue * value, GParamSpec * pspec);
35
+static gboolean gst_zxing_set_info (GstVideoFilter * vfilter, GstCaps * in,
36
+    GstVideoInfo * in_info, GstCaps * out, GstVideoInfo * out_info);
37
 static GstFlowReturn gst_zxing_transform_frame_ip (GstVideoFilter * vfilter,
38
     GstVideoFrame * frame);
39
 
40
@@ -239,6 +244,8 @@
41
 
42
   vfilter_class->transform_frame_ip =
43
       GST_DEBUG_FUNCPTR (gst_zxing_transform_frame_ip);
44
+  vfilter_class->set_info =
45
+      GST_DEBUG_FUNCPTR (gst_zxing_set_info);
46
 }
47
 
48
 static void
49
@@ -248,7 +255,8 @@
50
   zxing->attach_frame = DEFAULT_ATTACH_FRAME;
51
   zxing->rotate = DEFAULT_TRY_ROTATE;
52
   zxing->faster = DEFAULT_TRY_FASTER;
53
-  zxing->format = BARCODE_FORMAT_ALL;
54
+  zxing->image_format = ImageFormat::None;
55
+  zxing->barcode_format = BARCODE_FORMAT_ALL;
56
 }
57
 
58
 static void
59
@@ -274,7 +282,7 @@
60
       zxing->faster = g_value_get_boolean (value);
61
       break;
62
     case PROP_FORMAT:
63
-      zxing->format = g_value_get_enum (value);
64
+      zxing->barcode_format = g_value_get_enum (value);
65
       break;
66
     default:
67
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
68
@@ -305,7 +313,7 @@
69
       g_value_set_boolean (value, zxing->faster);
70
       break;
71
     case PROP_FORMAT:
72
-      g_value_set_enum (value, zxing->format);
73
+      g_value_set_enum (value, zxing->barcode_format);
74
       break;
75
     default:
76
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
77
@@ -313,12 +321,42 @@
78
   }
79
 }
80
 
81
+static gboolean
82
+gst_zxing_set_info (GstVideoFilter * vfilter, GstCaps * in,
83
+    GstVideoInfo * in_info, GstCaps * out, GstVideoInfo * out_info)
84
+{
85
+  GstZXing *zxing = GST_ZXING (vfilter);
86
+  switch (in_info->finfo->format) {
87
+    case GST_VIDEO_FORMAT_ARGB:
88
+    case GST_VIDEO_FORMAT_xRGB:
89
+      zxing->image_format = ImageFormat::XRGB;
90
+      break;
91
+    case GST_VIDEO_FORMAT_Y444:
92
+    case GST_VIDEO_FORMAT_Y42B:
93
+    case GST_VIDEO_FORMAT_I420:
94
+    case GST_VIDEO_FORMAT_Y41B:
95
+    case GST_VIDEO_FORMAT_YUV9:
96
+    case GST_VIDEO_FORMAT_YV12:
97
+      zxing->image_format = ImageFormat::Lum;
98
+      break;
99
+    default:
100
+      zxing->image_format = ImageFormat::None;
101
+      GST_WARNING_OBJECT (zxing, "This format is not supported %s", gst_video_format_to_string(in_info->finfo->format));
102
+  }
103
+  return TRUE;
104
+}
105
+
106
 static GstFlowReturn
107
 gst_zxing_transform_frame_ip (GstVideoFilter * vfilter, GstVideoFrame * frame)
108
 {
109
   GstZXing *zxing = GST_ZXING (vfilter);
110
   gpointer data;
111
   gint height, width;
112
+  DecodeHints hints;
113
+
114
+  hints.setTryRotate(zxing->rotate);
115
+  hints.setTryHarder(!zxing->faster);
116
+  hints.setFormats(BarcodeFormatFromString (barcode_formats[zxing->barcode_format].value_name));
117
 
118
   /* all formats we support start with an 8-bit Y plane. zxing doesn't need
119
    * to know about the chroma plane(s) */
120
@@ -326,10 +364,7 @@
121
   width = GST_VIDEO_FRAME_WIDTH (frame);
122
   height = GST_VIDEO_FRAME_HEIGHT (frame);
123
 
124
-  /*Init a grayscale source */
125
-  auto result = ReadBarcode (width, height, (unsigned char *) data, width,
126
-      { BarcodeFormatFromString (barcode_formats[zxing->format].value_name) },
127
-      zxing->rotate, !zxing->faster);
128
+  auto result = ReadBarcode ({(unsigned char *)data, width, height, zxing->image_format}, hints);
129
   if (result.isValid ()) {
130
     GST_DEBUG_OBJECT (zxing, "Symbol found. Text: %s Format: %s",
131
         TextUtfEncoding::ToUtf8 (result.text ()).c_str (),
132
gst-plugins-bad-1.18.5.tar.xz/ext/zxing/meson.build -> gst-plugins-bad-1.18.6.tar.xz/ext/zxing/meson.build Changed
10
 
1
@@ -2,7 +2,7 @@
2
   'gstzxing.cpp',
3
   'gstzxingplugin.c',
4
 ]
5
-zxing_dep = dependency('zxing', version : '>= 0.9', required : get_option('zxing'))
6
+zxing_dep = dependency('zxing', version : '>= 1.1.1', required : get_option('zxing'))
7
 if zxing_dep.found()
8
    gstzxing = library('gstzxing',
9
      zxing_sources,
10
gst-plugins-bad-1.18.5.tar.xz/gst-libs/gst/codecparsers/gstav1parser.h -> gst-plugins-bad-1.18.6.tar.xz/gst-libs/gst/codecparsers/gstav1parser.h Changed
14
 
1
@@ -1370,10 +1370,10 @@
2
   guint8 grain_scale_shift;
3
   guint8 cb_mult;
4
   guint8 cb_luma_mult;
5
-  guint8 cb_offset;
6
+  guint16 cb_offset;
7
   guint8 cr_mult;
8
   guint8 cr_luma_mult;
9
-  guint8 cr_offset;
10
+  guint16 cr_offset;
11
   gboolean overlap_flag;
12
   gboolean clip_to_restricted_range;
13
 };
14
gst-plugins-bad-1.18.5.tar.xz/gst-libs/gst/codecs/gsth265decoder.c -> gst-plugins-bad-1.18.6.tar.xz/gst-libs/gst/codecs/gsth265decoder.c Changed
14
 
1
@@ -380,6 +380,12 @@
2
     return FALSE;
3
   }
4
 
5
+  /* NOTE: gst_h265_parser_parse_slice_hdr() allocates array
6
+   * GstH265SliceHdr::entry_point_offset_minus1 but we don't use it
7
+   * in this h265decoder baseclass at the moment
8
+   */
9
+  gst_h265_slice_hdr_free (&priv->current_slice.header);
10
+
11
   priv->current_slice.nalu = *nalu;
12
 
13
   if (!gst_h265_decoder_preprocess_slice (self, &priv->current_slice))
14
gst-plugins-bad-1.18.5.tar.xz/gst-plugins-bad.doap -> gst-plugins-bad-1.18.6.tar.xz/gst-plugins-bad.doap Changed
18
 
1
@@ -35,6 +35,16 @@
2
 
3
  <release>
4
   <Version>
5
+   <revision>1.18.6</revision>
6
+   <branch>1.18</branch>
7
+   <name></name>
8
+   <created>2022-02-02</created>
9
+   <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.18.6.tar.xz" />
10
+  </Version>
11
+ </release>
12
+
13
+ <release>
14
+  <Version>
15
    <revision>1.18.5</revision>
16
    <branch>1.18</branch>
17
    <name></name>
18
gst-plugins-bad-1.18.5.tar.xz/gst/interlace/gstinterlace.c -> gst-plugins-bad-1.18.6.tar.xz/gst/interlace/gstinterlace.c Changed
31
 
1
@@ -1485,23 +1485,23 @@
2
 gst_interlace_change_state (GstElement * element, GstStateChange transition)
3
 {
4
   GstInterlace *interlace = GST_INTERLACE (element);
5
+  GstStateChangeReturn ret;
6
+
7
+  ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
8
 
9
   switch (transition) {
10
     case GST_STATE_CHANGE_PAUSED_TO_READY:
11
       g_mutex_lock (&interlace->lock);
12
       interlace->src_fps_n = 0;
13
-      if (interlace->stored_frame) {
14
-        gst_buffer_unref (interlace->stored_frame);
15
-      }
16
       g_mutex_unlock (&interlace->lock);
17
-      /* why? */
18
-      //gst_interlace_reset (interlace);
19
+
20
+      gst_interlace_reset (interlace);
21
       break;
22
     default:
23
       break;
24
   }
25
 
26
-  return GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
27
+  return ret;
28
 }
29
 
30
 static gboolean
31
gst-plugins-bad-1.18.5.tar.xz/gst/mpegtsdemux/mpegtspacketizer.c -> gst-plugins-bad-1.18.6.tar.xz/gst/mpegtsdemux/mpegtspacketizer.c Changed
39
 
1
@@ -154,7 +154,7 @@
2
 static gboolean
3
 seen_section_before (MpegTSPacketizerStream * stream, guint8 table_id,
4
     guint16 subtable_extension, guint8 version_number, guint8 section_number,
5
-    guint8 last_section_number)
6
+    guint8 last_section_number, guint8 * data_start, gsize to_read)
7
 {
8
   MpegTSPacketizerStreamSubtable *subtable;
9
 
10
@@ -175,7 +175,17 @@
11
     return FALSE;
12
   }
13
   /* Finally return whether we saw that section or not */
14
-  return MPEGTS_BIT_IS_SET (subtable->seen_section, section_number);
15
+  if (!MPEGTS_BIT_IS_SET (subtable->seen_section, section_number)) {
16
+    GST_DEBUG ("Different section_number");
17
+    return FALSE;
18
+  }
19
+
20
+  if (stream->section_data) {
21
+    /* Everything else is the same, fall back to memcmp */
22
+    return (memcmp (stream->section_data, data_start, to_read) != 0);
23
+  }
24
+
25
+  return FALSE;
26
 }
27
 
28
 static MpegTSPacketizerStreamSubtable *
29
@@ -1189,7 +1199,8 @@
30
    * * same section_number was seen
31
    */
32
   if (seen_section_before (stream, table_id, subtable_extension,
33
-          version_number, section_number, last_section_number)) {
34
+          version_number, section_number, last_section_number, data_start,
35
+          to_read)) {
36
     GST_DEBUG
37
         ("PID 0x%04x Already processed table_id:0x%02x subtable_extension:0x%04x, version_number:%d, section_number:%d",
38
         packet->pid, table_id, subtable_extension, version_number,
39
gst-plugins-bad-1.18.5.tar.xz/gst/mxf/mxfvanc.c -> gst-plugins-bad-1.18.6.tar.xz/gst/mxf/mxfvanc.c Changed
39
 
1
@@ -138,12 +138,9 @@
2
      *
3
      * The same scheme can be used for ANC packets.
4
      */
5
-
6
-    *outbuf = gst_buffer_new ();
7
-    GST_BUFFER_FLAG_SET (*outbuf, GST_BUFFER_FLAG_GAP);
8
-    ret = GST_FLOW_OK;
9
-    goto out;
10
+    goto no_data;
11
   }
12
+
13
   for (i = 0; i < num_packets; i++) {
14
     G_GNUC_UNUSED guint16 line_num;
15
     G_GNUC_UNUSED guint8 wrapping_type;
16
@@ -190,6 +187,7 @@
17
 
18
     /* Not S334 EIA-708 */
19
     if (did != 0x61 && sdid != 0x01) {
20
+      GST_TRACE ("Skipping VANC data with DID/SDID 0x%02X/0x%02X", did, sdid);
21
       if (!gst_byte_reader_skip (&reader, array_count * array_item_size - 2))
22
         goto out;
23
       continue;
24
@@ -215,6 +213,14 @@
25
     gst_buffer_unref (buffer);
26
     return GST_FLOW_OK;
27
   }
28
+
29
+no_data:
30
+
31
+  /* No packets or we skipped over all packets */
32
+  *outbuf = gst_buffer_new ();
33
+  GST_BUFFER_FLAG_SET (*outbuf, GST_BUFFER_FLAG_GAP);
34
+  ret = GST_FLOW_OK;
35
+
36
 out:
37
   gst_buffer_unmap (buffer, &map);
38
   gst_buffer_unref (buffer);
39
gst-plugins-bad-1.18.5.tar.xz/gst/videoparsers/gstmpeg4videoparse.c -> gst-plugins-bad-1.18.6.tar.xz/gst/videoparsers/gstmpeg4videoparse.c Changed
51
 
1
@@ -793,26 +793,30 @@
2
 
3
         /* we need to send config now first */
4
         GST_INFO_OBJECT (parse, "inserting config in stream");
5
-        gst_buffer_map (mp4vparse->config, &cmap, GST_MAP_READ);
6
-        diffconf = (gst_buffer_get_size (buffer) < cmap.size)
7
-            || gst_buffer_memcmp (buffer, 0, cmap.data, cmap.size);
8
-        csize = cmap.size;
9
-        gst_buffer_unmap (mp4vparse->config, &cmap);
10
-
11
-        /* avoid inserting duplicate config */
12
-        if (diffconf) {
13
-          GstBuffer *superbuf;
14
-
15
-          /* insert header */
16
-          superbuf =
17
-              gst_buffer_append (gst_buffer_ref (mp4vparse->config),
18
-              gst_buffer_ref (buffer));
19
-          gst_buffer_copy_into (superbuf, buffer, GST_BUFFER_COPY_METADATA, 0,
20
-              csize);
21
-          gst_buffer_replace (&frame->out_buffer, superbuf);
22
-          gst_buffer_unref (superbuf);
23
+        if (mp4vparse->config != NULL
24
+            && gst_buffer_map (mp4vparse->config, &cmap, GST_MAP_READ)) {
25
+          diffconf = (gst_buffer_get_size (buffer) < cmap.size)
26
+              || gst_buffer_memcmp (buffer, 0, cmap.data, cmap.size);
27
+          csize = cmap.size;
28
+          gst_buffer_unmap (mp4vparse->config, &cmap);
29
+
30
+          /* avoid inserting duplicate config */
31
+          if (diffconf) {
32
+            GstBuffer *superbuf;
33
+
34
+            /* insert header */
35
+            superbuf =
36
+                gst_buffer_append (gst_buffer_ref (mp4vparse->config),
37
+                gst_buffer_ref (buffer));
38
+            gst_buffer_copy_into (superbuf, buffer, GST_BUFFER_COPY_METADATA, 0,
39
+                csize);
40
+            gst_buffer_replace (&frame->out_buffer, superbuf);
41
+            gst_buffer_unref (superbuf);
42
+          } else {
43
+            GST_INFO_OBJECT (parse, "... but avoiding duplication");
44
+          }
45
         } else {
46
-          GST_INFO_OBJECT (parse, "... but avoiding duplication");
47
+          GST_WARNING_OBJECT (parse, "No config received yet");
48
         }
49
 
50
         if (G_UNLIKELY (timestamp != -1)) {
51
gst-plugins-bad-1.18.5.tar.xz/meson.build -> gst-plugins-bad-1.18.6.tar.xz/meson.build Changed
8
 
1
@@ -1,5 +1,5 @@
2
 project('gst-plugins-bad', 'c', 'cpp',
3
-  version : '1.18.5',
4
+  version : '1.18.6',
5
   meson_version : '>= 0.49',
6
   default_options : [ 'warning_level=1',
7
                       'buildtype=debugoptimized' ])
8
gst-plugins-bad-1.18.5.tar.xz/po/gst-plugins-bad-1.0.pot -> gst-plugins-bad-1.18.6.tar.xz/po/gst-plugins-bad-1.0.pot Changed
10
 
1
@@ -8,7 +8,7 @@
2
 msgstr ""
3
 "Project-Id-Version: gst-plugins-bad-1.0\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2021-09-08 20:03+0100\n"
6
+"POT-Creation-Date: 2022-02-02 15:07+0000\n"
7
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
8
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
9
 "Language-Team: LANGUAGE <LL@li.org>\n"
10
gst-plugins-bad-1.18.5.tar.xz/sys/magicleap/meson.build -> gst-plugins-bad-1.18.6.tar.xz/sys/magicleap/meson.build Changed
12
 
1
@@ -5,8 +5,8 @@
2
 ]
3
 
4
 libmlaudio_dep = cc.find_library('ml_audio', required : get_option('magicleap'))
5
-liblumin_core_dep = cc.find_library('lumin_rt_core_1_5', required : get_option('magicleap'))
6
-liblumin_app_dep = cc.find_library('lumin_rt_app_1_5', required : get_option('magicleap'))
7
+liblumin_core_dep = cc.find_library('lumin_rt_core_1_7', required : get_option('magicleap'))
8
+liblumin_app_dep = cc.find_library('lumin_rt_app_1_7', required : get_option('magicleap'))
9
 
10
 if libmlaudio_dep.found()
11
   gstmagicleap = library('gstmagicleap',
12
gst-plugins-bad-1.18.5.tar.xz/tests/check/elements/zxing.c -> gst-plugins-bad-1.18.6.tar.xz/tests/check/elements/zxing.c Changed
68
 
1
@@ -21,27 +21,24 @@
2
 #include <gst/check/gstcheck.h>
3
 
4
 static GstElement *
5
-setup_pipeline (void)
6
+setup_pipeline (const gchar * in_format)
7
 {
8
-  GstElement *pipeline, *src, *dec, *csp, *zxing, *sink;
9
+  GstElement *pipeline;
10
   gchar *path;
11
-
12
-  pipeline = gst_pipeline_new ("pipeline");
13
-
14
-  src = gst_element_factory_make ("filesrc", NULL);
15
-  /* Test file must have size < 4096 otherwise pngparse will be necessary before pngdec. */
16
-  dec = gst_element_factory_make ("pngdec", NULL);
17
-  csp = gst_element_factory_make ("videoconvert", NULL);
18
-  zxing = gst_element_factory_make ("zxing", "zxing");
19
-  sink = gst_element_factory_make ("fakesink", NULL);
20
+  gchar *pipeline_str;
21
 
22
   path = g_build_filename (GST_TEST_FILES_PATH, "barcode.png", NULL);
23
   GST_LOG ("reading file '%s'", path);
24
-  g_object_set (src, "location", path, NULL);
25
-  g_free (path);
26
 
27
-  gst_bin_add_many (GST_BIN (pipeline), src, dec, csp, zxing, sink, NULL);
28
-  fail_unless (gst_element_link_many (src, dec, csp, zxing, sink, NULL));
29
+  pipeline_str =
30
+      g_strdup_printf ("filesrc location=%s ! "
31
+      "pngdec ! videoconvert ! video/x-raw,format=%s ! zxing name=zxing"
32
+      " ! fakesink", path, in_format);
33
+  GST_LOG ("Running pipeline: %s", pipeline_str);
34
+  pipeline = gst_parse_launch (pipeline_str, NULL);
35
+  fail_unless (pipeline != NULL);
36
+  g_free (pipeline_str);
37
+  g_free (path);
38
 
39
   return pipeline;
40
 }
41
@@ -83,7 +80,7 @@
42
   GstElement *pipeline;
43
   const gchar *type, *symbol;
44
 
45
-  pipeline = setup_pipeline ();
46
+  pipeline = setup_pipeline ("ARGB");
47
 
48
   fail_unless_equals_int (gst_element_set_state (pipeline, GST_STATE_PLAYING),
49
       GST_STATE_CHANGE_ASYNC);
50
@@ -101,7 +98,7 @@
51
   fail_unless (gst_structure_has_field (s, "type"));
52
   fail_unless (gst_structure_has_field (s, "symbol"));
53
   type = gst_structure_get_string (s, "type");
54
-  fail_unless_equals_string (type, "EAN_13");
55
+  fail_unless_equals_string (type, "EAN-13");
56
   symbol = gst_structure_get_string (s, "symbol");
57
   fail_unless_equals_string (symbol, "9876543210128");
58
 
59
@@ -123,7 +120,7 @@
60
   GstElement *pipeline;
61
   GstSample *sample;
62
 
63
-  pipeline = setup_pipeline ();
64
+  pipeline = setup_pipeline ("ARGB");
65
   gst_child_proxy_set ((GstChildProxy *) pipeline, "zxing::attach-frame", TRUE,
66
       NULL);
67
 
68