Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
=== release 1.18.3 ===
2021-01-13 21:11:22 +0000 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-plugins-bad.doap:
* meson.build:
Release 1.18.3
2020-12-21 14:06:53 +0530 Raju Babannavar <raju.babannavar@gmail.com>
* gst/dvbsuboverlay/dvb-sub.c:
dvbsuboverlay: Add support for dynamic resolution update.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1487
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1954>
2020-12-16 18:32:25 +0200 Sebastian Dröge <sebastian@centricular.com>
* sys/decklink/gstdecklinkaudiosrc.cpp:
decklinkaudiosrc: Fix duration of the first audio frame after each discont
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1891>
2020-12-30 22:52:01 +0800 Haihua Hu <jared.hu@nxp.com>
* ext/dash/gstdashsink.c:
* ext/dash/gstmpdrootnode.c:
dashsink: fix critical log when exit dynamic pipeline
availability-start-time and publish-time shared the same
GstDateTime object, this object will be unref twice and
cause reference count issue. Should use g_value_dup_boxed()
to copy this object.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1932>
2020-12-29 09:41:05 +0800 Haihao Xiang <haihao.xiang@intel.com>
* sys/msdk/gstmsdkcontext.c:
msdk: needn't close mfx session when failed
Otherwise we will get double free issue because mfx session is closed in
finalize. See
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1867#note_739346
for the double free issue.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1927>
2020-12-10 11:11:04 +0800 Haihao Xiang <haihao.xiang@intel.com>
* sys/msdk/gstmsdkcontext.c:
* sys/msdk/msdk.c:
msdk: check GstMsdkContext instead of mfxSession instance
When creating a GstMsdkContext instance, it also creates a mfxSession
instance, so we may check GstMsdkContext instead of mfxSession instance
to make sure MSDK is available. In addition, according to MSDK doc [1],
MFXVideoCORE_SetHandle function should be executed before any actual
usage of library including queries, otherwise the behavior is
unexpected, so we should call MFXVideoCORE_QueryPlatform after
MFXVideoCORE_SetHandle on Linux
[1] https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#working-with-va-api-applications
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1921>
2020-12-28 04:33:11 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11shader.c:
d3d11shader: Fix ID3DBlob object leak
Even if HLSL compiler was able to compile our shader code, D3DCompile()
might return ID3DBlob object for compile warnings and the object
should be released.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1922>
2020-12-29 13:15:10 +0200 Sebastian Dröge <sebastian@centricular.com>
* ext/assrender/gstassrender.c:
assrender: Don't try unlocking unlocked mutex
When flushing right at the beginning of the video chain function or
when failing negotiation at the top of the function, the assrender mutex
would be unlocked without being previously locked.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1923>
2020-12-20 22:12:44 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11videosink.c:
d3d11videosink: Prepare window once streaming started
... instead of READY state. READY state is too early for setting
overlay window handle especially playbin/playsink scenario
since playsink will set given overlay handle on videosink once
READY state change of videosink is ensured.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1905>
2020-12-10 15:37:14 +0800 Lim Siew Hoon <siew.hoon.lim@intel.com>
* gst/inter/gstintervideosrc.c:
intervideosrc: fix negotiation of interlaced caps
In 1.0 the field in caps is called "interlace-mode", not "interlaced".
Fixes #1480
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1878>
2020-12-07 14:54:28 +0100 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
srt: Don't take object lock calling gst_srt_object_get_stats
This function takes the sock lock. This can result in a deadlock when
another thread holding the sock lock is trying to take the object lock.
Thread A (Holds object lock, wants sock lock):
#2 gst_srt_object_get_stats at gst-plugins-bad/ext/srt/gstsrtobject.c:1753
#3 gst_srt_object_get_property_helper at gst-plugins-bad/ext/srt/gstsrtobject.c:409
#4 gst_srt_sink_get_property at gst-plugins-bad/ext/srt/gstsrtsink.c:95
#5 g_object_get_property from libgobject-2.0.so.0
Thread B (Holds sock lock, wants object lock):
#2 gst_element_post_message_default at gstreamer/gst/gstelement.c:2069
#3 gst_element_post_message at gstreamer/gst/gstelement.c:2123
#4 gst_element_message_full_with_details at gstreamer/gst/gstelement.c:2259
#5 gst_element_message_full at gstreamer/gst/gstelement.c:2298
#6 gst_srt_object_send_headers at gst-plugins-bad/ext/srt/gstsrtobject.c:1407
#7 gst_srt_object_send_headers at gst-plugins-bad/ext/srt/gstsrtobject.c:1444
#8 gst_srt_object_write_to_callers at gst-plugins-bad/ext/srt/gstsrtobject.c:1444
#9 gst_srt_object_write at gst-plugins-bad/ext/srt/gstsrtobject.c:1598
#10 gst_srt_sink_render at gst-plugins-bad/ext/srt/gstsrtsink.c:179
Fixes d2d00e07acc2b1ab1ae5a728ef5dc33c9dee7869.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1863>
2020-12-04 17:02:00 +1100 Matthew Waters <matthew@centricular.com>
* gst/rtmp2/rtmp/rtmpclient.c:
* gst/rtmp2/rtmp/rtmpconnection.c:
* gst/rtmp2/rtmp/rtmpconnection.h:
rtmp2/connection: pass the parent cancellable down to the connection
Otherwise, when rtpm2src cancels an inflight operation that has a queued
message stored, then the rtmp connection operation is not stopped.
If the cancellation occurs during rtmp connection start up, then
rtpm2src does not have any way of accessing the connection object as it
has not been returned yet. As a result, rtpm2src will cancel, the
connection will still be processing things and the
GMainContext/GMainLoop associated with the outstanding operation will be
destroyed. All outstanding operations and the rtmpconnection object will
therefore be leaked in this case.
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1425
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1865>
2020-12-06 23:57:01 +0000 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
=== release 1.18.2 ===
2020-12-06 13:24:10 +0000 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-plugins-bad.doap:
* meson.build:
Release 1.18.2
2020-08-25 14:56:50 +0100 Chris Bass <floobleflam@gmail.com>
* ext/ttml/ttmlparse.c:
ttmlparse: Handle whitespace before XML declaration
When ttmlparse is in, e.g., an MPEG-DASH pipeline, there may be
whitespace between successive TTML documents in ttmlparse's accumulated
input. As libxml2 will fail to parse documents that have whitespace
before the opening XML declaration, ensure that any preceding whitespace
is not passed to libxml2.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1859>
2020-08-25 14:54:31 +0100 Chris Bass <floobleflam@gmail.com>
* ext/ttml/ttmlparse.c:
ttmlparse: Ensure only single TTML doc parsed
The parser handles only one TTML file at a time, therefore if there are
multiple TTML documets in the input, parse only the first.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1859>
2020-12-03 14:12:06 +0100 Edward Hervey <edward@centricular.com>
* ext/hls/gsthlsdemux.c:
hlsdemux: Use actual object for logging
i.e. the pad of the stream
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1858>
2020-12-03 06:55:00 -0500 Arun Raghavan <arun@asymptotic.io>
* ext/curl/gstcurlbasesink.c:
* ext/curl/gstcurlfilesink.c:
* ext/curl/gstcurlftpsink.c:
* ext/curl/gstcurlhttpsink.c:
* ext/curl/gstcurlhttpsrc.c:
* ext/curl/gstcurlsmtpsink.c:
* ext/curl/gstcurlsshsink.c:
* ext/curl/gstcurltlssink.c:
curl: Remove incorrect GST_DEBUG_OBJECT() calls
klass is not a GstObject, and these debugs print should likely not be
around anyway.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1857>
2020-11-10 14:48:28 +0100 Edward Hervey <edward@centricular.com>
* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
adaptivedemux: Don't calculate bitrate for header/index fragments
They are generally substantially smaller than regular fragments, and therefore
we end up pushing totally wrong bitrates downstream.
Fixes erratic buffering issues with DASH introduced by
66f5e874352016e29f555e3ce693b23474e476db
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1819>
2020-11-09 11:41:10 +0100 Edward Hervey <edward@centricular.com>
* ext/dash/gstdashdemux.c:
* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
* gst-libs/gst/adaptivedemux/gstadaptivedemux.h:
adaptivedemux: Store QoS values on the element
Storing it per-stream requires taking the manifest lock which can apparenly be
hold for aeons. And since the QoS event comes from the video rendering thread
we *really* do not want to do that.
Storing it as-is in the element is fine, the important part is knowing the
earliest time downstream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1819>
2020-11-05 13:48:27 +0200 Edward Hervey <edward@centricular.com>
* gst/mpegtsdemux/mpegtspacketizer.c:
* gst/mpegtsdemux/mpegtspacketizer.h:
* gst/mpegtsdemux/mpegtsparse.c:
tsparse: Forward incoming timestamps
Ensure we properly forward the upstream PTS/DTS on the regular and program
source pads. All packets being processed will carry over the latest PTS/DTS (as
a reconstructed GstBuffer).
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1419
And properly forward PTS/DTS for program pads (which wasn't the case before)
Original patch by Vivia Nikolaidou <vivia@ahiru.eu>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1849>
2020-12-02 09:39:45 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
adaptivedemux: Don't log with non-GObject objects
Instead of using the streams, log with the pad of the streams.
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1457
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1847>
2020-12-02 15:08:44 +0000 Nicolas Dufresne <nicolas@ndufresne.ca>
* sys/v4l2codecs/gstv4l2decoder.c:
Revert "v4l2codecs: decoder: Unmark previously pending request"
This reverts commit a3e6d9fc24098fc27fa3fb10c4d189fa61e67500
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1848>
2020-11-05 17:14:22 +0000 Philippe Normand <philn@igalia.com>
* gst-libs/gst/player/gstplayer.c:
player: Fix get_current_subtitle_track annotation
As the info returned is a new object, the annotation should be transfer-full,
similarly to the get_current_{audio,video}_track() implementations.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1834>
2020-11-11 18:21:25 +0900 Seungha Yang <seungha@centricular.com>
* gst/mpegdemux/gstmpegdemux.c:
mpegdemux: Set duration on seeking query if possible
Set duration on seeking query in the same way as duration query handler.
Otherwise application might get confused as if the duration is unknown.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1831>
2020-11-09 18:27:14 +0100 Edward Hervey <edward@centricular.com>
* gst/mpegtsdemux/mpegtspacketizer.c:
mpegtspacketizer: Handle PCR issues with adaptive streams
A lot of content producers out there targetting "adaptive streaming" are riddled
with non-compliant PCR streams (essentially all the players out there just use
PTS/DTS and don't care about the PCR).
In order to gracefully cope with these, we detect them appropriately and any
small (< 15s) PCR resets get gracefully ignored.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1787>
2020-11-13 17:50:03 +0100 Edward Hervey <edward@centricular.com>
* gst/mpegtsdemux/mpegtspacketizer.c:
mpegtsdemux: Fix off by one error
Turns out timestamps of zero are valid :) Fixes issues with streams where the
PTS/DTS would be equal to the first PCR.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1820>
2020-11-10 14:48:28 +0100 Edward Hervey <edward@centricular.com>
* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
adaptivedemux: Don't calculate bitrate for header/index fragments
They are generally substantially smaller than regular fragments, and therefore
we end up pushing totally wrong bitrates downstream.
Fixes erratic buffering issues with DASH introduced by
66f5e874352016e29f555e3ce693b23474e476db
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1818>
2020-11-11 18:07:57 +0100 Edward Hervey <edward@centricular.com>
* ext/hls/gsthlsdemux.c:
hlsdemux: Don't double-free variant streams on errors
If an error happened switching to a new variant, we switch back to the previous
one ... except it will be unreffed when settin git.
In order to avoid such issues, keep a reference to the old variant until we're
sure we don't need it anymore
Fixes cases of double-free on variants and its contents
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1817>
2020-10-30 14:07:02 +0000 Julian Bouzas <julian.bouzas@collabora.com>
* sys/nvcodec/gstcudautils.c:
nvcodec: leave g_once_init when all quarks are initialized
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1784>
2020-11-05 13:30:49 +0000 Jason Pereira <mindriot88@users.noreply.github.com>
* docs/plugins/gst_plugins_cache.json:
* sys/decklink/gstdecklink.cpp:
decklink: correct framerate 2KDCI 23.98
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1774>
2020-11-05 09:01:47 +0100 Rafostar <40623528+Rafostar@users.noreply.github.com>
* gst-libs/gst/player/gstplayer.c:
player: call ref_sink on pipeline
Otherwise `gst_player_get_pipeline()` will return a floating reference which may confuse bindings and lead to crash.
Fixes #1450
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1770>
2020-11-03 02:22:23 +1100 Jan Schmidt <jan@centricular.com>
* ext/vulkan/vkdeviceprovider.c:
vkdeviceprovider: Avoid deadlock on physical device
Don't hold the object lock on the vk physical device while
constructing a GstVulkanDevice around it, as
GstVulkanDevice can make calls on the physical device that
require the object lock.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1759>
2020-11-02 08:46:25 +0000 Randy Li <ayaka@soulik.info>
* ext/wayland/wlvideoformat.c:
wlvideoformat: fix DMA format convertor
In the most of case, this typo would work. But for
ARGB8888 and XRGB8888, which shm format is not based on fourcc,
which would never appear in format enumeration.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1758>
2020-10-31 01:23:36 +1100 Jan Schmidt <jan@centricular.com>
* tests/check/elements/dtls.c:
dtls: Catch bus errors and fail instead of hanging.
If the DTLS elements fail, they post a bus error and don't signal any
key negotiation. Catch the bus error and fail the test early instead
of letting it hang and time out.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1746>
2020-10-30 22:52:18 +1100 Jan Schmidt <jan@centricular.com>
* ext/sctp/gstsctpdec.c:
* ext/sctp/gstsctpenc.c:
sctp: Do downward state change logic after chaining up.
Call the parent state_change function first when changing state
downward, to make sure that the element has stopped before cleaning
it up.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1746>
2020-10-30 22:49:22 +1100 Jan Schmidt <jan@centricular.com>
* ext/dtls/gstdtlsconnection.c:
dtls: Avoid bio_buffer assertion on shutdown.
On shutdown, a previous iteration of dtsl_connection_process()
might be incomplete and leave a partial bio_buffer behind.
If the DTLS connection is already marked closed, drop out
of dtls_connection_process early without asserting.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1746>
2020-10-30 16:31:18 +1100 Jan Schmidt <jan@centricular.com>
* ext/webrtc/gstwebrtcbin.c:
webrtc: Fix a race on shutdown.
The main context can disappear in gst_webrtc_bin_enqueue_task()
between checking the is_closed flag and enqueueing a source on the
main context. Protect the main context with the object lock instead
of the PC lock, and hold a ref briefly to make sure it stays alive.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1746>
2020-10-31 21:46:16 +1100 Jan Schmidt <jan@centricular.com>
* tests/check/elements/dtls.c:
tests: Don't set dtlsenc state before linking.
Link the dtlsenc in the testsuite before setting it to paused, as it
starts a pad task that can generate a not-linked error otherwise.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1745>
2020-10-30 10:02:32 +0200 Sebastian Dröge <sebastian@centricular.com>
* sys/decklink/gstdecklink.cpp:
decklink: Update enum value bounds check in gst_decklink_get_mode()
The widescreen modes moved after GST_DECKLINK_MODE_2160p60 and using
them now would cause an assertion. This is a regression from
309f6187fef890c7ffa49305f38e89beac3b1423.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1740>
2020-10-29 13:43:16 -0400 Xavier Claessens <xavier.claessens@collabora.com>
* sys/androidmedia/gstamc.c:
amc: Fix crash when encoding AVC
gstamcvideoenc.c calls gst_amc_avc_profile_to_string() with alternatives
set to NULL which causes a crash.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1739>
2020-10-18 17:59:44 +0200 Nicola Murino <nicola.murino@gmail.com>
* ext/opencv/meson.build:
opencv: allow compilation against 4.5.x
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1735>
2020-10-28 00:47:49 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11videoprocessor.c:
d3d11videoprocessor: Fix wrong input/output supportability check
The flag argument of ID3D11VideoProcessorEnumerator::CheckVideoProcessorFormat
method is output value, not input.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1736>
2020-09-12 02:48:43 +0200 Jan Alexander Steffens (heftig) <heftig@archlinux.org>
* tests/check/elements/svthevcenc.c:
tests: svthevcenc: Fix test_encode_simple
Pick the same I420 format the other test use. Without this, the source
picks AYUV64, which fails.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1734>
2020-09-23 17:04:55 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/mpegtsmux/gstbasetsmux.c:
mpegtsmux: Restore intervals when creating TsMux
Otherwise the settings from the properties would be overwritten with
the defaults.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1733>
2020-10-27 12:34:33 +0000 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
=== release 1.18.1 ===
2020-10-26 11:14:43 +0000 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-plugins-bad.doap:
* meson.build:
Release 1.18.1
2020-10-16 12:29:02 +0100 Andrew Wesie <andrew@theori.io>
* gst-libs/gst/codecparsers/gsth264parser.c:
codecparsers: h264parser: guard against ref_pic_markings overflow
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1704>
2020-10-15 12:08:19 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2codecvp8dec.c:
v4l2codecs: vp8: Allow baseclass from skipping frames
In preparation for !1670, this will allow the base class from skipping frames
that should not be displayed. Previously it would complain about unordered
decoding taking place in the driver.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1701>
2020-10-15 12:05:45 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2decoder.c:
v4l2codecs: decoder: Unmark previously pending request
requests are executed in order, so while dequeuing sink buffers for previous
request, also mark these request as no longer pending. This will allow reusing
the request later.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1701>
2020-10-15 11:35:04 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2decoder.c:
v4l2codecs: decoder: Properly remove pending requests
Pass the pointer instead of NULL in order to find and remove properly any
pending request from the queue. This coding error was leading to use after
free in error and early exit cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1701>
2020-10-04 02:02:16 +0900 Seungha Yang <seungha@centricular.com>
* gst/videoparsers/gsth265parse.c:
h265parse: Don't enable passthrough by default
SEI messages contain various information which wouldn't be conveyed
by using upstream CAPS (HDR, timecode for example).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1694>
2020-10-12 14:15:49 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtsrc.c:
srtsrc: Prevent `delay` from being negative
`delay` should be a GstClockTimeDiff since SRT time is int64_t.
All values are in local time so we should never see a srctime that's in
the future. If we do, clamp the delay to 0 and warn about it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1690>
2020-10-12 14:12:24 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtsrc.c:
srtsrc: Don't calculate a delay if the srctime is 0
A zero srctime is a missing srctime. Apparently this can happen when
["the connection is not between SRT peers or if Timestamp-Based Packet
Delivery mode (TSBPDMODE) is not enabled"][1] so it may not apply to us,
but it's best to be defensive.
[1]: https://github.com/Haivision/srt/blob/v1.4.2/docs/API.md#sending-and-receiving
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1690>
2020-10-12 14:09:28 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtsrc.c:
srtsrc: Defend against missing clock
If we don't have a clock, stop the source instead of asserting in
gst_clock_get_time. This can happen when the element is removed from the
pipeline while it's playing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1690>
2020-10-12 11:50:59 +0100 Tim-Philipp Müller <tim@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* gst/rtmp2/gstrtmp2.c:
* gst/rtmp2/gstrtmp2sink.c:
rtmp2sink: don't expose stop-commands property in backported patches
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1628>
2020-08-19 14:51:17 +0300 Nazar Mokrynskyi <nazar@mokrynskyi.com>
* docs/meson.build:
* gst/rtmp2/gstrtmp2sink.c:
* gst/rtmp2/rtmp/rtmpclient.h:
rtmp2sink: add docs section with since marker on new stop-commands property
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1628>
2020-08-18 19:16:40 +0300 Nazar Mokrynskyi <nazar@mokrynskyi.com>
* docs/plugins/gst_plugins_cache.json:
* gst/rtmp2/gstrtmp2sink.c:
rtmp2: fix code style, update documentation cache
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1628>
2020-08-18 14:05:26 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/gstrtmp2.c:
* gst/rtmp2/gstrtmp2sink.c:
* gst/rtmp2/rtmp/rtmpclient.c:
* gst/rtmp2/rtmp/rtmpclient.h:
rtmp2: Clean up (improve) GstRtmpStopCommands type
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1628>
2020-05-02 04:49:42 +0300 Nazar Mokrynskyi <nazar@mokrynskyi.com>
* gst/rtmp2/gstrtmp2sink.c:
* gst/rtmp2/rtmp/rtmpclient.c:
* gst/rtmp2/rtmp/rtmpclient.h:
rtmp2sink: handle EOS event and close stream
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1285
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1628>
2020-10-05 11:07:25 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
* gst/videoparsers/gsth265parse.c:
h265parse: set interlace-mode=interleaved on interlaced content
interlace-mode=alternate is a special case of interlace-mode=interleaved
where the fields are split using two different buffers.
We should use the latter instead of the former to no break compat with
elements supporting only 'interleaved'.
Decoders producing alternate, such as OMX on the Zynq, should change the
interlace-mode on their output caps.
Fix https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/825
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1683>
2020-10-06 13:39:23 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
srt: Remove unused sa_family tracking
Now that SRT no longer needs the family when creating the socket, this
code has become useless.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
2020-10-02 03:39:40 +0200 Niklas Hambüchen <mail@nh2.me>
* ext/srt/gstsrtobject.c:
* ext/srt/meson.build:
srt: Move off deprecated `srt_socket()`.
See https://github.com/Haivision/srt/blob/73ee1e1a3e3adc2702a9a5057d101ef80447b38c/docs/API-functions.md#srt_socket
`srt_create_socket()` was added in
https://github.com/Haivision/srt/commit/4b897ba92d34f1829a1c6e419eeab17f0763a0fc
and srt `v1.3.0` is the first release that has it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
2020-10-01 17:31:13 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrt.c:
srt: Register a log handler
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
2020-09-25 19:17:35 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
srt: Avoid removing invalid sockets from the polls
This would provoke error messages from SRT.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
2020-09-25 19:08:17 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
srt: Fix use of srt_startup
`srt_startup` can also return 1 if it was successful. Avoid warning in
this case.
Avoid a race when checking whether we need to call it at all.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
2020-10-06 12:35:12 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
srt: Fix parameter types used for socket options
The [SRT documentation][1] specifies exact types for the socket options.
Make sure we match these.
This reverts the linger workaround in commit 84f8dbd932029220ee86154dd
and extends srt_constant_params to support other types than int.
[1]: https://github.com/Haivision/srt/blob/master/docs/APISocketOptions.md
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
2020-10-07 11:04:30 +0300 Sebastian Dröge <sebastian@centricular.com>
* pkgconfig/gstreamer-webrtc-uninstalled.pc.in:
* pkgconfig/gstreamer-webrtc.pc.in:
webrtc: Require gstreamer-sdp in the pkg-config file
Some headers include API from it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1678>
2020-10-06 11:45:36 +0200 Edward Hervey <edward@centricular.com>
* ext/srt/gstsrtobject.c:
* ext/srt/gstsrtobject.h:
* ext/srt/gstsrtsrc.c:
* ext/srt/gstsrtsrc.h:
srtsrc: Fix timestamping
SRT provides the original timestamp of a packet (with drift/skew corrected for
local clock), which is what should be used for timestamping the outgoing
buffers. This ensures that we output the packets with the same timestamp (and by
extension rate) as the original feed.
Also detect if packets were dropped (by checking the sequence number) and
properly set DISCONT flag on the outgoing buffer.
Finally answer the latency queries
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1677>
2020-10-08 17:52:05 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtsink.c:
srt: Consume the error from gst_srt_object_write
Instead of leaking it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1681>
2020-10-05 16:40:55 -0400 Olivier Crête <olivier.crete@collabora.com>
* ext/dtls/gstdtlsconnection.c:
dtlsconnection: Ignore OpenSSL system call errors
OpenSSL shouldn't be making real system calls, so we can safely
ignore syscall errors. System interactions should happen through
our BIO. So especially don't look at the system's errno, as it
should be meaningless.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1684>
2020-10-09 10:24:50 +0200 Jacek Tomaszewski <lord.jacold@gmail.com>
* COPYING:
* COPYING.LIB:
Replace LGPL v2 with LGPL v2.1 in COPYING and remove COPYING.LIB
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1682>
2020-10-02 11:42:07 +0200 Jacek Tomaszewski <lord.jacold@gmail.com>
* COPYING:
Replace GPL v2 with LGPL v2 in COPYING file
Fixes #1422
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1422
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1682>
2020-10-08 17:48:20 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/srt/gstsrtobject.c:
srt: Check socket state before retrieving payload size
The connection might be broken, which we should detect instead of just
aborting the write.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1680>
2020-10-08 18:25:59 +0200 Jakub Adam <jakub.adam@collabora.com>
* ext/x265/gstx265enc.c:
x265enc: fix deadlock on reconfig
Don't attempt to obtain encoder lock that is already held by
gst_x265_enc_encode_frame().
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1679>
2020-10-07 05:05:25 +0900 Seungha Yang <seungha@centricular.com>
* sys/mediafoundation/gstmfsourcereader.cpp:
mfvideosrc: Use only the first video stream per device
Non-first video stream might not be working with current
implementation. It could be non-video (e.g., photo source) and then
ReadSample() might be blocked forever.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1676>
2020-09-25 22:00:26 +0530 raghavendra <raghavendra.rao@collabora.com>
* ext/srt/gstsrtobject.c:
srtobject: typecast SRTO_LINGER to linger
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1675>
2020-09-29 15:52:21 +0300 Sebastian Dröge <sebastian@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* sys/decklink/gstdecklink.cpp:
decklink: Correctly order the different dependent mode tables
One was forgotten in 309f6187fef890c7ffa49305f38e89beac3b1423.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1652>
2020-09-19 00:26:35 +0900 Seungha Yang <seungha@centricular.com>
* sys/wasapi/gstwasapisrc.c:
* sys/wasapi/gstwasapisrc.h:
wasapisrc: Make sure that wasapisrc produces data in loopback mode
An oddness of wasapi loopback feature is that capture client will not
produce any data if there's no outputting sound to corresponding
render client. In other words, if there's no sound to render,
capture task will stall. As an option to solve such issue, we can
add timeout to wake up from capture thread if there's no incoming data
within given time interval. But it seems to be glitch prone.
Another approach is that we can keep pushing silence data into
render client so that capture client can keep capturing data
(even if it's just silence).
This patch will choose the latter one because it's more straightforward
way and it's likely produce glitchless sound than former approach.
A bonus point of this approach is that loopback capture on Windows7/8
will work with this patch. Note that there's an OS bug prior to Windows10
when loopback capture client is running with event-driven mode.
To work around the bug, event signalling should be handled manually
for read thread to wake up.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1651>
2020-09-29 23:46:00 +1000 Matthew Waters <matthew@centricular.com>
* ext/wpe/gstwpesrc.cpp:
wpesrc: fix some caps leaks using the non-GL output
Always chain up to the parent _stop() implementation as it unrefs some
caps (among other things).
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1409
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1650>
2020-06-16 11:16:37 +0900 Hosang Lee <hosang10.lee@lge.com>
* ext/smoothstreaming/gstmssmanifest.c:
* ext/smoothstreaming/gstmssmanifest.h:
smoothstreaming: clear live adapter on seek
In live streaming, buffers sent by souphttpsrc are pushed to the live
adapter. The buffers in the adapter are sent out of mssdemux when it
is greater than 4096 bytes.
Occasionally, when seeking in live streams, if seek occurs just
after the last data chunk was received, and if this data chunk is
smaller than 4096 bytes, it will be kept in the live adapter.
This remaining data in the live adapter will be erroneously prepended
to the new data that is downloaded after seek and pushed out.
When qtdemux receives this data, since it does not start with
a moof box, it is impossible to demux the fragment, and bogus
size error will occur.
Clear out the live adapter on seek so that no unnecessary remaining
data is pushed out together with the new fragment after seeking.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1649>
2020-09-23 20:08:46 +1000 Matthew Waters <matthew@centricular.com>
* sys/applemedia/videotexturecache-vulkan.mm:
vtdec/vulkan: use Shared storage mode for IOSurface textures
Fixes a debug assertion with i(Pad)OS 14:
'IOSurface textures must use MTLStorageModeShared'
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1648>
2020-09-14 09:48:48 +0100 Philippe Normand <philn@igalia.com>
* ext/wpe/gstwpesrc.cpp:
wpe: Plug event leak
Handled events don't go through the default pad event handler, so they need to
be unreffed in this case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1647>
2020-08-25 01:57:55 +1000 Jan Schmidt <jan@centricular.com>
* ext/wpe/gstwpesrc.cpp:
wpesrc: Don't crash if WPE doesn't generate a buffer.
On creating a 2nd wpesrc in a new pipeline in an app that already
has a runnig wpesrc, WPE sometimes doesn't return a buffer on request,
leading to a crash. This commit fixes the crash, but not the underlying
failure - a 2nd wpesrc can still error out instead.
Partially fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1386
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1647>
2020-09-11 12:51:56 +0100 Philippe Normand <philn@igalia.com>
* ext/wpe/WPEThreadedView.cpp:
wpe: Plug SHM buffer leaks
Fixes #1409
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1647>
2020-09-10 14:39:58 +0100 Philippe Normand <philn@igalia.com>
* ext/wpe/WPEThreadedView.cpp:
* ext/wpe/WPEThreadedView.h:
wpe: Move webview load waiting to WPEView
As waiting for the load to be finished is specific to the WebView, it should be
done from our WPEView, not from the WPEContextThread. This fixes issues where
multiple wpesrc elements are created in sequence. Without this patch the first
view might receive erroneous buffer notifications.
Fixes #1386
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1647>
2020-09-10 13:05:23 +0100 Philippe Normand <philn@igalia.com>
* ext/wpe/WPEThreadedView.cpp:
wpe: Use proper callback for TLS errors signal handling
The load-failed and load-failed-with-tls-errors signals expect distinct callback
signatures.
Fixes #1388
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1646>
2020-09-17 17:39:25 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/kms/gstkmssink.c:
kmssink: Do not source using padded width/height
The width/height from the video meta can be padded width, height. But when
sourcing from padded buffer, we only want to use the valid pixels. This
rectangle is from the crop meta, orther it is deduces from the caps. The width
and height from the caps is save in the parent class, use these instead of the
GstVideoInfo when settting the src rectangle.
This fixes an issue with 1080p video displaying repeated or green at the
padded bottom 8 lines (seen with v4l2codecs).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1642>
2020-09-15 17:09:57 +0200 Marian Cichy <m.cichy@pengutronix.de>
* ext/avtp/gstavtpaafdepay.c:
avtp: avtpaafdepay: fix crash when building caps
gst_caps_new_simple gets wrong types for rate and channel which
may lead to a crash.
As 64-bit values for rate, depth, format, channels does not
make much sense and since any other functionality in gstreamer
expects G_TYPE_INT for channels and rate, we should stick to that
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1641>
2020-09-10 10:35:11 -0700 Adam Williamson <awilliam@redhat.com>
* ext/opencv/meson.build:
opencv: set opencv_dep when option is disabled (#1406)
The examples build file checks opencv_dep, so it still needs to
be set even if the option is disabled.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1406
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1638>
2020-09-04 16:53:03 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* ext/closedcaption/gstline21enc.c:
* ext/closedcaption/gstline21enc.h:
* tests/check/elements/line21.c:
line21enc: add remove-caption-meta property
Similar to #GstCCExtractor:remove-caption-meta
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1637>
2020-09-04 02:38:58 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* ext/closedcaption/gstline21enc.c:
* tests/check/elements/line21.c:
line21enc: heavily constrain video height
We can only determine a correct placement for the CC line
with:
* height == 525 (standard NTSC, line 21 / 22)
* height == 486 (NTSC usable lines + 6 lines for VBI, line 1 / 2)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1637>
2020-09-04 02:33:52 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* ext/closedcaption/gstline21enc.c:
line21enc: add support for CDP closed caption meta
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1637>
2020-08-27 11:23:01 +0200 Edward Hervey <edward@centricular.com>
* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
adaptivedemux: Add another nominal bitrate fallback calculation
Some HTTP servers don't provide fragment sizes (with the Content-Length HTTP
header). In order to still figure out a nominal bitrate (for usage by queue2),
calculate on when we're done downloading a fragment.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1635>
2020-08-27 11:18:56 +0200 Edward Hervey <edward@centricular.com>
* gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
adaptivedemux: Handle invalid HTTP duration
The default BYTE DURATION basesrc query handler will return `-1` and TRUE. In
order to properly handle cases where upstream http servers didn't return a valid
Content-Length we also need to check whether it was valid when calculating
bitrates.
Avoids returning completely bogus bitrates with gogol's video streaming services
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1635>
2020-09-01 13:28:44 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/gstrtmp2sink.c:
* gst/rtmp2/gstrtmp2src.c:
* gst/rtmp2/rtmp/rtmpconnection.c:
rtmp2: Replace stats queue with stats lock
Making the thread receiving the stats wait on the loop to respond was
not a good idea, as the latter can get blocked on the streaming thread.
Have get_stats read the values directly, adding a lock to ensure we
don't read garbage.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1629>
2020-09-02 15:29:49 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/mpegtsmux/gstbasetsmux.c:
* gst/mpegtsmux/gstbasetsmux.h:
mpegtsmux: Make handling of sinkpads thread-safe
Ensure we take the object lock while accessing `GstElement.sinkpads`.
Use an iterator when the code isn't simple to avoid deadlock.
When we find the best pad, take a reference so a concurrent pad
release doesn't destroy the pad before we're done with it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1625>
2020-09-01 13:29:30 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* ext/hls/gsthlssink2.c:
hlssink2: Actually release splitmuxsink's pads
It was looking at the "outer" peer of the ghost pad, not the "inner"
peer (the target).
It provided the wrong pad to gst_element_release_request_pad.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1623>
2020-09-08 10:48:56 +0200 Edward Hervey <edward@centricular.com>
* gst/mpegtsmux/gstbasetsmux.c:
mpegtsmux: Don't create streams with reserved PID
There are quite a few reserved PID in the various MPEG-TS (and derivate)
specifications which we should definitely not use. Those PID have a certain
meaning and purpose.
Furthermore, a lot of the code in the muxer implementation also makes assumption
on the purpose of streams based on their PID.
Therefore, when requesting a pad with a specific PID, make sure it is not a
restricted PID.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1620>
2020-09-14 14:42:36 +0300 Jordan Petridis <jordan@centricular.com>
* tests/check/gst-plugins-bad.supp:
validate: plug leak in gssdp
These are triggered by the webrtcbin tests
https://gitlab.gnome.org/GNOME/gssdp/-/issues/10
2020-09-08 17:44:29 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.18.0 ===
2020-09-08 00:07:45 +0100 Tim-Philipp Müller <tim@centricular.com>
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
* ChangeLog:
* NEWS:
* README:
* RELEASE:
* gst-plugins-bad.doap:
* meson.build:
Release 1.18.0
2020-09-07 22:48:27 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
* scripts/dist-translations.py:
* scripts/meson.build:
meson: dist pot file in tarball
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1558>
2020-09-07 12:14:47 +0300 Sebastian Dröge <sebastian@centricular.com>
* ext/x265/gstx265enc.c:
* gst/videoparsers/gsth264parse.c:
* gst/videoparsers/gsth265parse.c:
* sys/nvcodec/gstnvdec.c:
* sys/nvcodec/gstnvh264enc.c:
* sys/nvcodec/gstnvh265enc.c:
gst: Update for gst_video_transfer_function_*() function renaming