Release 1.17.2

This commit is contained in:
Tim-Philipp Müller 2020-07-03 00:31:17 +01:00
parent 8900f2d2f9
commit 1408ffc6fa
5 changed files with 934 additions and 4 deletions

920
ChangeLog
View file

@ -1,3 +1,922 @@
=== release 1.17.2 ===
2020-07-03 00:31:17 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-plugins-bad.doap:
* meson.build:
Release 1.17.2
2020-07-02 12:37:47 +0100 Philippe Normand <philn@igalia.com>
* docs/plugins/gst_plugins_cache.json:
wpe: Update plugin's doc cache
This was forgotten in !1392.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1402>
2020-07-01 12:28:05 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2decoder.c:
v4l2decoder: Track pending request
With the asynchronous slice decoding, we only queue up to 2 slices
per frames. That side effect is that now we are dequeuing bitstream
buffers in both decoding and presentation order. This would lead to
a bitstream buffer from a previous frame being dequeued instead of
the expected last slice buffer and lead to us trying to queue an
already queued bitstream buffer.
We now fix this by tracking pending requests. As request are executed
in decoding order, we marking a request done, we can effectively
dequeue bitstream buffer from all previous request, as they have been
executed already.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1395>
2020-07-01 12:26:36 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2decoder.c:
v4l2decoder: Improve debug tracing
Add some missing traces and move per-slice operation to TRACE level to
reduce the noise level.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1395>
2020-07-01 12:23:49 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2decoder.c:
v4l2decoder: Convert request pool to GstQueueArray
The decoder is not being access from multiple threads, instead it is
always protected by the streaming lock. For this reason, a
GstAtomicQueue for the request pool is overkill and may even introduce
unneeded overhead. Use a GstQueueArray in replacement, the
GstQueueArray is a good fit since the number of item is predictable and
unlikely to vary at run-time.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1395>
2020-06-29 13:27:32 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2codech264dec.c:
v4l2slh264dec: Wait on previous pending request in slice mode
In slice mode, we'll do one request per slice. In order to recycle
bitstream buffer, and not run-out, wait for the last pending
request to complete and mark it done.
We only wait after having queued the current slice in order to reduce
that potential driver starvation and maintain performance (using dual
buffering).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1395>
2020-06-29 13:25:39 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2codech264dec.c:
v4l2slh264dec: Renew bitstream buffer after submitting slice
Submitting a slice actually clears the bitstream buffer. Ensure we
have a newly allocated bitstream buffer for the next slice.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1395>
2020-06-29 13:23:12 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2codech264dec.c:
v4l2slh264dec: Factor out bitstream allocation
No functional changes.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1395>
2020-06-29 13:04:56 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2codech264dec.c:
v4l2slh264dec: Add a helper to ensure output buffer
In preparation of multi-slice decoding, we will decode multiple
slices into the same buffer. This will ensure we have a buffer to
decode to, queued into the driver.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1395>
2020-06-29 12:39:08 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2codech264dec.c:
v4l2slh264dec: Factor out request wait
This will be reused to wait for previous slices to be complete
when dealing with following slices (in slice decoding mode).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1395>
2020-06-29 12:14:36 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2codech264dec.c:
v4l2slh264dec: Remove double return in submit_bitstream()
This is code cleanup, no functional changes.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1395>
2020-06-29 12:06:34 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* sys/v4l2codecs/gstv4l2codech264dec.c:
v4l2slh264dec: Fix typo in debug trace
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1395>
2020-07-02 18:10:21 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* ext/avtp/gstavtp.c:
* sys/d3d11/plugin.c:
* sys/mediafoundation/plugin.c:
* sys/wasapi2/plugin.c:
docs: remove gst prefix from plugin titles
2020-06-29 00:54:50 +0900 Seungha Yang <seungha@centricular.com>
* docs/plugins/gst_plugins_cache.json:
docs: Update plugin cache for Windows plugins
2020-06-09 00:20:08 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11basefilter.c:
* sys/d3d11/gstd3d11videosink.c:
* sys/d3d11/plugin.c:
* sys/mediafoundation/gstmfaudioenc.cpp:
* sys/mediafoundation/gstmfh264enc.cpp:
* sys/mediafoundation/gstmfh265enc.cpp:
* sys/mediafoundation/gstmfvideoenc.cpp:
* sys/mediafoundation/gstmfvp9enc.cpp:
* sys/mediafoundation/plugin.c:
* sys/wasapi/gstwasapisink.c:
* sys/wasapi/gstwasapisrc.c:
* sys/wasapi2/plugin.c:
* sys/winscreencap/gstdxgiscreencapsrc.c:
plugins: Update for documentation of Windows plugins
* Add Since marks
* Make use of GST_PARAM_CONDITIONALLY_AVAILABLE flag
2020-06-09 01:30:39 +0900 Seungha Yang <seungha@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* sys/nvcodec/gstnvh264dec.c:
* sys/nvcodec/gstnvh264enc.c:
* sys/nvcodec/gstnvh265dec.c:
* sys/nvcodec/gstnvh265enc.c:
nvcodec: Update for documentation
* Add Since marks
* Make use of GST_PARAM_CONDITIONALLY_AVAILABLE flag
* Add documentation template caps
2020-07-01 09:00:41 +0100 Philippe Normand <philn@igalia.com>
* ext/wpe/gstwpesrc.cpp:
wpe: Set documentation caps
As the caps template can vary depending on the WPEBackend-FDO version
found at build time, set a fixed template for the generate documentation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1392>
2020-07-01 17:54:01 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/videoparsers/gstvideoparseutils.c:
videoparsers: Fix parsing ATSC bar data
It rejected the case of all bars being disabled.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1394>
2020-07-01 17:52:39 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/videoparsers/gstvideoparseutils.c:
videoparsers: Fix parsing of ATSC AFD data
The test for 0x40 being set is repeated by
gst_video_parse_utils_parse_afd, which also extracts the low nibble
again, so we must not clear it here.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1394>
2020-07-01 17:51:36 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/videoparsers/gstvideoparseutils.c:
* gst/videoparsers/plugin.c:
videoparsers: Give gstvideoparseutils.c a debug category
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1394>
2020-07-01 20:28:01 +1000 Matthew Waters <matthew@centricular.com>
* ext/closedcaption/gstccconverter.c:
* tests/check/elements/ccconverter.c:
ccconverter: fail negotiation when framerate conversion is not possible
Converting between anything but cdp will fail at converting
framerates and negotiation should reflect that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1393>
2020-07-01 19:41:33 +1000 Matthew Waters <matthew@centricular.com>
* ext/closedcaption/gstccconverter.c:
* tests/check/elements/ccconverter.c:
ccconverter: fix missing output framerate on the caps
A pipeline like this:
closedcaption/x-cea-708,format=cdp,framerate=30000/1001 ! ccconverter ! closedcaption/x-cea-708,format=cc_data
would produce a critical/assert:
GStreamer-CRITICAL **: 14:21:11.509: gst_util_fraction_multiply: assertion 'a_d != 0' failed
because there would be no framerate field on ccconverter's output.
Fixed by always fixating a framerate if the input has a framerate.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1393>
2020-06-29 20:25:27 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/gstrtmp2sink.c:
* gst/rtmp2/rtmp/rtmpclient.c:
* gst/rtmp2/rtmp/rtmpclient.h:
rtmp2: Set connect args like libavformat does
To improve our compatibility. Critically, a server might elide data for
codecs we don't advertise.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1384>
2020-06-29 19:47:16 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/rtmp/rtmpconnection.c:
rtmp2: Add support for AGGREGATE messages
They're multiple frames (tags) of FLV data wrapped into a message.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1384>
2020-06-29 19:46:53 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/gstrtmp2sink.c:
* gst/rtmp2/rtmp/rtmputils.c:
* gst/rtmp2/rtmp/rtmputils.h:
rtmp2: Move FLV tag header parsing into rtmputils.c
To be shared with the AGGREGATE handling.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1384>
2020-06-29 20:57:06 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/rtmp/rtmpconnection.c:
rtmp2: Mark our memory singleton as leakable
So it doesn't appear in the leaks tracer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1384>
2020-06-29 19:46:06 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/rtmp2/rtmp/rtmputils.c:
rtmp2: Remove GST_ERROR from rtmputils.c
This file does not have debug logging set up.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1384>
2020-07-01 12:35:32 +0100 Tim-Philipp Müller <tim@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* ext/avtp/gstavtp.c:
* ext/avtp/gstavtpaafpay.c:
* ext/avtp/gstavtpbasedepayload.c:
* ext/avtp/gstavtpbasepayload.c:
* ext/avtp/gstavtpcrfbase.c:
avtp: documentation fixes
Unclear why hotdoc wants 'gstavtp' as the plugin name here,
that's just wrong.
Add since marker and mark private subclasses as plugin API
so hotdoc knows they belong to the plugin and aren't external.
Fix GstAvtpAafTstampMode get_type() function.
2020-07-01 11:17:08 +0100 Tim-Philipp Müller <tim@centricular.com>
* docs/plugins/gst_plugins_cache.json:
docs: update plugin cache with avtp plugin
CI picks this up now because the wrap was re-added in gst-build.
2020-06-30 06:23:07 +0900 Seungha Yang <seungha@centricular.com>
* gst-libs/gst/codecs/gsth264decoder.c:
codecs: h264decoder: Fix for DPB size calculation
Some bitstreams might require more DPB size than that of what we've
calculated.
This change should've been part of initial commit of h264 stateless
codec implementation but it was missed.
See also https://chromium-review.googlesource.com/c/chromium/src/+/760276/
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1385>
2020-06-25 16:38:30 +0200 Andreas Frisch <afrisch@make.tv>
* gst/mpegtsmux/tsmux/tsmux.c:
mpegtsmux: Correctly set ISO-639 language descriptor
fixes #1340
Only 2 of the necessary 3 letters were copied because the teminating '\0'
needs to be counted, too - cf.
https://developer.gnome.org/glib/stable/glib-String-Utility-Functions.html#g-strlcat
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1375>
2020-06-23 15:35:06 -0400 Olivier Crête <olivier.crete@collabora.com>
* docs/plugins/gst_plugins_cache.json:
* ext/webrtc/gstwebrtcbin.c:
* ext/webrtc/gstwebrtcbin.h:
webrtcbin: Expose "latency" property
This property sets the latency both on the rtpbin/rtpjittbuffer, but
also on the RTPStorage elements currently used by the FEC decoder.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1367>
2020-06-30 02:48:50 +0900 Seungha Yang <seungha@centricular.com>
* sys/winscreencap/gstwinscreencap.c:
dxgiscreencapsrc: Add missing debug category init
This should've been addressed in the commit 90420620722d4490ecfb4ade046b95d214f993d9
but I was missed it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1383>
2020-06-14 20:47:46 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
* gst-libs/gst/codecs/gsth264picture.c:
codecs: h264picture: use g_array_remove_index_fast()
This algorithm is faster than the normal one. The problem is it
disorders the elements in the dpb, but it does not seem to mess
decoders.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1378>
2020-06-28 18:54:54 +0200 Michael Olbrich <m.olbrich@pengutronix.de>
* ext/wayland/wlvideoformat.c:
wlvideoformat: fix typo in the format list
DRM_FORMAT_ARGB8888 was actually used twice in the list for different SHM /
Gstreamer formats. In this case DRM_FORMAT_ABGR8888 is the correct format.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1382>
2020-03-22 19:00:50 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
va: VA-API H.264 decoder and infrastructure
New plugin with an element for H.264 decoding with VA-API. This novel
approach, different from gstreamer-vaapi, uses gstcodecs library for
state handling.
The code is expected to looks cleaner because it uses VA-API without
further layers or wrappers.
* It uses the first supported DRM device as default VA display (other
displays will be supported through user's GstContext)
* Requires libva >= 1.6
* No multiview/stereo profiles neither interlaced streams because
gstcodecs doesn't handle them yet
* It is incompatible with gstreamer-vaapi
* Even if memory:VAMemory is exposed, it is not handled yet by any
other element
* Caps templates are generated dynamically querying VAAPI, but YV12
and I420 are added for system memory caps because they seem to be
supported for all the drivers when downloading frames onto main
memory, as they are used by xvimagesink and others, avoiding color
conversion.
* Surfaces aren't bounded to context, so they can grow beyond the DBP
size, allowing smooth reverse playback.
* There isn't yet error handling and recovery.
* 10-bit H.264 streams aren't supported by libva.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1379>
2020-06-27 13:18:34 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
* gst-libs/gst/codecs/gsth264decoder.c:
codecs: h264decoder: update max_dpb_frames only if VUI is present
There are some streams, with HRD, where the the calculated
max_dpb_frames is zero (max_dpb_mbs is less than size mb). In order to
get the dbp size it is required to rely on the VUI parameters if they
are present.
According to the spec Annex E.2.1
**max_dec_frame_buffering** specifies the required size of the HRD
decoded picture buffer (DPB) in units of frame buffers. It is a
requirement of bitstream conformance that the coded video sequence
shall not require a decoded picture buffer with size of more than
Max(1, max_dec_frame_buffering) frame buffers to enable the output of
decoded pictures at the output times specified by dpb_output_delay of
the picture timing SEI messages. The value of max_dec_frame_buffering
shall be greater than or equal to max_num_ref_frames. An upper bound
for the value of max_dec_frame_buffering is specified by the level
limits in clauses A.3.1, A.3.2, G.10.2.1, and H.10.2.
When the max_dec_frame_buffering syntax element is not present, the
value of max_dec_frame_buffering shall be inferred as follows:
If profile_idc is equal to 44, 86, 100, 110, 122, or 244 and
constraint_set3_flag is equal to 1, the value of
max_dec_frame_buffering shall be inferred to be equal to 0.
Otherwise (profile_idc is not equal to 44, 86, 100, 110, 122, or 244
or constraint_set3_flag is equal to 0), the value of
max_dec_frame_buffering shall be inferred to be equal to MaxDpbFrames.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1381>
2020-06-26 10:20:04 +0300 Sebastian Dröge <sebastian@centricular.com>
* ext/dtls/gstdtlsconnection.c:
gstdtlsconnection: Propagate errors from key export to the caller
Otherwise the DTLS connection silently does nothing instead of reporting
an error via the elements.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1156>
2020-04-01 18:08:45 +0200 Miguel Paris <mparisdiaz@gmail.com>
* ext/dtls/gstdtlsconnection.c:
dtlsconnection: do not set keys_exported flag if actually not exported
keys_exported flag should be set only if keys are actually exported.
For that the next conditions are needed:
1 - SSL_export_keying_material on success
2 - SSL_get_selected_srtp_profile returns a valid profile
3 - The profile ID is SRTP_AES128_CM_SHA1_80 or SRTP_AES128_CM_SHA1_32
Also don't crash if NULL is returned as profile.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1156>
2020-06-25 19:41:52 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11h265dec.c:
d3d11h265dec: Fix possible invalid memory access
The number of element to copy should be num_tile_columns_minus1
and num_tile_rows_minus1.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1374>
2020-06-25 19:26:45 +0900 Seungha Yang <seungha@centricular.com>
* sys/nvcodec/gstnvh265dec.c:
nvh265sldec: Fix possible invalid memory access
Fix Coverity issues.
CID 1464959, 1464960, 1464961, 1464962
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1374>
2020-06-25 16:05:39 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* gst/interlace/gstinterlace.c:
interlace: Make caps writable before modifying them
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1373>
2020-06-24 16:34:20 +0300 Sebastian Dröge <sebastian@centricular.com>
* ext/closedcaption/gstccextractor.c:
ccextractor: Push a GAP event if we have a caption pad but a video buffer did not contain any captions
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1371>
2020-06-24 13:33:39 +0300 Sebastian Dröge <sebastian@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* ext/closedcaption/gstccextractor.c:
* ext/closedcaption/gstccextractor.h:
ccextractor: Add property to remove caption meta from the outgoing video buffers
This is disabled by default to keep backwards compatibility.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1371>
2020-06-16 04:41:14 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/plugin.c:
d3d11videosink: Disable d3d11videosink depending on supported feature level
Current shader code is not compatible with HLSL profile "ps_4_0_level_9_3"
or lower. So d3dcompiler cannot compile our shader code in that case.
Note that VirtualBox is one known driver which doesn't support currently
implemented shader code.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1343>
2020-06-24 19:18:15 +0000 Mathieu Duponchelle <mduponchelle1@gmail.com>
* gst/mxf/mxfvanc.c:
mxfvanc: document new sink pad template
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1368>
2020-06-23 23:40:38 +0300 Sebastian Dröge <sebastian@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* gst/mxf/meson.build:
* gst/mxf/mxf.c:
* gst/mxf/mxfvanc.c:
* gst/mxf/mxfvanc.h:
mxfdemux/mux: Add support for CEA-708 CDP from S436 essence tracks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1368>
2020-06-23 15:31:51 -0700 Kevin King <4kevinking@gmail.com>
* sys/applemedia/avfvideosrc.m:
avfvideosrc: wait for permissions request dialog callback
otherwise gstreamer gives up on transitioning the pipeline before the
user has accepted
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1370>
2020-06-19 14:30:04 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* docs/plugins/gst_plugins_cache.json:
* gst/interlace/gstinterlace.c:
interlace: Switch field-pattern on the fly
The frame rate interlace uses changes when we change field-pattern, so
we need to issue a reconfigure event.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1364>
2020-06-22 20:15:13 +0900 Seungha Yang <seungha@centricular.com>
* sys/nvcodec/gstnvh264dec.c:
nvh264sldec: Remove useless double space
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1357>
2020-06-20 05:57:59 +0900 Seungha Yang <seungha@centricular.com>
* sys/nvcodec/gstnvh265dec.c:
* sys/nvcodec/gstnvh265dec.h:
* sys/nvcodec/meson.build:
* sys/nvcodec/plugin.c:
nvcodec: Add H265 stateless codec implementation
Add a new GstCodecs based H265 decoder element
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1357>
2020-06-19 04:50:26 +0900 Seungha Yang <seungha@centricular.com>
* sys/nvcodec/gstnvdecoder.c:
* sys/nvcodec/gstnvdecoder.h:
* sys/nvcodec/gstnvh264dec.c:
nvcodec: Move common methods to nvdecoder
... and remove all #ifdef from nvh264sldec implementation.
New helper methods will take care of OpenGL specific ones.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1357>
2020-06-19 04:36:15 +0900 Seungha Yang <seungha@centricular.com>
* sys/nvcodec/gstnvh264dec.c:
nvh264sldec: Declare OpenGL related objects unconditionally
GstGLDisplay and GstGLContext are subclass of GstObject so we can
remove #ifdef for such object. This is prework for nvh265sldec.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1357>
2020-06-19 04:10:48 +0900 Seungha Yang <seungha@centricular.com>
* sys/nvcodec/gstnvh264dec.c:
nvh264sldec: Fix for possible wrong device selction
decoder should select assigned CUDA device id
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1357>
2020-06-23 19:31:42 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* pkgconfig/gstreamer-photography-uninstalled.pc.in:
* pkgconfig/gstreamer-photography.pc.in:
* pkgconfig/meson.build:
meson: Add missing pc file for gstphotography
This is supposed to be used by apps like Cheese, and is a public
library.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1365>
2020-06-23 19:03:12 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* pkgconfig/gstreamer-transcoder-uninstalled.pc.in:
* pkgconfig/gstreamer-transcoder.pc.in:
* pkgconfig/meson.build:
meson: Add missing pkgconfig files for gsttranscoder
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1365>
2020-06-19 10:50:12 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* gst/interlace/gstinterlace.c:
interlace: Re-indentation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1349>
2020-06-18 23:52:01 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* docs/plugins/gst_plugins_cache.json:
* gst/interlace/gstinterlace.c:
interlace: Don't change field-pattern on PAUSED or PLAYING state
It would otherwise change the caps the element produces and cause the
element to misbehave
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1349>
2020-06-18 22:56:57 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* gst/interlace/gstinterlace.c:
interlace: Don't fail negotiation if capsfilters decide framerate
Try to negotiate if the framerates on either sides of the interlace are
decided using capsfilters and the framerates are correct. Otherwise the
following pipelines would fail to negotiate:
gst-launch-1.0 videotestsrc !
video/x-raw,framerate=24/1,interlace-mode=progressive ! interlace
field-pattern=2 ! video/x-raw,framerate =30/1 ! fakesink
gst-launch-1.0 videotestsrc !
video/x-raw,framerate=60/1,interlace-mode=progressive ! interlace
field-pattern=0 ! video/x-raw,framerate=30/1 ! fakesink
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1349>
2020-06-18 22:15:08 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* gst/interlace/gstinterlace.c:
interlace: Restrict passthrough conditions
Don't do passthrough if interleave-mode=mixed or if we have one of the
telecine modes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1349>
2020-06-18 21:10:56 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* gst/interlace/gstinterlace.c:
interlace: Add field switching mode for 2:2 field pattern
In the 2:2 field pattern, interlace can switch from bottom-field-first
to top-field-first.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1349>
2020-06-18 21:11:17 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* gst/interlace/gstinterlace.c:
interlace: Only half the framerate for 1:1 field pattern
Keep the framerate for 2:2 field pattern, and completely remove it from
the caps for all others. Otherwise, negotiation will fail if caps on
both sides of the element specify a framerate.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1349>
2020-06-18 20:41:35 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* gst/interlace/gstinterlace.c:
interlace: Add FIXME comment about false passthrough bug
If interlace-mode is missing from upstream caps, we can falsely do
passthrough when in fact we'd have to switch fields.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1349>
2020-06-23 12:30:51 -0400 Thibault Saunier <tsaunier@igalia.com>
* docs/plugins/gst_plugins_cache.json:
docs: Update plugins cache
2020-06-23 11:36:15 -0400 Thibault Saunier <tsaunier@igalia.com>
* docs/plugins/gst_plugins_cache.json:
* gst-libs/gst/audio/gstnonstreamaudiodecoder.c:
openmpt: Namespace enum GType names
2020-06-23 11:33:45 -0400 Thibault Saunier <tsaunier@igalia.com>
* docs/plugins/gst_plugins_cache.json:
* gst-libs/gst/audio/gstnonstreamaudiodecoder.c:
* gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.c:
docs: Unmark wrongly marked plugin API types
2020-06-23 10:03:04 -0400 Thibault Saunier <tsaunier@igalia.com>
* docs/libs/basecamerabinsrc/index.md:
* docs/libs/basecamerabinsrc/sitemap.txt:
* docs/meson.build:
* docs/plugins/gst_plugins_cache.json:
* gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c:
* gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c:
* gst-libs/gst/basecamerabinsrc/meson.build:
* gst/camerabin2/gstcamerabin2.c:
docs: Document basecamerabinsrc
2020-06-23 02:51:48 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* ext/opencv/gstcvdilateerode.cpp:
* sys/nvcodec/gstnvbaseenc.c:
* sys/nvcodec/gstnvdec.c:
* sys/nvcodec/gstnvh264dec.c:
docs: mark more types as plugin API
2020-06-23 00:12:59 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* docs/plugins/gst_plugins_cache.json:
plugins_cache: add base classes
2020-06-23 00:05:36 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* docs/meson.build:
meson: mark plugins cache target as always stale
2020-06-21 01:32:50 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* ext/curl/gstcurlbasesink.c:
* ext/curl/gstcurlsshsink.c:
* ext/curl/gstcurltlssink.c:
* ext/dtls/gstdtlssrtpbin.c:
* ext/ladspa/gstladspafilter.c:
* ext/ladspa/gstladspasource.c:
* ext/wayland/gstwaylandsink.c:
* gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c:
* gst-libs/gst/vulkan/gstvkvideofilter.c:
* gst/geometrictransform/gstcirclegeometrictransform.c:
* gst/geometrictransform/gstgeometrictransform.c:
* gst/mpegtsdemux/mpegtsbase.c:
* gst/mpegtsmux/gstbasetsmux.c:
* gst/rtmp2/gstrtmp2sink.c:
* gst/segmentclip/gstsegmentclip.c:
docs: mark more types as plugin API
2020-06-21 01:32:29 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* docs/libs/opencv/index.md:
* docs/libs/opencv/sitemap.txt:
* docs/meson.build:
* gst-libs/gst/opencv/meson.build:
docs: generate documentation for libgstopencv
2020-06-19 19:40:52 -0400 Thibault Saunier <tsaunier@igalia.com>
* docs/plugins/gst_plugins_cache.json:
doc: Stop documenting properties from parents
2020-06-23 09:50:46 +0300 Sebastian Dröge <sebastian@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* gst/audiobuffersplit/gstaudiobuffersplit.c:
audiobuffersplit: Specify in the template caps that only interleaved audio is supported
Needs special support for non-interleaved audio and e.g. use the
GstPlanarAudioAdapter.
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/779
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1363>
2020-06-22 12:32:50 +0300 Sebastian Dröge <sebastian@centricular.com>
* ext/webrtc/gstwebrtcbin.c:
webrtcbin: Don't call gst_ghost_pad_construct() anymore
It's deprecated, unneeded and doesn't do anything anymore.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1360>
2020-06-18 21:21:26 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* gst/videoparsers/gsth264parse.c:
Revert "h264parse: Include `interlace-mode` in caps"
This reverts commit b75a61342f4ea039d922a966f36b02cd9d9c3ad8.
The parser would only set the mode to progressive or mixed, missing the
cases where it should have been interleaved. Interleaved is more
difficult to detect because in h264 it happens per frame. On the other
hand, h264 decoders detect the interlacing information per-frame and set
the caps correctly. By giving potentially incorrect interlacing
information in the parser already, it's being enforced downstream even
after decoding, breaking some use cases (e.g. an encoder can't properly
mark the stream as TFF or BFF). On the other hand, there's no valid use
case for having interlacing information on the caps at the parsing
stage, so after a lot of discussion, it was decided to revert this.
Initial commit message:
=========================
Those are the rules:
In the SPS:
* if frame_mbs_only_flag=1 => all frame progressive
* if frame_mbs_only_flag=0 => field_pic_flag defines if each frame is
progressive or interlaced, thus the mode is 'mixed' in GStreamer
terms.
https://bugzilla.gnome.org/show_bug.cgi?id=779309
=========================
Fixes #1313
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1335>
2020-06-22 18:42:45 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11window_win32.cpp:
d3d11window_win32: Chain up mouse event to parent window
Unlike key event, mouse event will not be chained up to parent window
by DefWindowProc
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1361>
2020-06-19 22:14:29 +0900 Seungha Yang <seungha@centricular.com>
* sys/winscreencap/dxgicapture.c:
* sys/winscreencap/dxgicapture.h:
* sys/winscreencap/gstdxgiscreencapsrc.c:
* sys/winscreencap/gstdxgiscreencapsrc.h:
* sys/winscreencap/gstwinscreencap.c:
* sys/winscreencap/meson.build:
dxgiscreencapsrc: Load HLSL compiler library using g_module_open
Depending on OS version, available d3dcompiler library name is different.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1355>
2020-06-19 23:02:45 +0900 Seungha Yang <seungha@centricular.com>
* sys/winscreencap/dxgicapture.c:
* sys/winscreencap/gstdxgiscreencapsrc.c:
* sys/winscreencap/gstwinscreencap.c:
dxgiscreencapsrc: Reorganize debug category usage
Use the same debug category in all dxgiscreencap related source code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1355>
2020-06-19 21:43:15 +0900 Seungha Yang <seungha@centricular.com>
* sys/winscreencap/dxgicapture.c:
* sys/winscreencap/meson.build:
winscreencap: Remove trailing whitespaces
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1355>
2020-06-19 21:34:32 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11device.c:
d3d11device: Print supported DXGI format for debugging
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1355>
2020-06-19 21:24:59 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11shader.c:
* sys/d3d11/gstd3d11shader.h:
* sys/d3d11/meson.build:
* sys/d3d11/plugin.c:
d3d11: Load HLSL compiler library using g_module_open
Depending on OS version, available d3dcompiler library name is different.
But for UWP, we can still use the current way
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1355>
2020-06-19 20:40:24 +0900 Seungha Yang <seungha@centricular.com>
* sys/d3d11/gstd3d11shader.c:
d3d11shader: Add missing config.h include
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1355>
2020-06-21 16:02:43 +1000 Matthew Waters <matthew@centricular.com>
* ext/webrtc/gstwebrtcbin.c:
webrtc: fix ice control mode when we offer initially
An initial offer means we have a local description not a remote
description.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1332
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1358>
2020-05-25 00:15:14 +0900 Seungha Yang <seungha@centricular.com>
* sys/mediafoundation/gstmfvp9enc.cpp:
* sys/mediafoundation/gstmfvp9enc.h:
* sys/mediafoundation/meson.build:
* sys/mediafoundation/plugin.c:
mediafoundation: Add VP9 encoder element
Some Intel GPUs support hardware accelerated VP9 encoding and
Microsoft provides software VP9 encoding implementation as well.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1295>
2020-06-18 12:15:09 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* ext/fdkaac/gstfdkaacenc.c:
fdkaacenc: Add missing SURROUND mappings
SURROUND is more to spec according to the FIXME comments, so add this.
Also add SIDE for 5 and 5.1 because of ffmpeg compatibility, because the
following pipeline downmixes to mono otherwise:
gst-launch-1.0 audiotestsrc num-buffers=1 ! audio/x-raw, channels=6 !
avenc_ac3 ! avdec_ac3 ! audioconvert ! fdkaacenc ! fakesink -v
Fixes #1327
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1352>
2020-06-15 01:38:03 +1000 Matthew Waters <matthew@centricular.com>
* gst-libs/gst/vulkan/gstvkdevice.c:
* gst-libs/gst/vulkan/gstvkinstance.c:
* gst-libs/gst/vulkan/gstvkphysicaldevice.c:
vulkan: log extension/layers available/enabled on instance/device creation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1341>
2020-06-15 01:26:08 +1000 Matthew Waters <matthew@centricular.com>
* gst-libs/gst/vulkan/gstvkdevice.c:
* gst-libs/gst/vulkan/gstvkdevice.h:
* gst-libs/gst/vulkan/gstvkphysicaldevice.c:
* gst-libs/gst/vulkan/gstvkphysicaldevice.h:
* gst-libs/gst/vulkan/gstvkswapper.c:
vulkan/device: expose extension/layer choices
Extensions and layers can be enabled before calling
gst_vulkan_device_open(). The available extensions are stored in
GstVulkanPhysicalDevice.
Defaults are still the same.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1341>
2020-06-14 21:04:37 +1000 Matthew Waters <matthew@centricular.com>
* gst-libs/gst/vulkan/gstvkinstance.c:
* gst-libs/gst/vulkan/gstvkinstance.h:
vulkan/instance: privatise defult debug callback
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1341>
2020-06-14 21:00:06 +1000 Matthew Waters <matthew@centricular.com>
* gst-libs/gst/vulkan/gstvkdisplay.c:
* gst-libs/gst/vulkan/gstvkinstance.c:
* gst-libs/gst/vulkan/gstvkinstance.h:
* tests/check/libs/vkinstance.c:
vulkan/instance: expose extension/layer choices
Extensions and layers can be enabled before calling
gst_vulkan_instance_open() but after calling
gst_vulkan_instance_fill_info().
Use the list of available extensions to better choose a default display
implementation to use based on the available Vulkan extensions for surface
output.
Defaults are still the same.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1341>
2020-06-13 17:40:02 +1000 Matthew Waters <matthew@centricular.com>
* gst-libs/gst/vulkan/gstvkphysicaldevice.c:
vulkan/physical-device: dump some more information to logs
Also dump the Vulkan 1.1 and Vulkan 1.2 device properties/features
where supported.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1341>
2020-06-13 17:31:07 +1000 Matthew Waters <matthew@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* gst-libs/gst/vulkan/gstvkinstance.c:
* gst-libs/gst/vulkan/gstvkinstance.h:
* tests/check/libs/vkinstance.c:
* tests/check/meson.build:
vulkan/instance: add vulkan API version selection and checking
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1341>
2020-06-13 17:29:57 +1000 Matthew Waters <matthew@centricular.com>
* gst-libs/gst/vulkan/wayland/gstvkwindow_wayland.c:
vulkan/wayland: initialise debug category before debug logging
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1341>
2020-06-19 12:15:53 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* gst-libs/gst/codecparsers/nalutils.h:
nalutils: Improve slightly the error trace
Until now, bound check would simply trace the values and the range. This
enhances the trace by also tracing the name of the variable that was to be set
or read. This is not magically perfect in all cases, but greatly speed the
debugging work. Here's an example before and after this change:
Before: gst_h264_parser_parse_slice_hdr: value not in allowed range. value: 819183, range -87-77
After: gst_h264_parser_parse_slice_hdr: value for 'slice->slice_qp_delta' not in allowed range. value: 819183, range -87-77
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1356>
2019-12-12 12:58:24 +0100 Jan Alexander Steffens (heftig) <jsteffens@make.tv>
* docs/plugins/gst_plugins_cache.json:
* gst/debugutils/gsterrorignore.c:
Revert "errorignore: Added convert-error signal"
The introduced API has [some problems][1] and [a better solution][2] was
found that made the feature obsolete.
This reverts commit f7626c1f2ac14a34991723df6c28f54af38fcbc4.
[1]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/736#note_357702
[2]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/736#note_238830
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/916
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/916>
2020-06-20 00:28:22 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
=== release 1.17.1 ===
2020-06-19 19:22:18 +0100 Tim-Philipp Müller <tim@centricular.com>
@ -5,6 +924,7 @@
* ChangeLog:
* NEWS:
* RELEASE:
* docs/plugins/gst_plugins_cache.json:
* gst-plugins-bad.doap:
* meson.build:
Release 1.17.1

4
NEWS
View file

@ -11,7 +11,7 @@ in summer 2020 now.
1.17.x is the unstable development series that is currently being
developed in the git master branch and which will eventually result in
1.18, and 1.17.1 is the current development release in that series.
1.18, and 1.17.2 is the current development release in that series.
The schedule for the 1.18 development cycle is yet to be confirmed, but
it is expected that feature freeze will be in June/July 2020, followed
@ -24,7 +24,7 @@ July/August 2020.
See https://gstreamer.freedesktop.org/releases/1.18/ for the latest
version of this document.
_Last updated: Thursday 18 June 2020, 16:00 UTC (log)_
_Last updated: Wednesday 1 July 2020, 23:50 UTC (log)_
Introduction

View file

@ -1,4 +1,4 @@
This is GStreamer gst-plugins-bad 1.17.1.
This is GStreamer gst-plugins-bad 1.17.2.
GStreamer 1.17 is the development branch leading up to the next major
stable version which will be 1.18.

View file

@ -33,6 +33,16 @@ real live maintainer, or some actual wide use.
</GitRepository>
</repository>
<release>
<Version>
<revision>1.17.2</revision>
<branch>master</branch>
<name></name>
<created>2020-07-03</created>
<file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.17.2.tar.xz" />
</Version>
</release>
<release>
<Version>
<revision>1.17.1</revision>

View file

@ -1,5 +1,5 @@
project('gst-plugins-bad', 'c', 'cpp',
version : '1.17.1.1',
version : '1.17.2',
meson_version : '>= 0.49',
default_options : [ 'warning_level=1',
'buildtype=debugoptimized' ])