mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-20 00:31:13 +00:00
Update ChangeLogs for 1.20.3
This commit is contained in:
parent
d1bb5e014d
commit
a80e65217e
12 changed files with 1021 additions and 0 deletions
|
@ -1,7 +1,14 @@
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* gst-devtools.doap:
|
* gst-devtools.doap:
|
||||||
|
|
|
@ -1,7 +1,22 @@
|
||||||
|
2022-05-13 10:23:54 +1000 Matthew Waters <matthew@centricular.com>
|
||||||
|
|
||||||
|
* ges/ges-video-uri-source.c:
|
||||||
|
ges/videourisource: handle non-1/1 PAR source videos
|
||||||
|
The automatic scaling done by framepositioner does not account for the
|
||||||
|
par of the video source.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2614>
|
||||||
|
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* gst-editing-services.doap:
|
* gst-editing-services.doap:
|
||||||
|
|
|
@ -1,7 +1,14 @@
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* gst-libav.doap:
|
* gst-libav.doap:
|
||||||
|
|
|
@ -1,7 +1,14 @@
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* gst-omx.doap:
|
* gst-omx.doap:
|
||||||
|
|
|
@ -1,7 +1,274 @@
|
||||||
|
2022-06-09 23:19:24 +0900 Seungha Yang <seungha@centricular.com>
|
||||||
|
|
||||||
|
* sys/d3d11/gstd3d11decoder.cpp:
|
||||||
|
d3d11decoder: Fix for alternate interlacing signalling
|
||||||
|
Don't set d3d11+interlace caps feature. None of d3d11 elements
|
||||||
|
support it
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2584>
|
||||||
|
|
||||||
|
2022-05-27 05:15:13 +1000 Jan Schmidt <jan@centricular.com>
|
||||||
|
|
||||||
|
* sys/androidmedia/gstamc-constants.h:
|
||||||
|
* sys/androidmedia/gstamc.c:
|
||||||
|
* sys/androidmedia/gstamcvideoenc.c:
|
||||||
|
* sys/androidmedia/gstamcvideoenc.h:
|
||||||
|
amc: Add H.265 encoder mapping.
|
||||||
|
Add mime type mapping to enable the use of Android H.265 encoders
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2572>
|
||||||
|
|
||||||
|
2022-05-30 16:31:38 -0400 Olivier Crête <olivier.crete@collabora.com>
|
||||||
|
|
||||||
|
* ext/webrtc/gstwebrtcbin.c:
|
||||||
|
* tests/check/elements/webrtcbin.c:
|
||||||
|
webrtcbin: Reject answers that don't contain the same number of m-line as offer
|
||||||
|
Otherwise, it segfaults later. Also add test to validate this.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2561>
|
||||||
|
|
||||||
|
2022-06-04 17:23:00 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
|
||||||
|
|
||||||
|
* gst/rtmp2/rtmp/rtmpmessage.c:
|
||||||
|
rtmp2: Fix allocation of GstRtmpMeta
|
||||||
|
Use the right size.
|
||||||
|
On 64-bit platforms, `GstMetaInfo` is larger than `GstRtmpMeta`, which
|
||||||
|
masked this bug. On 32-bit platforms, it causes crashes. Thanks to
|
||||||
|
@maxatka for discovering this.
|
||||||
|
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1721
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2564>
|
||||||
|
|
||||||
|
2022-06-06 00:30:15 +0200 Jan Alexander Steffens (heftig) <heftig@archlinux.org>
|
||||||
|
|
||||||
|
* ext/opencv/gstcvtracker.cpp:
|
||||||
|
* ext/opencv/gstcvtracker.h:
|
||||||
|
* ext/opencv/meson.build:
|
||||||
|
opencv: Allow building against 4.6.x
|
||||||
|
Replace the broken version checks with one modeled after
|
||||||
|
`GLIB_CHECK_VERSION`.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2558>
|
||||||
|
|
||||||
|
2022-05-27 21:13:43 +0900 Seungha Yang <seungha@centricular.com>
|
||||||
|
|
||||||
|
* gst-libs/gst/d3d11/gstd3d11memory.cpp:
|
||||||
|
* gst-libs/gst/d3d11/gstd3d11memory.h:
|
||||||
|
* sys/d3d11/gstd3d11decoder.cpp:
|
||||||
|
d3d11decoder: Work around Intel DXVA driver crash
|
||||||
|
Intel DXVA driver crashes sometimes (from GPU thread) if
|
||||||
|
ID3D11VideoDecoder is released while there are outstanding view objects.
|
||||||
|
To make sure the object life cycle, holds an ID3D11VideoDecoder refcount
|
||||||
|
in GstD3D11Memory object.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2513>
|
||||||
|
|
||||||
|
2022-05-24 11:06:39 +0200 Erwann Gouesbet <erwann.gouesbet@blacknut.com>
|
||||||
|
|
||||||
|
* sys/d3d11/gstd3d11screencapture.cpp:
|
||||||
|
d3d11screencapture: Fix missing/outdated cursor shape
|
||||||
|
d3d11screencapture can miss a cursor shape to draw or draw an outdated cursor shape.
|
||||||
|
- AcquireNextFrame only provides cursor shape when there is one update
|
||||||
|
- current d3d11screencapture skips cursor shape when mouse is not drawn
|
||||||
|
So, if a gstreamer application uses d3d11screencapture with cursor initially not drawn
|
||||||
|
"show-cursor"=false and then switches this property to true, the cursor will not be
|
||||||
|
actually drawn until AcquireNextFrame provides a new cursor shape.
|
||||||
|
This commit makes d3d11screencapture always update the cursor shape information, even
|
||||||
|
if the mouse is not drawn. d3d11screencapture will always have the latest cursor shape
|
||||||
|
when requested to draw it.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2488>
|
||||||
|
|
||||||
|
2022-05-18 16:54:53 +0100 Philippe Normand <philn@igalia.com>
|
||||||
|
|
||||||
|
* ext/webrtc/webrtcdatachannel.c:
|
||||||
|
datachannel: Notify low buffered amount according to spec
|
||||||
|
Quoting
|
||||||
|
https://www.w3.org/TR/webrtc/#dom-rtcdatachannel-bufferedamountlowthreshold
|
||||||
|
The bufferedAmountLowThreshold attribute sets the threshold at which the
|
||||||
|
bufferedAmount is considered to be low. When the bufferedAmount decreases from
|
||||||
|
above this threshold to **equal** or below it, the bufferedamountlow event fires.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2452>
|
||||||
|
|
||||||
|
2022-05-17 14:15:40 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/mpegtsmux/gstbasetsmux.c:
|
||||||
|
tsmux: Make sure to set srcpad caps under all conditions before outputting the first buffer
|
||||||
|
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1218
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2446>
|
||||||
|
|
||||||
|
2022-05-17 14:02:28 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/sdp/gstsdpdemux.c:
|
||||||
|
sdpdemux: Release request pads from rtpbin when freeing a stream
|
||||||
|
Otherwise the pads of the rtpbin stay around forever and are leaked.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2445>
|
||||||
|
|
||||||
|
2022-05-06 18:21:00 -0400 Olivier Crête <olivier.crete@ocrete.ca>
|
||||||
|
|
||||||
|
* gst/pcapparse/gstpcapparse.c:
|
||||||
|
pcapparse: Set timestamp in DTS, not PTS
|
||||||
|
This matches the behaviour of basesrc, in particular, it matches the
|
||||||
|
behaviour of udpsrc, so it's easier to use to as a replacement to test
|
||||||
|
rtpjitterbuffer and other similar elements.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2424>
|
||||||
|
|
||||||
|
2022-04-28 16:02:26 +0100 Diogo Goncalves <diogo@diporg.com>
|
||||||
|
|
||||||
|
* sys/applemedia/avfvideosrc.m:
|
||||||
|
avfvideosrc: fix wrong framerate selected for caps
|
||||||
|
This fix solves an issue where a format that doesn't support the
|
||||||
|
requested framerate would be selected. It ensures that we use the first
|
||||||
|
format and framerate pair that supports the requested caps.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2418>
|
||||||
|
|
||||||
|
2022-05-12 07:23:29 +0200 Edward Hervey <edward@centricular.com>
|
||||||
|
|
||||||
|
* gst/mxf/mxfdemux.c:
|
||||||
|
mxfdemux: Handle files produced by legacy FFmpeg
|
||||||
|
Until March 2022, the FFmpeg MXF muxer would write the various index table
|
||||||
|
segments with the same instance ID, which should only be used if it is a
|
||||||
|
duplicate/repeated table.
|
||||||
|
In order to cope with those, we first compare the other index table segment
|
||||||
|
properties (body/index SID, start position) before comparing the instance
|
||||||
|
ID. This will ensure that we don't consider them as duplicate, but can still
|
||||||
|
detect "real" duplicates (which would have the same other properties).
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2408>
|
||||||
|
|
||||||
|
2022-05-06 17:53:51 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||||||
|
|
||||||
|
* gst-libs/gst/va/gstvadisplay_drm.c:
|
||||||
|
libs: va: Add O_CLOEXEC flag at opening drm device.
|
||||||
|
So any other potential subprocess won't have access to it.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2391>
|
||||||
|
|
||||||
|
2022-05-05 20:35:57 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/mxf/mxfmux.c:
|
||||||
|
mxfmux: Disable aggregator's default negotiation
|
||||||
|
mxfmux can't negotiate caps with upstream/downstream and always outputs
|
||||||
|
specific caps based on the input streams. This will always happen before
|
||||||
|
it produces the first buffers.
|
||||||
|
By having the default aggregator negotiation enabled the same caps
|
||||||
|
would be pushed twice in the beginning, and again every time a
|
||||||
|
reconfigure event is received.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2381>
|
||||||
|
|
||||||
|
2022-05-05 20:35:49 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/mpegtsmux/gstbasetsmux.c:
|
||||||
|
mpegtsmux: Disable aggregator's default negotiation
|
||||||
|
mpegtsmux can't negotiate caps with upstream/downstream and always outputs
|
||||||
|
specific caps based on the input streams. This will always happen before
|
||||||
|
it produces the first buffers.
|
||||||
|
By having the default aggregator negotiation enabled the same caps
|
||||||
|
would be pushed twice in the beginning, and again every time a
|
||||||
|
reconfigure event is received.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2381>
|
||||||
|
|
||||||
|
2022-05-05 00:24:26 +0900 Seungha Yang <seungha@centricular.com>
|
||||||
|
|
||||||
|
* gst-libs/gst/codecs/gsth264decoder.c:
|
||||||
|
h264decoder: Fix for unhandled low-delay decoding case
|
||||||
|
Baseclass calls get_preferred_output_delay() in a chain of
|
||||||
|
sequence header parsing and then new_sequence() is called
|
||||||
|
with required DPB size (includes render-delay) information.
|
||||||
|
Thus latency query should happen before the sequence header
|
||||||
|
parsing for subclass to report required render-delay accordingly
|
||||||
|
via get_preferred_output_delay() method.
|
||||||
|
(e.g., zero delay in case of live pipeline)
|
||||||
|
This commit is to fix wrong liveness signalling in case of
|
||||||
|
upstream packetized format.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2380>
|
||||||
|
|
||||||
|
2022-05-04 23:36:30 +0900 Seungha Yang <seungha@centricular.com>
|
||||||
|
|
||||||
|
* sys/nvcodec/gstnvh264dec.c:
|
||||||
|
* sys/nvcodec/gstnvh265dec.c:
|
||||||
|
nvh264dec,nvh265dec: Don't realloc bitstream buffer per slice
|
||||||
|
Allocated memory size has not been updated which results in
|
||||||
|
realloc per slice. Fixing it and also release bitstream buffer
|
||||||
|
on ::close(), not finalize.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2379>
|
||||||
|
|
||||||
|
2022-05-05 02:16:54 +0900 Seungha Yang <seungha@centricular.com>
|
||||||
|
|
||||||
|
* sys/d3d11/gstd3d11screencapture.cpp:
|
||||||
|
* sys/d3d11/gstd3d11screencapture.h:
|
||||||
|
* sys/d3d11/gstd3d11screencapturesrc.cpp:
|
||||||
|
* tests/examples/d3d11/d3d11screencapturesrc.cpp:
|
||||||
|
d3d11screencapturesrc: Fix crash when d3d11 device is different from owned one
|
||||||
|
GstD3D11ScreenCapture object is pipeline-independent global object
|
||||||
|
and the object can be shared by multiple src elements,
|
||||||
|
in order to overcome a limitation of DXGI Desktop Duplication API.
|
||||||
|
Note that the API allows only single capture session in a process for
|
||||||
|
a monitor.
|
||||||
|
Therefore GstD3D11ScreenCapture object must be able to handle a case
|
||||||
|
where a src element holds different GstD3D11Device object. Which can
|
||||||
|
happen when GstD3D11Device context is not shared by pipelines.
|
||||||
|
What's changed:
|
||||||
|
* Allocates capture texture with D3D11_RESOURCE_MISC_SHARED for the
|
||||||
|
texture to be able to copied into other device's texture
|
||||||
|
* Holds additional shader objects per src element and use it when drawing
|
||||||
|
mouse
|
||||||
|
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1197
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2378>
|
||||||
|
|
||||||
|
2022-04-17 23:55:55 +0900 Seungha Yang <seungha@centricular.com>
|
||||||
|
|
||||||
|
* sys/d3d11/gstd3d11decoder.cpp:
|
||||||
|
d3d11decoder: Do not preallocate texture using downstream d3d11 buffer pool
|
||||||
|
Our decoder implementation does not use downstream d3d11 pool for
|
||||||
|
decoding because of special requirement of D3D11/DXVA. So preallocation
|
||||||
|
using the downstream buffer pool will waste GPU memory in most cases.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2377>
|
||||||
|
|
||||||
|
2022-04-16 21:27:57 +0900 Seungha Yang <seungha@centricular.com>
|
||||||
|
|
||||||
|
* sys/d3d11/gstd3d11decoder.cpp:
|
||||||
|
d3d11decoder: Copy HDR10 related caps field manually
|
||||||
|
If negotiate() is called from the set_format() chain, sinkpad may not
|
||||||
|
hold caps yet, so baseclass cannot copy it over to srcpad caps.
|
||||||
|
Copy them manually.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2376>
|
||||||
|
|
||||||
|
2022-04-29 20:28:53 +0200 Jakub Adam <jakub.adam@collabora.com>
|
||||||
|
|
||||||
|
* sys/d3d11/gstd3d11screencapture.cpp:
|
||||||
|
d3d11screencapture: Set viewport when drawing mouse cursor
|
||||||
|
If there weren't any moved/dirty regions in the captured frame, the
|
||||||
|
viewport of the ID3D11DeviceContext would be left at whatever previous
|
||||||
|
value it had, which could lead to the cursor being drawn in a wrong
|
||||||
|
position and/or in an incorrect size.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2371>
|
||||||
|
|
||||||
|
2022-04-22 12:29:29 +0200 Corentin Damman <c.damman@intopix.com>
|
||||||
|
|
||||||
|
* sys/nvcodec/cuda-converter.c:
|
||||||
|
cuda-converter: fix nvrtc compilation on non-English locale systems
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2367>
|
||||||
|
|
||||||
|
2022-03-07 08:46:57 -0500 Xavier Claessens <xavier.claessens@collabora.com>
|
||||||
|
|
||||||
|
* gst-libs/gst/vulkan/meson.build:
|
||||||
|
* sys/msdk/meson.build:
|
||||||
|
Meson: Fix deprecation warnings
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2358>
|
||||||
|
|
||||||
|
2021-11-12 20:13:10 +0100 Ruben Gonzalez <rgonzalez@fluendo.com>
|
||||||
|
|
||||||
|
* docs/plugins/gst_plugins_cache.json:
|
||||||
|
gst_plugin_load_file: force plugin reload if diff filename
|
||||||
|
If a file includes a new version of a plugin that exits in the
|
||||||
|
registry, the output of gst-inspect is incorrect. The output has the
|
||||||
|
correct version but incorrect filename, and element description.
|
||||||
|
This seems to have also fixed some documentation issues.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2357>
|
||||||
|
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* gst-plugins-bad.doap:
|
* gst-plugins-bad.doap:
|
||||||
|
|
|
@ -1,7 +1,191 @@
|
||||||
|
2022-05-25 02:10:30 +0900 Seungha Yang <seungha@centricular.com>
|
||||||
|
|
||||||
|
* gst/playback/gstplaybin3.c:
|
||||||
|
playbin3: Configure combiner on pad-added if needed
|
||||||
|
When collection is updated, decodebin3 exposes pad first and then
|
||||||
|
streams-selected message is posted.
|
||||||
|
The condition can cause a situation where playbin3 links non-existing
|
||||||
|
combiner/playsink pads (since streams-selected is not posted yet) with
|
||||||
|
new decodebin output pad. This commit will re-check selected/active
|
||||||
|
streams condition on pad-added and reconfigure output if needed.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2495>
|
||||||
|
|
||||||
|
2022-05-23 21:24:40 -0400 Eli Schwartz <eschwartz@archlinux.org>
|
||||||
|
|
||||||
|
* gst-libs/gst/tag/meson.build:
|
||||||
|
meson: use better zlib dependency fallback
|
||||||
|
zlib is required, and if it isn't found it is checked several ways and
|
||||||
|
then forced via subproject(). This code was added in commit
|
||||||
|
b93e37592a3ccc0eaece1c8fef2d362b1e5fe685, to account for systems where
|
||||||
|
zlib doesn't have pkg-config files installed.
|
||||||
|
But Meson already does dependency fallback, and also, since 0.54.0, does
|
||||||
|
the in-between checks for find_library('z') and has_header('zlib.h') via
|
||||||
|
the "system" type dependency. Simplify dependency lookup by marking it
|
||||||
|
as required, which also makes sure that the console log doesn't
|
||||||
|
confusingly list "not found".
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2486>
|
||||||
|
|
||||||
|
2022-04-26 09:29:39 +0200 Edward Hervey <edward@centricular.com>
|
||||||
|
|
||||||
|
* ext/ogg/gstoggstream.c:
|
||||||
|
oggdemux: Protect against invalid framerates
|
||||||
|
This check wasn't done for all mappings.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2455>
|
||||||
|
|
||||||
|
2022-05-15 16:53:12 +0000 Thibault Saunier <tsaunier@igalia.com>
|
||||||
|
|
||||||
|
* gst-libs/gst/rtp/gstrtcpbuffer.c:
|
||||||
|
* gst-libs/gst/rtp/gstrtcpbuffer.h:
|
||||||
|
* tests/check/libs/rtp.c:
|
||||||
|
rtcpbuffer: Allow padding on first reduced size packets
|
||||||
|
It is valid to have the padding set to 1 on the first packet and it
|
||||||
|
happens very often from TWCC packets coming from libwebrtc. This means
|
||||||
|
that we were totally ignoring many TWCC packets.
|
||||||
|
Fix test that checked that a first packet with padding was not valid and
|
||||||
|
instead test a single twcc packet with padding to check precisely what
|
||||||
|
this patch was about.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2447>
|
||||||
|
|
||||||
|
2022-05-13 13:31:55 +0200 Alicia Boya García <aboya@igalia.com>
|
||||||
|
|
||||||
|
* gst-libs/gst/app/gstappsink.c:
|
||||||
|
* tests/check/elements/appsink.c:
|
||||||
|
appsink: Fix race condition on caps handling
|
||||||
|
Background:
|
||||||
|
Whenever a caps event is received by appsink, the caps are stored in the
|
||||||
|
same internal queue as buffers. Only when enough buffers have been
|
||||||
|
popped from the queue to reach the caps, `priv->sample` gets its caps
|
||||||
|
updated to match, so that they are correct for the following buffers.
|
||||||
|
Note that as far as upstream elements are concerned, the caps of appsink
|
||||||
|
are updated immediately when the CAPS event is sent. Samples pulled from
|
||||||
|
appsink retain the old caps until a later buffer -- one that was sent by
|
||||||
|
upstream elements after the new caps -- is pulled.
|
||||||
|
The race condition:
|
||||||
|
When a flush is received, appsink clears the entire internal queue. The
|
||||||
|
caps of `priv->sample` are not updated as part of this process, and
|
||||||
|
instead remain as those of the sample that was last pulled by the user.
|
||||||
|
This leaves open a race condition where:
|
||||||
|
1. Upstream sends a new caps event, and possibly some buffers for the
|
||||||
|
new caps.
|
||||||
|
2. Upstream sends a flush (possibly from a different thread).
|
||||||
|
3. Upstream sends a new buffer for the new caps. Since as far as
|
||||||
|
upstream is concerned, appsink caps are the new caps already, no new
|
||||||
|
CAPS event is sent.
|
||||||
|
4. The appsink user pulls a sample, having not pulled before enough
|
||||||
|
samples to reach the buffers sent in step 1.
|
||||||
|
Bug: the pulled sample has the old caps instead of the new caps.
|
||||||
|
Fixing the race condition:
|
||||||
|
To avoid this problem, when a buffer is received after a flush,
|
||||||
|
`priv->sample`'s caps should be updated with the current caps before the
|
||||||
|
buffer is added to the internal queue.
|
||||||
|
Interestingly, before this patch, appsink already had code for this, in
|
||||||
|
gst_app_sink_render_common():
|
||||||
|
/* queue holding caps event might have been FLUSHed,
|
||||||
|
* but caps state still present in pad caps */
|
||||||
|
if (G_UNLIKELY (!priv->last_caps &&
|
||||||
|
gst_pad_has_current_caps (GST_BASE_SINK_PAD (psink)))) {
|
||||||
|
priv->last_caps = gst_pad_get_current_caps (GST_BASE_SINK_PAD (psink));
|
||||||
|
gst_sample_set_caps (priv->sample, priv->last_caps);
|
||||||
|
GST_DEBUG_OBJECT (appsink, "activating pad caps %" GST_PTR_FORMAT,
|
||||||
|
priv->last_caps);
|
||||||
|
}
|
||||||
|
This code assumes `priv->last_caps` is reset when a flush is received,
|
||||||
|
which makes sense, but unfortunately, there was no code in the flush
|
||||||
|
code path resetting it.
|
||||||
|
This patch adds such code, therefore fixing the race condition. A unit
|
||||||
|
test demonstrating the bug and testing its behavior with the fix has
|
||||||
|
also been added.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2442>
|
||||||
|
|
||||||
|
2022-05-16 12:34:36 -0400 U. Artie Eoff <ullysses.a.eoff@intel.com>
|
||||||
|
|
||||||
|
* gst-libs/gst/video/gstvideoaggregator.c:
|
||||||
|
videoaggregator: unref temporary caps
|
||||||
|
The "possible_caps" needs unref after finished using to
|
||||||
|
avoid memory leak.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2440>
|
||||||
|
|
||||||
|
2022-03-29 17:51:13 +0200 Stéphane Cerveau <scerveau@collabora.com>
|
||||||
|
|
||||||
|
* gst-libs/gst/gl/meson.build:
|
||||||
|
* tests/check/libs/gstglmatrix.c:
|
||||||
|
* tests/check/meson.build:
|
||||||
|
base:gl: add x11 deps to gstglx11_dep
|
||||||
|
On MacOS with homebrew the xlib-xcb.h is in
|
||||||
|
own cellar /opt/homebrew/Cellar/libx11/1.7.3.1/include
|
||||||
|
Need to add the windowing dependencies to gl tests
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2426>
|
||||||
|
|
||||||
|
2022-05-05 02:54:37 +0900 Seungha Yang <seungha@centricular.com>
|
||||||
|
|
||||||
|
* tools/gst-play.c:
|
||||||
|
tools: gst-play: Print position even if duration is unknown
|
||||||
|
Gives better visual feedback regarding position information
|
||||||
|
although duration is unknown, live streams for example.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2419>
|
||||||
|
|
||||||
|
2022-05-07 04:43:49 +0900 Seungha Yang <seungha@centricular.com>
|
||||||
|
|
||||||
|
* tools/gst-device-monitor.c:
|
||||||
|
tools: device-monitor: Print string property as-is without serialize
|
||||||
|
gst_value_serialize() does more than what's needed to printf-ing
|
||||||
|
especially when given GValue is already string. Just print string
|
||||||
|
value as-is without gst_value_serialize() to avoid unreadable
|
||||||
|
string print, especially for multi-bytes character encoding cases.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2416>
|
||||||
|
|
||||||
|
2022-05-03 16:25:19 +0200 Edward Hervey <edward@centricular.com>
|
||||||
|
|
||||||
|
* gst/playback/gstparsebin.c:
|
||||||
|
parsebin: Don't modify inexistant GstStream
|
||||||
|
When handling exposing un-handled streams, we can only replace the GstStream for
|
||||||
|
those we are creating ourselves (i.e. the fallback collection).
|
||||||
|
Fixes assertions when the demuxer creates those streams
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2368>
|
||||||
|
|
||||||
|
2022-05-03 16:08:39 +0200 Edward Hervey <edward@centricular.com>
|
||||||
|
|
||||||
|
* gst/playback/gstdecodebin3.c:
|
||||||
|
playbin3: Don't use unknown types for default selection
|
||||||
|
When creating a fallback default selection from a collection, don't attempt to
|
||||||
|
use unknown stream types
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2368>
|
||||||
|
|
||||||
|
2022-05-03 13:37:31 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/audioconvert/gstaudioconvert.c:
|
||||||
|
audioconvert: If no channel-mask can be fixated then use a NONE channel layout
|
||||||
|
Otherwise this is generating caps without a channel-mask, which is
|
||||||
|
invalid for >1 channels and will always fail negotiation.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2359>
|
||||||
|
|
||||||
|
2022-03-07 08:46:57 -0500 Xavier Claessens <xavier.claessens@collabora.com>
|
||||||
|
|
||||||
|
* gst-libs/gst/gl/meson.build:
|
||||||
|
Meson: Fix deprecation warnings
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2358>
|
||||||
|
|
||||||
|
2021-11-12 20:13:10 +0100 Ruben Gonzalez <rgonzalez@fluendo.com>
|
||||||
|
|
||||||
|
* docs/plugins/gst_plugins_cache.json:
|
||||||
|
gst_plugin_load_file: force plugin reload if diff filename
|
||||||
|
If a file includes a new version of a plugin that exits in the
|
||||||
|
registry, the output of gst-inspect is incorrect. The output has the
|
||||||
|
correct version but incorrect filename, and element description.
|
||||||
|
This seems to have also fixed some documentation issues.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2357>
|
||||||
|
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* gst-plugins-base.doap:
|
* gst-plugins-base.doap:
|
||||||
|
|
|
@ -1,7 +1,361 @@
|
||||||
|
2022-05-18 10:23:15 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/matroska/matroska-demux.c:
|
||||||
|
matroskademux: Avoid integer-overflow resulting in heap corruption in WavPack header handling code
|
||||||
|
blocksize + WAVPACK4_HEADER_SIZE might overflow gsize, which then
|
||||||
|
results in allocating a very small buffer. Into that buffer blocksize
|
||||||
|
data is memcpy'd later which then causes out of bound writes and can
|
||||||
|
potentially lead to anything from crashes to remote code execution.
|
||||||
|
Thanks to Adam Doupe for analyzing and reporting the issue.
|
||||||
|
CVE: CVE-2022-1920
|
||||||
|
https://gstreamer.freedesktop.org/security/sa-2022-0004.html
|
||||||
|
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1226
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2613>
|
||||||
|
|
||||||
|
2022-05-30 10:15:37 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/isomp4/qtdemux.c:
|
||||||
|
qtdemux: Fix integer overflows in zlib decompression code
|
||||||
|
Various variables were of smaller types than needed and there were no
|
||||||
|
checks for any overflows when doing additions on the sizes. This is all
|
||||||
|
checked now.
|
||||||
|
In addition the size of the decompressed data is limited to 200MB now as
|
||||||
|
any larger sizes are likely pathological and we can avoid out of memory
|
||||||
|
situations in many cases like this.
|
||||||
|
Also fix a bug where the available output size on the next iteration in
|
||||||
|
the zlib decompression code was provided too large and could
|
||||||
|
potentially lead to out of bound writes.
|
||||||
|
Thanks to Adam Doupe for analyzing and reporting the issue.
|
||||||
|
CVE: tbd
|
||||||
|
https://gstreamer.freedesktop.org/security/sa-2022-0003.html
|
||||||
|
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1225
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2611>
|
||||||
|
|
||||||
|
2022-05-18 11:24:37 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/matroska/matroska-read-common.c:
|
||||||
|
matroskademux: Fix integer overflows in zlib/bz2/etc decompression code
|
||||||
|
Various variables were of smaller types than needed and there were no
|
||||||
|
checks for any overflows when doing additions on the sizes. This is all
|
||||||
|
checked now.
|
||||||
|
In addition the size of the decompressed data is limited to 120MB now as
|
||||||
|
any larger sizes are likely pathological and we can avoid out of memory
|
||||||
|
situations in many cases like this.
|
||||||
|
Also fix a bug where the available output size on the next iteration in
|
||||||
|
the zlib/bz2 decompression code was provided too large and could
|
||||||
|
potentially lead to out of bound writes.
|
||||||
|
Thanks to Adam Doupe for analyzing and reporting the issue.
|
||||||
|
CVE: CVE-2022-1922, CVE-2022-1923, CVE-2022-1924, CVE-2022-1925
|
||||||
|
https://gstreamer.freedesktop.org/security/sa-2022-0002.html
|
||||||
|
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1225
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2611>
|
||||||
|
|
||||||
|
2022-05-18 12:00:48 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/avi/gstavidemux.c:
|
||||||
|
avidemux: Fix integer overflow resulting in heap corruption in DIB buffer inversion code
|
||||||
|
Check that width*bpp/8 doesn't overflow a guint and also that
|
||||||
|
height*stride fits into the provided buffer without overflowing.
|
||||||
|
Thanks to Adam Doupe for analyzing and reporting the issue.
|
||||||
|
CVE: CVE-2022-1921
|
||||||
|
See https://gstreamer.freedesktop.org/security/sa-2022-0001.html
|
||||||
|
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1224
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2609>
|
||||||
|
|
||||||
|
2022-05-19 04:16:25 +0000 Adam Doupe <adamdoupe@gmail.com>
|
||||||
|
|
||||||
|
* gst/smpte/gstmask.c:
|
||||||
|
smpte: Fix integer overflow with possible heap corruption in GstMask creation.
|
||||||
|
Check that width*height*sizeof(guint32) doesn't overflow when
|
||||||
|
allocated user_data for mask, potential for heap overwrite when
|
||||||
|
inverting.
|
||||||
|
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1231
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2605>
|
||||||
|
|
||||||
|
2022-06-07 17:31:43 +0200 Bastien Nocera <hadess@hadess.net>
|
||||||
|
|
||||||
|
* ext/gtk/gtkgstglwidget.c:
|
||||||
|
gtk: Fix double-free when OpenGL can't be initialised
|
||||||
|
gtk_gl_area_get_error() doesn't return a copy of the error, but just the
|
||||||
|
error. If initialising OpenGL fails, then GtkGstGLWidget will consume
|
||||||
|
the error, and cause GTK to try and display freed memory.
|
||||||
|
==50914== Invalid read of size 8
|
||||||
|
==50914== at 0x4C4CB8A: gtk_gl_area_draw_error_screen (gtkglarea.c:663)
|
||||||
|
==50914== by 0x4C4CB8A: gtk_gl_area_draw (gtkglarea.c:687)
|
||||||
|
==50914== by 0x4E061CA: gtk_widget_draw_internal (gtkwidget.c:7084)
|
||||||
|
==50914== by 0x4BAEFB1: gtk_container_propagate_draw (gtkcontainer.c:3854)
|
||||||
|
==50914== by 0x4D4B6BF: gtk_stack_render (gtkstack.c:2207)
|
||||||
|
==50914== by 0x4BB4B03: gtk_css_custom_gadget_draw (gtkcsscustomgadget.c:159)
|
||||||
|
==50914== by 0x4BBA4C4: gtk_css_gadget_draw (gtkcssgadget.c:885)
|
||||||
|
==50914== by 0x4D4D780: gtk_stack_draw (gtkstack.c:2119)
|
||||||
|
==50914== by 0x4E061CA: gtk_widget_draw_internal (gtkwidget.c:7084)
|
||||||
|
==50914== by 0x4BAEFB1: gtk_container_propagate_draw (gtkcontainer.c:3854)
|
||||||
|
==50914== by 0x4BAF0C3: gtk_container_draw (gtkcontainer.c:3674)
|
||||||
|
==50914== by 0x4E061CA: gtk_widget_draw_internal (gtkwidget.c:7084)
|
||||||
|
==50914== by 0x4BAEFB1: gtk_container_propagate_draw (gtkcontainer.c:3854)
|
||||||
|
==50914== Address 0x187a0818 is 8 bytes inside a block of size 16 free'd
|
||||||
|
==50914== at 0x48480E4: free (vg_replace_malloc.c:872)
|
||||||
|
==50914== by 0x49A5B8C: g_free (gmem.c:218)
|
||||||
|
==50914== by 0x49C1013: g_slice_free1 (gslice.c:1183)
|
||||||
|
==50914== by 0x4990DE4: g_error_free (gerror.c:870)
|
||||||
|
==50914== by 0x4990FE9: g_clear_error (gerror.c:1052)
|
||||||
|
==50914== by 0x1A489780: _get_gl_context (gtkgstglwidget.c:540)
|
||||||
|
==50914== by 0x1A4863CB: gst_gtk_invoke_func (gstgtkutils.c:39)
|
||||||
|
==50914== by 0x49A3834: g_main_context_invoke_full (gmain.c:6137)
|
||||||
|
==50914== by 0x1A486450: gst_gtk_invoke_on_main (gstgtkutils.c:59)
|
||||||
|
==50914== by 0x1A48A29E: gtk_gst_gl_widget_init_winsys (gtkgstglwidget.c:632)
|
||||||
|
==50914== by 0x1A4887E7: gst_gtk_gl_sink_start (gstgtkglsink.c:267)
|
||||||
|
==50914== by 0x6579810: gst_base_sink_change_state (gstbasesink.c:5662)
|
||||||
|
==50914== Block was alloc'd at
|
||||||
|
==50914== at 0x484586F: malloc (vg_replace_malloc.c:381)
|
||||||
|
==50914== by 0x49A9278: g_malloc (gmem.c:125)
|
||||||
|
==50914== by 0x49C1BA5: g_slice_alloc (gslice.c:1072)
|
||||||
|
==50914== by 0x49C3BCC: g_slice_alloc0 (gslice.c:1098)
|
||||||
|
==50914== by 0x499096B: g_error_allocate (gerror.c:708)
|
||||||
|
==50914== by 0x4990AF1: UnknownInlinedFun (gerror.c:722)
|
||||||
|
==50914== by 0x4990AF1: g_error_copy (gerror.c:892)
|
||||||
|
==50914== by 0x4C4B9F9: gtk_gl_area_set_error (gtkglarea.c:1036)
|
||||||
|
==50914== by 0x4C4BAF7: gtk_gl_area_real_create_context (gtkglarea.c:346)
|
||||||
|
==50914== by 0x4B21B28: _gtk_marshal_OBJECT__VOIDv (gtkmarshalers.c:2730)
|
||||||
|
==50914== by 0x4920B78: UnknownInlinedFun (gclosure.c:893)
|
||||||
|
==50914== by 0x4920B78: g_signal_emit_valist (gsignal.c:3406)
|
||||||
|
==50914== by 0x4920CB2: g_signal_emit (gsignal.c:3553)
|
||||||
|
==50914== by 0x4C4B927: gtk_gl_area_realize (gtkglarea.c:308)
|
||||||
|
Reproduced by running:
|
||||||
|
MESA_GL_VERSION_OVERRIDE=2.7 totem
|
||||||
|
See https://gitlab.gnome.org/GNOME/totem/-/issues/522
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2567>
|
||||||
|
|
||||||
|
2022-06-03 18:35:54 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
|
||||||
|
|
||||||
|
* gst/audioparsers/gstaacparse.c:
|
||||||
|
aacparse: Avoid mismatch between src_caps and output_header_type
|
||||||
|
If our downstream caps didn't intersect, we attempted to convert between
|
||||||
|
raw and ADTS stream formats, if possible. If the caps still did not
|
||||||
|
intersect, we then used the modified `src_caps` but left the
|
||||||
|
`output_header_type` unmodified.
|
||||||
|
This caused a mismatch between caps and actual stream format.
|
||||||
|
Avoid this by first copying the `src_caps` to `convcaps` for the
|
||||||
|
additional intersection tests, replacing `src_caps` if we succeed.
|
||||||
|
While we're here, clean up the code a bit and remove the `codec_data`
|
||||||
|
field from outgoing ADTS caps.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2563>
|
||||||
|
|
||||||
|
2022-06-04 10:27:09 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/flv/gstflvdemux.c:
|
||||||
|
* gst/flv/gstflvelement.c:
|
||||||
|
flvdemux: Actually make use of the debug category
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2560>
|
||||||
|
|
||||||
|
2022-06-01 16:14:24 +0200 Stéphane Cerveau <scerveau@collabora.com>
|
||||||
|
|
||||||
|
* ext/soup/gstsoup.c:
|
||||||
|
* ext/soup/gstsoupelement.c:
|
||||||
|
* ext/soup/gstsouploader.c:
|
||||||
|
soup: fix soup debug category
|
||||||
|
Use soup debug category in souploader
|
||||||
|
for soup plugin element load.
|
||||||
|
Inititalize properly soup utils category.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2547>
|
||||||
|
|
||||||
|
2022-05-29 20:27:38 +1000 Jan Schmidt <jan@centricular.com>
|
||||||
|
|
||||||
|
* gst/rtpmanager/gstrtpptdemux.c:
|
||||||
|
rtpptdemux: Don't GST_FLOW_ERROR when ignoring invalid packets
|
||||||
|
https://bugzilla.gnome.org/show_bug.cgi?id=741398 changed
|
||||||
|
rtpptdemux in 2014 to not post a GST_ELEMENT_ERROR on the
|
||||||
|
bus when dropping an invalid (non-RTP) packet, but still
|
||||||
|
returned GST_FLOW_ERROR upstream - so the pipeline still
|
||||||
|
stops, but now without a useful bus error.
|
||||||
|
Return GST_FLOW_OK instead, so the pipeline keeps
|
||||||
|
running. Some old telephony equipment can send invalid
|
||||||
|
packets before the real RTP traffic starts.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2523>
|
||||||
|
|
||||||
|
2022-05-28 16:46:04 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
|
||||||
|
|
||||||
|
* ext/jack/gstjackaudiosrc.c:
|
||||||
|
jack: Always use jack_free as specified by the docs
|
||||||
|
Fixes a crash on Windows due to a CRT mismatch. The JACK installation
|
||||||
|
still uses MSVCRT, and we the Universal CRT for both MinGW and MSVC.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2515>
|
||||||
|
|
||||||
|
2022-05-26 01:21:43 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
|
||||||
|
|
||||||
|
* ext/jack/meson.build:
|
||||||
|
jack: Add support for detecting libjack on Windows
|
||||||
|
No source code changes were necessary to get the plugin working on
|
||||||
|
Windows with MSVC.
|
||||||
|
Run QJackCtl and audiotestsrc ! jackaudiosink just works.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2515>
|
||||||
|
|
||||||
|
2022-05-24 16:07:13 +0800 Hou Qi <qi.hou@nxp.com>
|
||||||
|
|
||||||
|
* sys/v4l2/gstv4l2object.c:
|
||||||
|
v4l2: Reset transfer in gst_v4l2_object_acquire_format()
|
||||||
|
get_colorspace() checks input caps transfer when mapping V4L2_XFER_FUNC_709
|
||||||
|
back to V4L2_COLORSPACE_BT2020 and GST_VIDEO_TRANSFER_BT2020_12. After
|
||||||
|
receiving source change event, decoder will G_FMT and S_FMT again. So need
|
||||||
|
to reset transfer when acquiring format to avoid using the old transfer.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2505>
|
||||||
|
|
||||||
|
2022-05-03 11:34:15 +0200 Stéphane Cerveau <scerveau@collabora.com>
|
||||||
|
|
||||||
|
* ext/soup/gstsoup.c:
|
||||||
|
* ext/soup/gstsoupelement.c:
|
||||||
|
* ext/soup/gstsoupelements.h:
|
||||||
|
* ext/soup/gstsouphttpclientsink.c:
|
||||||
|
* ext/soup/gstsouphttpsrc.c:
|
||||||
|
soup: Fix plugin/element init
|
||||||
|
In case of per features registration such as the
|
||||||
|
customizable gstreamer-full library, each
|
||||||
|
element should check that the soup library can be loaded to
|
||||||
|
facilitate the element registration.
|
||||||
|
Initialize the debug category properly
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2491>
|
||||||
|
|
||||||
|
2022-05-23 21:24:40 -0400 Eli Schwartz <eschwartz@archlinux.org>
|
||||||
|
|
||||||
|
* meson.build:
|
||||||
|
meson: use better zlib dependency fallback
|
||||||
|
zlib is required, and if it isn't found it is checked several ways and
|
||||||
|
then forced via subproject(). This code was added in commit
|
||||||
|
b93e37592a3ccc0eaece1c8fef2d362b1e5fe685, to account for systems where
|
||||||
|
zlib doesn't have pkg-config files installed.
|
||||||
|
But Meson already does dependency fallback, and also, since 0.54.0, does
|
||||||
|
the in-between checks for find_library('z') and has_header('zlib.h') via
|
||||||
|
the "system" type dependency. Simplify dependency lookup by marking it
|
||||||
|
as required, which also makes sure that the console log doesn't
|
||||||
|
confusingly list "not found".
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2486>
|
||||||
|
|
||||||
|
2022-05-16 14:14:46 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
|
||||||
|
|
||||||
|
* gst/deinterlace/gstdeinterlace.c:
|
||||||
|
deinterlace: Clean up error handling in chain and _push_history
|
||||||
|
- Consistently unref the chained buffer at the end of the chain
|
||||||
|
function, if we're not handing it off to `gst_pad_push`. This avoids a
|
||||||
|
few buffer leaks in the error paths in `_chain` and `_push_history`.
|
||||||
|
- When mapping the video frame fails, return a flow error instead of
|
||||||
|
crashing.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2444>
|
||||||
|
|
||||||
|
2022-05-11 15:18:42 +0200 Guillaume Desmottes <guillaume.desmottes@onestream.live>
|
||||||
|
|
||||||
|
* ext/vpx/gstvpxenc.c:
|
||||||
|
vpxenc: fix crash if encoder produces unmatching ts
|
||||||
|
If for some reason the encoder produces frames with a pts higher than
|
||||||
|
the input one, we were dropping all the video encoder frames and ended
|
||||||
|
up crashing when trying to access the pts of a NULL pointer returned by
|
||||||
|
gst_video_encoder_get_oldest_frame().
|
||||||
|
I hit this scenario by feeding a decreasing timestamp to vp8enc which
|
||||||
|
seem to confuse the encoder.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2436>
|
||||||
|
|
||||||
|
2022-05-13 01:42:21 +0000 Thibault Saunier <tsaunier@igalia.com>
|
||||||
|
|
||||||
|
* gst/rtpmanager/gstrtpbin.c:
|
||||||
|
rtpbin: Avoid holding lock GST_RTP_BIN_LOCK when emitting pad-added
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2415>
|
||||||
|
|
||||||
|
2022-05-12 17:11:38 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/isomp4/qtdemux.c:
|
||||||
|
qtdemux: Don't use tfdt for parsing subsequent trun boxes
|
||||||
|
The timestamp in the tfdt refers to the first trun box and if there are
|
||||||
|
multiple trun boxes then the distance between the first timestamps will
|
||||||
|
grow.
|
||||||
|
At some point this distance reaches a threshold and triggers the
|
||||||
|
resetting of the first sample's timestamp of this trun box to be reset
|
||||||
|
to the tfdt.
|
||||||
|
This threshold is implemented for files where there is a jump in the
|
||||||
|
timeline between fragments and where this can be detected via a jump
|
||||||
|
between the end timestamp of the previous fragment and the tfdt of the
|
||||||
|
next. This behaviour is preserved.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2414>
|
||||||
|
|
||||||
|
2022-04-28 09:19:57 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
|
||||||
|
|
||||||
|
* sys/v4l2/gstv4l2object.c:
|
||||||
|
* sys/v4l2/gstv4l2videoenc.c:
|
||||||
|
v4l2videoenc: Setup crop rectangle if needed
|
||||||
|
Hantro H1 and Rockchip VEPU2 drivers will pad the width/height to a
|
||||||
|
multiple of 16. In order to obtain the right JPEG size, the image needs
|
||||||
|
to be cropped using the S_SELECTION API. This support is added as best
|
||||||
|
effort since older drivers may emulate this by looking at the capture
|
||||||
|
queue width/height.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2392>
|
||||||
|
|
||||||
|
2021-09-30 17:56:56 +0900 Damian Hobson-Garcia <dhobsong@igel.co.jp>
|
||||||
|
|
||||||
|
* sys/v4l2/gstv4l2object.c:
|
||||||
|
* sys/v4l2/gstv4l2object.h:
|
||||||
|
* sys/v4l2/gstv4l2transform.c:
|
||||||
|
v4l2object: rename crop function to reflect its usage
|
||||||
|
The gst_v4l2_object_set_crop() is used for removing buffer
|
||||||
|
alignment padding. Give it a name that better reflects
|
||||||
|
that usage. This helps to distinguish from cropping of the
|
||||||
|
input image (e.g. cropping at the image sensor on a captre
|
||||||
|
device), which can be unrelated to the memory buffer padding,
|
||||||
|
especially if scaling is involved.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2392>
|
||||||
|
|
||||||
|
2022-05-05 20:36:04 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/isomp4/gstqtmux.c:
|
||||||
|
mp4mux: Disable aggregator's default negotiation
|
||||||
|
mp4mux can't negotiate caps with upstream/downstream and always outputs
|
||||||
|
specific caps based on the input streams. This will always happen before
|
||||||
|
it produces the first buffers.
|
||||||
|
By having the default aggregator negotiation enabled the same caps
|
||||||
|
would be pushed twice in the beginning, and again every time a
|
||||||
|
reconfigure event is received.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2381>
|
||||||
|
|
||||||
|
2022-05-05 20:24:57 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* gst/flv/gstflvmux.c:
|
||||||
|
flvmux: Disable aggregator's default negotiation
|
||||||
|
flvmux can't negotiate caps with upstream/downstream and always outputs
|
||||||
|
specific caps based on the input streams. This will always happen before
|
||||||
|
it produces the first buffers.
|
||||||
|
By having the default aggregator negotiation enabled the same caps
|
||||||
|
would be pushed twice in the beginning, and again every time a
|
||||||
|
reconfigure event is received.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2381>
|
||||||
|
|
||||||
|
2022-05-03 17:27:32 +1000 Matthew Waters <matthew@centricular.com>
|
||||||
|
|
||||||
|
* gst/wavparse/gstwavparse.c:
|
||||||
|
wavparse: ensure that any pending segment is sent before an EOS event is sent
|
||||||
|
Specifically fixes seqnum handling when an aggregator-based element
|
||||||
|
(audiomixer et al) is downstream and a seek is performed that
|
||||||
|
immediately causes an EOS from wavparse.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2369>
|
||||||
|
|
||||||
|
2021-11-12 20:13:10 +0100 Ruben Gonzalez <rgonzalez@fluendo.com>
|
||||||
|
|
||||||
|
* docs/gst_plugins_cache.json:
|
||||||
|
gst_plugin_load_file: force plugin reload if diff filename
|
||||||
|
If a file includes a new version of a plugin that exits in the
|
||||||
|
registry, the output of gst-inspect is incorrect. The output has the
|
||||||
|
correct version but incorrect filename, and element description.
|
||||||
|
This seems to have also fixed some documentation issues.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2357>
|
||||||
|
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* docs/gst_plugins_cache.json:
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* docs/gst_plugins_cache.json:
|
* docs/gst_plugins_cache.json:
|
||||||
|
|
|
@ -1,7 +1,14 @@
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* gst-plugins-ugly.doap:
|
* gst-plugins-ugly.doap:
|
||||||
|
|
|
@ -1,7 +1,14 @@
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* gst-python.doap:
|
* gst-python.doap:
|
||||||
|
|
|
@ -1,7 +1,15 @@
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* docs/gst_plugins_cache.json:
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* docs/gst_plugins_cache.json:
|
* docs/gst_plugins_cache.json:
|
||||||
|
|
|
@ -1,7 +1,37 @@
|
||||||
|
2022-06-09 20:00:35 +0800 He Junyan <junyan.he@intel.com>
|
||||||
|
|
||||||
|
* gst-libs/gst/vaapi/gstvaapifilter.c:
|
||||||
|
vaapi: Do not disable the whole vpp when some va operations not available.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2604>
|
||||||
|
|
||||||
|
2022-05-20 09:59:58 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
|
||||||
|
|
||||||
|
* gst/vaapi/gstvaapidecode.c:
|
||||||
|
* gst/vaapi/gstvaapipostproc.c:
|
||||||
|
vaapidecode,vaapipostproc: Disable DMAbuf from caps negotiation.
|
||||||
|
Given the amount of complains about artifacts when negotiating dmabuf
|
||||||
|
given incompatible drm-formats, and that there's no enough bandwidth
|
||||||
|
for a proper and quick fix in gstreamer-vaapi, this patch disables,
|
||||||
|
from decoders and postprocessor, the DMABuf caps feature.
|
||||||
|
For those who needs DMABuf can use the va elements in -bad, increasing
|
||||||
|
their ranking for autoplugging by using the environment variable
|
||||||
|
GST_PLUGIN_FEATURE_RANK=vah264dec:MAX, for example.
|
||||||
|
This can be considered a first step to the deprecation of
|
||||||
|
gstreamer-vaapi in favor of the va plugin in -bad.
|
||||||
|
Fixes: #1137
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2459>
|
||||||
|
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* gstreamer-vaapi.doap:
|
* gstreamer-vaapi.doap:
|
||||||
|
|
|
@ -1,7 +1,135 @@
|
||||||
|
2022-05-19 04:59:58 +0000 Adam Doupe <adamdoupe@gmail.com>
|
||||||
|
|
||||||
|
* libs/gst/base/gstqueuearray.c:
|
||||||
|
queuearray: Fix potential heap overflow when expanding GstQueueArray
|
||||||
|
Check that elt_size*newsize doesn't overflow when expanding a
|
||||||
|
GstQueueArray, which has the potential for a heap overwrite.
|
||||||
|
Co-authored-by: Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1232
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2607>
|
||||||
|
|
||||||
|
2022-06-14 17:29:31 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* plugins/elements/gstmultiqueue.c:
|
||||||
|
multiqueue: fix potential crash on shutdown
|
||||||
|
The mq we get out of the weak ref might be NULL if we're
|
||||||
|
shutting down, which could cause assertion failures or
|
||||||
|
crashes.
|
||||||
|
It might also cause miscompilations where the compiler just
|
||||||
|
optimises away the NULL check because it jumps to a code path
|
||||||
|
that then dereferences the pointer which clearly isn't going
|
||||||
|
to work. Seems like something like this happens with gcc 11.
|
||||||
|
Fixes #1262
|
||||||
|
Co-authored-by: Doug Nazar <nazard@nazar.ca>
|
||||||
|
Co-authored-by: Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2600>
|
||||||
|
|
||||||
|
2022-06-14 03:29:41 -0600 James Hilliard <james.hilliard1@gmail.com>
|
||||||
|
|
||||||
|
* plugins/elements/gstmultiqueue.c:
|
||||||
|
multiqueue: fix warning: ‘is_query’ may be used uninitialized in this function
|
||||||
|
Fixes:
|
||||||
|
../plugins/elements/gstmultiqueue.c: In function ‘gst_multi_queue_loop’:
|
||||||
|
../plugins/elements/gstmultiqueue.c:2394:19: warning: ‘is_query’ may be used uninitialized in this function [-Wmaybe-uninitialized]
|
||||||
|
2394 | if (object && !is_query)
|
||||||
|
| ^~~~~~~~~
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2596>
|
||||||
|
|
||||||
|
2022-06-01 09:25:29 +0200 Guillaume Desmottes <guillaume.desmottes@onestream.live>
|
||||||
|
|
||||||
|
* libs/gst/base/gstbasetransform.c:
|
||||||
|
basetransform: handle gst_base_transform_query_caps() returning NULL
|
||||||
|
If gst_base_transform_transform_caps() returns NULL, gst_base_transform_query_caps()
|
||||||
|
will return NULL as well.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2538>
|
||||||
|
|
||||||
|
2022-05-31 14:27:51 +0200 Guillaume Desmottes <guillaume.desmottes@onestream.live>
|
||||||
|
|
||||||
|
* libs/gst/base/gstbasetransform.c:
|
||||||
|
basetransform: fix critical if transform_caps() returned NULL
|
||||||
|
klass->transform_caps() may return NULL, which was raising this
|
||||||
|
critical:
|
||||||
|
GStreamer-CRITICAL **: 12:23:56.243: gst_caps_is_subset: assertion 'subset != NULL' failed
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2537>
|
||||||
|
|
||||||
|
2022-05-18 17:03:27 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
|
||||||
|
|
||||||
|
* gst/gst_private.h:
|
||||||
|
* gst/gstclock.c:
|
||||||
|
clock: Avoid creating a weakref with every entry
|
||||||
|
Creating and destroying weakrefs takes a write lock on a global
|
||||||
|
`GRWLock`. This makes for a very contended lock when the pipeline has
|
||||||
|
many synchronizing elements.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2533>
|
||||||
|
|
||||||
|
2022-05-29 20:38:38 +1000 tom schuring <tomschuring@gmail.com>
|
||||||
|
|
||||||
|
* gst/gstplugin.c:
|
||||||
|
plugin: add Apache 2 license to known licenses
|
||||||
|
the licence in gstreamer/subprojects/gstreamer/gst/gstplugin.c
|
||||||
|
currently is defined to be one of:
|
||||||
|
LGPL GPL QPL GPL/QPL MPL BSD MIT/X11 0BSD Proprietary
|
||||||
|
The open source project for the kinesis plugin is using an
|
||||||
|
Apache 2.0 license. Because "Apache 2.0" is not one of the
|
||||||
|
supported licenses it automatically falls back to Proprietary.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2524>
|
||||||
|
|
||||||
|
2022-05-18 10:04:08 +0800 WANG Xuerui <xen0n@gentoo.org>
|
||||||
|
|
||||||
|
* gst/gstconfig.h.in:
|
||||||
|
gstreamer/gst/gstconfig.h.in: Add support for LoongArch
|
||||||
|
While current and future LoongArch machines that are supposed to run
|
||||||
|
GStreamer all support unaligned accesses, there might be future
|
||||||
|
lower-end cores (e.g. the embedded product line) without such support,
|
||||||
|
and we may not want to penalize these use cases.
|
||||||
|
So, mark LoongArch as not supporting unaligned accesses for now, and
|
||||||
|
hope the compilers do a good job optimizing them. We can always flip
|
||||||
|
switch later.
|
||||||
|
Suggested-by: CHEN Tao <redeast_cn@outlook.com>
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2450>
|
||||||
|
|
||||||
|
2022-05-05 20:39:52 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* libs/gst/base/gstaggregator.c:
|
||||||
|
aggregator: Don't send multiple caps events with the same caps
|
||||||
|
Every time aggregator is reconfiguring it will try to negotiate new
|
||||||
|
caps. If these resulting caps are the same as the previously negotiated
|
||||||
|
caps then don't send a new caps event with the same caps again.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2381>
|
||||||
|
|
||||||
|
2022-05-05 15:05:43 +0300 Sebastian Dröge <sebastian@centricular.com>
|
||||||
|
|
||||||
|
* libs/gst/base/gstaggregator.c:
|
||||||
|
aggregator: Only send events up to CAPS event from gst_aggregator_set_src_caps()
|
||||||
|
Otherwise setting the srcpad caps based on the sinkpad caps event will
|
||||||
|
already push a segment event downstream before the upstream segment is
|
||||||
|
known.
|
||||||
|
If the upstream segments are just forwarded when the upstream segment
|
||||||
|
event arrives this would result in two segment events being sent
|
||||||
|
downstream, of which the first one will usually be simply wrong.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2381>
|
||||||
|
|
||||||
|
2021-11-12 20:13:10 +0100 Ruben Gonzalez <rgonzalez@fluendo.com>
|
||||||
|
|
||||||
|
* gst/gstplugin.c:
|
||||||
|
gst_plugin_load_file: force plugin reload if diff filename
|
||||||
|
If a file includes a new version of a plugin that exits in the
|
||||||
|
registry, the output of gst-inspect is incorrect. The output has the
|
||||||
|
correct version but incorrect filename, and element description.
|
||||||
|
This seems to have also fixed some documentation issues.
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2357>
|
||||||
|
|
||||||
|
2022-05-03 00:39:09 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* meson.build:
|
||||||
|
Back to development
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2347>
|
||||||
|
|
||||||
=== release 1.20.2 ===
|
=== release 1.20.2 ===
|
||||||
|
|
||||||
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
2022-05-02 23:29:25 +0100 Tim-Philipp Müller <tim@centricular.com>
|
||||||
|
|
||||||
|
* ChangeLog:
|
||||||
* NEWS:
|
* NEWS:
|
||||||
* RELEASE:
|
* RELEASE:
|
||||||
* gstreamer.doap:
|
* gstreamer.doap:
|
||||||
|
|
Loading…
Reference in a new issue