Update ChangeLogs for 1.21.2

This commit is contained in:
Tim-Philipp Müller 2022-11-07 23:53:57 +00:00
parent e8eddf46ea
commit 98d2f958a9
12 changed files with 3179 additions and 0 deletions

View file

@ -1,7 +1,111 @@
2022-11-04 11:23:12 +0100 Edward Hervey <edward@centricular.com>
* validate/tools/gst-validate.c:
gst-validate-1.0: Don't leak arguments and context
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319>
2022-11-04 11:02:49 +0100 Edward Hervey <edward@centricular.com>
* validate/gst/validate/gst-validate-scenario.c:
validate-scenario: Don't leak temporary path value
It's only use in the structure iterator
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319>
2022-11-04 11:02:27 +0100 Edward Hervey <edward@centricular.com>
* validate/gst/validate/gst-validate-scenario.c:
validate-scenario: Don't leak temporary local variables structures
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319>
2022-11-03 14:05:59 +0100 Edward Hervey <edward@centricular.com>
* validate/gst/validate/gst-validate-utils.c:
* validate/plugins/ssim/gstvalidatessim.c:
validate: plug some leaks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319>
2022-10-15 11:38:02 +0300 Sebastian Dröge <sebastian@centricular.com>
* validate/gst/validate/gst-validate-bin-monitor.c:
* validate/gst/validate/gst-validate-element-monitor.c:
* validate/gst/validate/gst-validate-monitor.c:
* validate/gst/validate/gst-validate-pad-monitor.c:
* validate/gst/validate/gst-validate-pipeline-monitor.c:
* validate/gst/validate/gst-validate-report.c:
* validate/gst/validate/gst-validate-reporter.c:
* validate/gst/validate/gst-validate-scenario.c:
validate: Add/fix various annotations
And fix monitor constructors to correctly check for valid arguments.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-09-21 11:44:59 -0300 Thibault Saunier <tsaunier@igalia.com>
* validate/gst/validate/gst-validate-scenario.c:
validate: Plug some leaks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3059>
2022-10-05 12:57:02 -0300 Thibault Saunier <tsaunier@igalia.com>
* validate/launcher/baseclasses.py:
validate:launcher: Cleanup test uuid when copying it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122>
2022-10-04 19:17:15 -0300 Thibault Saunier <tsaunier@igalia.com>
* validate/launcher/baseclasses.py:
* validate/launcher/main.py:
validate: launcher: Add a argument to avoid rereuning flaky tests
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122>
2022-10-04 19:16:44 -0300 Thibault Saunier <tsaunier@igalia.com>
* validate/launcher/apps/gstvalidate.py:
* validate/launcher/baseclasses.py:
validate: launcher: Keep variable framerate from input when possible
But disable it if forcing a framerate for some reason
Fixing our support for variable framerate in the encoding profile
serialization format.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122>
2022-10-04 19:16:04 -0300 Thibault Saunier <tsaunier@igalia.com>
* validate/launcher/apps/gstvalidate.py:
validate: launcher: Fix some pep8 issues
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122>
2022-10-04 19:14:49 -0300 Thibault Saunier <tsaunier@igalia.com>
* validate/gst/validate/gst-validate-internal.h:
* validate/gst/validate/gst-validate-scenario.c:
* validate/launcher/apps/gstvalidate.py:
* validate/launcher/baseclasses.py:
validate: Handle testfiles that need an HTTP server
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122>
2022-09-27 16:35:31 -0300 Thibault Saunier <tsaunier@igalia.com>
* validate/gst-libs/gst/video/gstvalidatessim.c:
validate:ssim: Show original/nok/diff images on error images
This way the user can easily see how off the image is very easily
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122>
2022-09-27 12:51:33 -0300 Thibault Saunier <tsaunier@igalia.com>
* validate/gst/validate/gst-validate-scenario.c:
validate:scenario: Fix setting iterating variable from arrays
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3122>
2022-10-04 03:57:31 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3115>
=== release 1.21.1 ===
2022-10-04 01:14:01 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-devtools.doap:

View file

@ -1,7 +1,63 @@
2022-10-24 14:40:55 -0500 Patrick Griffis <pgriffis@igalia.com>
* tests/check/meson.build:
build: Fix building ges with tools disabled
If you configure with `tools=disabled` then ges_launch is undefined.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3259>
2022-10-25 09:39:07 +0300 Sebastian Dröge <sebastian@centricular.com>
* ges/ges-asset.c:
* ges/ges-clip.c:
* ges/ges-formatter.h:
* ges/ges-pipeline.c:
* ges/ges-project.c:
* ges/ges-timeline-element.c:
* ges/ges-timeline.c:
Fix various warnings from gobject-introspection
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3261>
2022-10-17 19:45:30 -0500 Fabian Orccon <forccon@fluendo.com>
* ges/ges-transition-clip.c:
* tests/check/ges/transition.c:
ges: transition: Notify vtype change on ges_extractable_set_asset call
Fixes #1454
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3215>
2022-10-15 19:36:47 +0300 Sebastian Dröge <sebastian@centricular.com>
* ges/ges-asset.c:
* ges/ges-clip.c:
* ges/ges-container.c:
* ges/ges-layer.c:
* ges/ges-meta-container.c:
* ges/ges-pipeline.c:
* ges/ges-project.c:
* ges/ges-screenshot.c:
* ges/ges-text-overlay-clip.c:
* ges/ges-text-overlay.c:
* ges/ges-timeline-element.c:
* ges/ges-timeline.c:
* ges/ges-title-clip.c:
* ges/ges-title-source.c:
* ges/ges-track-element.c:
* ges/ges-track.c:
* ges/ges-utils.c:
ges: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-04 03:57:31 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3115>
=== release 1.21.1 ===
2022-10-04 01:14:01 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-editing-services.doap:

View file

@ -1,7 +1,144 @@
2022-11-04 14:17:39 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* docs/gst_plugins_cache.json:
* ext/libav/gstavutils.c:
avutils: Add missing space in doc
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3330>
2022-11-04 14:15:34 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* docs/gst_plugins_cache.json:
* ext/libav/gstavviddec.c:
avviddec: Initialize std_compliance to default
This was missed in the initial patch.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3330>
2022-11-04 08:00:03 +0100 Edward Hervey <edward@centricular.com>
* ext/libav/gstavcfg.c:
libav: avcfg: Avoid brittle comparision
Subtracting a gint from another (or a guint from another) has no guarantees that
it will result in a gint.
Therefore do the actual comparision instead.
Also use the *actual* type for comparing flags (the field value types are different)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319>
2022-11-04 07:59:10 +0100 Edward Hervey <edward@centricular.com>
* ext/libav/gstavcfg.c:
libav: avcfg: Don't leak duplicate enumvalue entries
If we discard the duplicates, we also need to free the allocated strings.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319>
2022-11-02 11:09:17 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* docs/gst_plugins_cache.json:
doc: avviddec: Update plugin cache
This is to add std-compliance property and GstFFMpegVidDec base class.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3311>
2022-11-01 11:13:23 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* ext/libav/gstav.c:
* ext/libav/gstav.h:
* ext/libav/gstavcodecmap.c:
* ext/libav/gstavcodecmap.h:
* ext/libav/gstavutils.h:
* ext/libav/gstavviddec.c:
* ext/libav/gstavviddec.h:
avviddec: Introduce a class for shared properties
Without a parent class,the documentation would need to be duplicated for
every CODECs. This patch adds an abstract class in between GstVideoDecoder
and the element.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3311>
2022-11-01 09:35:11 -0400 Seungha Yang <seungha@centricular.com>
* ext/libav/gstavutils.c:
* ext/libav/gstavutils.h:
* ext/libav/gstavviddec.c:
* ext/libav/gstavviddec.h:
avviddec: Expose std-compliance option
Default compliance mode (i.e., FF_COMPLIANCE_NORMAL) might not
strictly follow specification. This property will allow user
to specifiy expected compliance mode.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3311>
2022-10-26 16:30:31 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* ext/libav/gstavviddec.c:
avdec_h265: Fix endless renegoation with alternate interlacing
The picture parameter picture->top_field_first is reused in this mode
to signal the TOP fields. As a side effect, it will change every frame
and current code assumed that if this changes then a renegotiation is
needed. Fixed this by ignoring that change whenever we are decoding one field
only.
Fixes #1523
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3276>
2022-10-26 10:44:01 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* ext/libav/gstavviddec.c:
avviddec: Avoid flushing on framerate changes
A framerate change does not require flushing the decoder and causes
issues with some specific fragmented files if the two fragments have
different framerate.
Fixes #1522
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3270>
2022-10-18 11:37:30 +0000 Devin Anderson <danderson@microsoft.com>
* ext/libav/gstavdemux.c:
gst-libav: Fix synchronization issues and errors created by the forwarding of segment events by demuxer.
In order to play nicely with `ffmpeg`, demuxers in `gst-libav` have to make
buffers available to `ffmpeg` while taking the blocking I/O model in `ffmpeg`
into account, which results in buffers not being sent downstream until `ffmpeg`
has processed them in its separate thread.
In constrast, many `gstreamer` events are simply forwarded downstream.
Currently `GST_EVENT_SEGMENT` events are forwarded downstream without any
processing, which can potentially result in:
* `GST_EVENT_SEGMENT` events being out of sync with buffers
* `GST_EVENT_SEGMENT` events going out that are incorrect because they apply
to data seen by the demuxer, but not necessarily seen by downstream elements
I came across this bug when I was attempting to enable G723.1 demuxing/decoding
using the G723.1 demuxer and decoder provided by `ffmpeg`. I wrote tests to
verify support for the functionality, and found that, in push mode,
`GST_EVENT_SEGMENT` events pushed to the demuxer by the upstream `filesrc`
element would be forwarded to the decoder without modification, resulting in
an internal data streaming error. With this patch, tests work in both push and
pull mode.
This patch solves the problem by disabling the forwarding of
`GST_EVENT_SEGMENT` events downstream (an initial `GST_EVENT_SEGMENT` event is
still pushed downstream by the demuxer). It's possible there's a better way to
do this, but, having looked at how a few different `gstreamer` demuxers deal
with `GST_EVENT_SEGMENT` events, it seems like the processing is somewhat
specific to the demuxer implementation, whereas `gst-libav` has one general way
of handling the situation for any `ffmpeg` demuxer. Perhaps there's a better
way to solve this using the `ffmpeg` API to take advantage of specific demuxer
details. IDK.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3218>
2022-10-04 21:27:36 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* ext/libav/gstavauddec.c:
avauddec: address regression with WMA files ..
By outputting lead-in samples that FFmpeg now would like us to ignore,
and discarding trailing samples that it would now like us to output.
See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1474
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1348
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3117>
2022-10-04 03:57:31 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3115>
=== release 1.21.1 ===
2022-10-04 01:14:01 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-libav.doap:

View file

@ -1,7 +1,14 @@
2022-10-04 03:57:31 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3115>
=== release 1.21.1 ===
2022-10-04 01:14:01 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-omx.doap:

File diff suppressed because it is too large Load diff

View file

@ -1,7 +1,439 @@
2022-11-07 20:31:25 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/pbutils/gstdiscoverer-types.c:
discoverer: Annotate `DiscovererInfo::get_audio_streams()` and others with the concrete stream info type
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3353>
2022-11-05 07:34:27 +0100 Edward Hervey <edward@centricular.com>
* gst/subparse/gstsubparse.c:
subparse: Fix non-closed tag handling.
Unclear what the goal was, but we could end up reading way past the next_tag.
Instead just move everything from after the end tag ('>') to the next_tag.
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=53040
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3340>
2022-10-31 16:06:45 +0100 Edward Hervey <edward@centricular.com>
* gst/playback/gstparsebin.c:
parsebin: Fix leak
Release the reference on the collection which was given to us when extracting it
from the event/message.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319>
2022-10-13 22:15:58 +0530 Sanchayan Maity <sanchayan@asymptotic.io>
* gst/playback/gstplaybin3.c:
playbin3: Fix missing pad unref
GST_TRACERS="leaks" GST_DEBUG="GST_TRACER:7,leaks:6" gst-play-1.0 --use-playbin3 test.mkv
When running a pipeline like above, leaks are observed.
0:00:56.882419132 240637 0x5562c528ccc0 TRACE GST_TRACER :0:: object-alive, type-name=(string)GstConcatPad, address=(gpointer)0x7efd7c0d20a0, description=(string)<'':sink_0>, ref-count=(uint)1, trace=(string);
0:00:56.882429131 240637 0x5562c528ccc0 TRACE GST_TRACER :0:: object-alive, type-name=(string)GstConcatPad, address=(gpointer)0x7efd7c0d2be0, description=(string)<'':sink_0>, ref-count=(uint)1, trace=(string);
0:00:56.882437056 240637 0x5562c528ccc0 TRACE GST_TRACER :0:: object-alive, type-name=(string)GstConcatPad, address=(gpointer)0x7efd7c0d3720, description=(string)<'':sink_0>, ref-count=(uint)1, trace=(string);
gst_element_release_request_pad does not unref the pad. It needs to
be followed by gst_object_unref. Doing that fixes the above leaks.
Use g_ptr_array_new_with_free_func with gst_object_unref as the free
function to unref the pad after release.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3177>
2022-10-26 13:42:59 +1100 Matthew Waters <matthew@centricular.com>
* gst-libs/gst/pbutils/codec-utils.c:
pbutils: add correct mime mapping for vp9
Based on https://www.webmproject.org/vp9/mp4/#codecs-parameter-string
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3260>
2022-10-27 15:13:36 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/app/gstappsrc.c:
* gst-libs/gst/audio/gstaudiodecoder.c:
* gst-libs/gst/audio/gstaudioencoder.c:
* gst-libs/gst/video/gstvideoencoder.c:
core/base: Only post latency messages if the latency values have actually changed
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1525
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3282>
2022-10-27 07:21:19 +0200 Edward Hervey <edward@centricular.com>
* gst-libs/gst/video/gstvideodecoder.c:
videodecoder: Only post latency message if it changed
Posting latency messages causes a full and potentially expensive latency
recalculation of the pipeline. While subclasses should check whether the latency
really changed or not before calling this function, we ensure that we do not
post such messages if it didn't change.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3282>
2022-10-26 10:25:43 +0200 Daniels Umanovskis <du@axentia.se>
* sys/ximage/ximagesink.c:
* sys/xvimage/xvcontext.c:
ximagesink, xvimagesink: set the _NET_WM_PID atom on the window
This makes it easier for X11 window management to work with windows created by these sinks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3267>
2022-10-25 09:39:07 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/gl/gstgldisplay.c:
* gst-libs/gst/gl/gstglshader.c:
* gst-libs/gst/pbutils/gstdiscoverer.c:
* gst-libs/gst/rtsp/gstrtspconnection.c:
* gst-libs/gst/rtsp/gstrtspmessage.c:
* gst-libs/gst/sdp/gstmikey.c:
Fix various warnings from gobject-introspection
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3261>
2022-10-21 21:50:01 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h:
* gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m:
* gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m:
gl/vulkan: Fix static linking on macOS
duplicate symbol '__invoke_on_main' in:
/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstvulkan-1.0.a(cocoa_gstvkwindow_cocoa.m.o)
/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstgl-1.0.a(cocoa_gstglwindow_cocoa.m.o)
ld: 1 duplicate symbol for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Also make the same change in iOS for consistency.
Continuation of https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1132
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3242>
2022-10-04 05:39:51 +0100 Matthew Waters <matthew@centricular.com>
* gst-libs/gst/gl/meson.build:
build/gl: fix automatic dispmanx detection for rpi4
rpi4 doesn't contain dispmanx but still contains bcm_host.pc which
confuses the configure detection. Add an explicit check for
EGL_DISPMANX_WINDOW_T to ensure that we only build with dispmanx when
the types are available.
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/893
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/952
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3230>
2022-10-19 22:08:17 +1100 Matthew Waters <matthew@centricular.com>
* gst-libs/gst/gl/gstglcontextconfig.c:
docs/glcontextconfig: rename title to not be GstGLContext
Can be confusing havint two pages that both have GstGLContext as the
title.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3227>
2022-07-06 21:45:24 +0300 Jordan Petridis <jordan@centricular.com>
* ext/cdparanoia/meson.build:
cdparanoia: Ignore compiler warning coming from the cdparanoia header
When trying to build the plugin, GCC starts complaining about issues
with one of the cdparanoia headers and it block us from being able
to build the plugin with Werror.
The current warning in the header look like this:
```
[1/2] Compiling C object subprojects/gst-plugins-base/ext/cdparanoia/libgstcdparanoia.so.p/gstcdparanoiasrc.c.o
In file included from ../subprojects/gst-plugins-base/ext/cdparanoia/gstcdparanoiasrc.h:37,
from ../subprojects/gst-plugins-base/ext/cdparanoia/gstcdparanoiasrc.c:31:
/usr/include/cdda/cdda_interface.h:164:3: warning: initialization discards const qualifier from pointer target type [-Wdiscarded-qualifiers]
164 | "Success",
| ^~~~~~~~~
...
/usr/include/cdda/cdda_interface.h:163:14: warning: strerror_tr defined but not used [-Wunused-variable]
163 | static char *strerror_tr[]={
| ^~~~~~~~~~~
[2/2] Linking target subprojects/gst-plugins-base/ext/cdparanoia/libgstcdparanoia.so
```
Last release of cdparanoia was in 2008, so our best bet for the
time is to ignore the warnings.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2722>
2022-10-17 14:43:42 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/sdp/gstmikey.c:
* gst-libs/gst/sdp/gstsdpmessage.c:
sdp: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-17 14:51:03 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/tag/gstid3tag.c:
* gst-libs/gst/tag/gstvorbistag.c:
* gst-libs/gst/tag/gstxmptag.c:
* gst-libs/gst/tag/id3v2.c:
* gst-libs/gst/tag/lang.c:
* gst-libs/gst/tag/licenses.c:
* gst-libs/gst/tag/tags.c:
tag: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-17 11:31:05 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/allocators/gstdmabuf.c:
* gst-libs/gst/allocators/gstfdmemory.c:
allocators: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-15 12:16:01 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m:
* gst-libs/gst/gl/egl/gsteglimage.c:
* gst-libs/gst/gl/egl/gstgldisplay_egl.c:
* gst-libs/gst/gl/egl/gstgldisplay_egl_device.c:
* gst-libs/gst/gl/gstglbasememory.c:
* gst-libs/gst/gl/gstglbasememory.h:
* gst-libs/gst/gl/gstglbufferpool.c:
* gst-libs/gst/gl/gstglcolorconvert.c:
* gst-libs/gst/gl/gstglcontext.c:
* gst-libs/gst/gl/gstgldisplay.c:
* gst-libs/gst/gl/gstglformat.c:
* gst-libs/gst/gl/gstglshader.c:
* gst-libs/gst/gl/gstglsl.c:
* gst-libs/gst/gl/gstglviewconvert.c:
* gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c:
* gst-libs/gst/gl/wayland/gstgldisplay_wayland.c:
* gst-libs/gst/gl/x11/gstgldisplay_x11.c:
gl: Add/fix various annotations
And fix a memory leaks in gst_gl_display_egl_new() error cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-15 00:19:53 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/pbutils/codec-utils.c:
* gst-libs/gst/pbutils/descriptions.c:
* gst-libs/gst/pbutils/encoding-profile.c:
* gst-libs/gst/pbutils/encoding-target.c:
* gst-libs/gst/pbutils/gstdiscoverer-types.c:
* gst-libs/gst/pbutils/gstdiscoverer.c:
* gst-libs/gst/pbutils/missing-plugins.c:
pbutils: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-15 00:00:03 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/rtp/gstrtcpbuffer.c:
* gst-libs/gst/rtp/gstrtpbasedepayload.c:
* gst-libs/gst/rtp/gstrtpbasepayload.c:
* gst-libs/gst/rtp/gstrtpbuffer.c:
* gst-libs/gst/rtp/gstrtphdrext.c:
* gst-libs/gst/rtp/gstrtpmeta.c:
* gst-libs/gst/rtp/gstrtppayloads.c:
rtp: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-14 23:52:40 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/rtsp/gstrtspconnection.c:
* gst-libs/gst/rtsp/gstrtspdefs.c:
* gst-libs/gst/rtsp/gstrtspmessage.c:
* gst-libs/gst/rtsp/gstrtsptransport.c:
* gst-libs/gst/rtsp/gstrtspurl.c:
rtsp: Add/fix various annotations
Also initialize out parameters so that they don't have an undefined
value in case of errors.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-14 22:08:07 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/app/gstappsink.c:
* gst-libs/gst/app/gstappsrc.c:
app: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-14 22:04:00 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/audio/audio-channel-mixer.c:
* gst-libs/gst/audio/audio-converter.c:
* gst-libs/gst/audio/audio-info.c:
* gst-libs/gst/audio/audio-resampler.c:
* gst-libs/gst/audio/audio.c:
* gst-libs/gst/audio/gstaudiobasesink.c:
* gst-libs/gst/audio/gstaudiobasesrc.c:
* gst-libs/gst/audio/gstaudiodecoder.c:
* gst-libs/gst/audio/gstaudioencoder.c:
audio: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-14 21:59:43 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/video/gstvideodecoder.c:
* gst-libs/gst/video/gstvideoencoder.c:
* gst-libs/gst/video/gstvideometa.c:
* gst-libs/gst/video/gstvideotimecode.c:
* gst-libs/gst/video/video-anc.c:
* gst-libs/gst/video/video-anc.h:
* gst-libs/gst/video/video-converter.c:
* gst-libs/gst/video/video-format.c:
* gst-libs/gst/video/video-info.c:
* gst-libs/gst/video/video-multiview.c:
* gst-libs/gst/video/video-overlay-composition.c:
* gst-libs/gst/video/video-sei.h:
video: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-17 13:01:53 +0200 Edward Hervey <edward@centricular.com>
* gst/playback/gsturisourcebin.c:
urisourcebin: Fix usage of raw and non-raw source provider
The computation in analyze_source was wrong, and would state that the element
has "all raw source pads" if it had at least one.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1029
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3199>
2022-10-17 18:38:43 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst-libs/gst/rtp/gstrtpbuffer.c:
* tests/check/libs/rtp.c:
rtpbuffer: Initialize extended timestamp to the first wraparound period
This allows correct handling of wrapping around backwards during the
first wraparound period and avoids the infamous "Cannot unwrap, any
wrapping took place yet" error message.
It allows makes sure that for actual timestamp jumps a valid value is
returned instead of 0, which then allows the caller to handle it
properly. Not having this can have the caller see the same timestamp (0)
for a very long time, which for example can cause rtpjitterbuffer to
output the same timestamp for a very long time.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1500
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3202>
2022-10-14 16:12:45 +0200 Edward Hervey <edward@centricular.com>
* tools/gst-play.c:
gst-play: Don't leak the stream collection
We are given a reference to the collection when parsing it from the
message. Just store it (instead of referencing it again).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3186>
2022-10-13 11:21:42 -0400 Julian Bouzas <julian.bouzas@collabora.com>
* docs/plugins/gst_plugins_cache.json:
* gst-libs/gst/riff/riff-media.c:
riff: Mark jpeg as parsed
This is needed so that autoplugging works with avidemux and JPEG decoders that
need parsed sink caps (eg rockchip 'mppjpegdec' decoder). It also works fine
with 'jpegdec' decoder regardless.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3175>
2022-10-07 11:46:29 -0300 Thibault Saunier <tsaunier@igalia.com>
* gst/videorate/gstvideorate.c:
videorate: Do not close segment when getting a same segment twice
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3059>
2022-09-14 16:39:48 -0300 Thibault Saunier <tsaunier@igalia.com>
* gst/videorate/gstvideorate.c:
* gst/videorate/gstvideorate.h:
* tests/validate/meson.build:
* tests/validate/videorate/fill_segment_after_caps_changed_before_eos.validatetest:
* tests/validate/videorate/fill_segment_after_caps_changed_before_eos/flow-expectations/log-videorate-sink-expected:
* tests/validate/videorate/fill_segment_after_caps_changed_before_eos/flow-expectations/log-videorate-src-expected:
videorate: Handle closing segment on EOS right after caps event
The scenario is what we try in the tests:
- we have a segment with .stop set
- some frame(s) flow
- we get a CAPS event
- we get an EOS (before getting buffers after the CAPS event)
in that case, without that patch, the segment is not properly closed
which is not correct. In this patch we keep track of previous caps until
a new buffer arrives, this way in that situation we set previous caps
again, and close the segment with the previous buffer.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1352
in this specific case
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3059>
2022-08-22 16:33:23 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
* gst-libs/gst/gl/egl/gsteglimage.c:
opengl: Fix usage of eglCreate/DestroyImage
The implementation was inconsistent between create and destroy. EGLImage
creation and destruction is requires for EGL 1.5 and up, while
otherwise the KHR version is only available if EGL_KHR_image_base
feature is set. Not doing these check may lead to getting a function
pointer to a stub, which is notably the case when using apitrace.
Fixes #1389
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2925>
2022-10-06 16:23:56 +0200 Aleksandr Slobodeniuk <aslobodeniuk@fluendo.com>
* gst/playback/gstdecodebin3.c:
decodebin3: allow to call "dispose" multiple times
https://docs.gtk.org/gobject/concepts.html#reference-counts-and-cycles
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3135>
2022-10-06 13:03:26 +0200 Aleksandr Slobodeniuk <aslobodeniuk@fluendo.com>
* gst/playback/gstdecodebin3.c:
decodebin3: fix mutex leaks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3126>
2022-10-03 15:20:53 -0300 Thibault Saunier <tsaunier@igalia.com>
* gst/playback/gstdecodebin3-parse.c:
decodebin3: Do not try to plug a decoder on raw formats
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3123>
2022-10-06 00:00:59 +0900 Seungha Yang <seungha@centricular.com>
* gst-libs/gst/video/gstvideosink.c:
videosink: Don't return unknown end-time from get_times()
... in case of reverse playback. Otherwise basesink will not
wait for clock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3121>
2021-07-02 16:22:04 +0800 Haihao Xiang <haihao.xiang@intel.com>
* gst-libs/gst/gl/egl/gsteglimage.c:
eglimage: fix Y412_LE DMABuf import support
This fixed the error below:
GST_GL_PLATFORM=egl gst-launch-1.0 videotestsrc ! msdkvpp !
"video/x-raw(memory:DMABuf),format=Y412_LE" ! glimagesink
0:00:00.063737691 576978 0x557c11266920 ERROR gleglimage
gsteglimage.c:577:_drm_rgba_fourcc_from_info: Unsupported format for
DMABuf.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1389>
2021-07-02 16:01:19 +0800 Haihao Xiang <haihao.xiang@intel.com>
* gst-libs/gst/gl/egl/gsteglimage.c:
eglimage: add Y410 DMABuf import support
This fixed the error below:
GST_GL_PLATFORM=egl gst-launch-1.0 videotestsrc ! msdkvpp ! \
"video/x-raw(memory:DMABuf),format=Y410" ! glimagesink
0:00:00.040553883 576732 0x55be9b35f920 ERROR gleglimage
gsteglimage.c:577:_drm_rgba_fourcc_from_info: Unsupported format for
DMABuf.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1389>
2021-07-02 20:31:22 +0800 Haihao Xiang <haihao.xiang@intel.com>
* gst-libs/gst/gl/egl/gsteglimage.c:
eglimage: add Y212_LE / Y212_BE DMABuf import support
This fixed the error below:
GST_GL_PLATFORM=egl gst-launch-1.0 videotestsrc ! msdkvpp \
! "video/x-raw(memory:DMABuf),format=Y212_LE" ! glimagesink
0:00:00.148086281 575148 0x562a6d36d920 ERROR gleglimage
gsteglimage.c:555:_drm_rgba_fourcc_from_info: Unsupported format for
DMABuf.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1389>
2021-07-02 15:37:19 +0800 Haihao Xiang <haihao.xiang@intel.com>
* gst-libs/gst/gl/egl/gsteglimage.c:
eglimage: add Y210 DMABuf import support
This fixed the error below:
GST_GL_PLATFORM=egl gst-launch-1.0 videotestsrc ! msdkvpp ! \
"video/x-raw(memory:DMABuf),format=Y210" ! glimagesink
0:00:00.039881627 571365 0x56245eba6920 ERROR gleglimage
gsteglimage.c:549:_drm_rgba_fourcc_from_info: Unsupported format for
DMABuf
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1389>
2022-10-04 03:57:31 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3115>
=== release 1.21.1 ===
2022-10-04 01:14:01 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-plugins-base.doap:

View file

@ -1,7 +1,528 @@
2020-09-02 10:49:40 +0100 Justin Chadwell <me@jedevc.com>
* gst/isomp4/qtdemux.c:
qtdemux: use unsigned int types to store result of QT_UINT32
In a few cases throughout qtdemux, the results of QT_UINT32 were being
stored in a signed integer, which could cause subtle bugs in the case of
an integer overflow, even allowing the the result to equal a negative
number!
This patch prevents this by simply storing the results of this function
call properly in an unsigned integer type. Additionally, we fix up the
length checking with stsd parsing to prevent cases of child atoms
exceeding their parent atom sizes.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3344>
2022-11-04 17:48:01 +0000 Tim-Philipp Müller <tim@centricular.com>
* ext/qt/gstqtglutility.cc:
qt: initialize GError properly in gst_qt_get_gl_wrapcontext()
Spotted by Claus Stovgaard.
Fixes #1545
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3327>
2022-11-04 11:10:52 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/gstqtmux.c:
qtmux: Add durations to raw audio buffers from the raw audio adapter in prefill mode
This ensures that a duration can also be calculated and stored for the
last buffer at EOS.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3321>
2022-11-04 10:49:31 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/gstqtmux.c:
qtmux: Release object lock before posting an error message
GST_ELEMENT_ERROR() also takes the object lock and this would then
deadlock.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3321>
2022-11-03 14:08:57 +0100 Edward Hervey <edward@centricular.com>
* gst/multifile/gstimagesequencesrc.c:
imagesequencesrc; Fix leaks
* The path was leaked
* The custom buffer was never freed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319>
2022-11-03 14:08:02 +0100 Edward Hervey <edward@centricular.com>
* gst/isomp4/qtdemux.c:
qtdemux: Fix cenc-related leaks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319>
2022-11-03 14:06:58 +0100 Edward Hervey <edward@centricular.com>
* gst/deinterlace/gstdeinterlace.c:
deinterlace: Don't leak metas
There is no correlation between the frame being NULL and the metas not being
present.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319>
2022-10-31 16:08:23 +0100 Edward Hervey <edward@centricular.com>
* ext/adaptivedemux2/gstadaptivedemux-period.c:
* ext/adaptivedemux2/gstadaptivedemux.c:
adaptivedemux2: Fix collection leaks
* The collection on the period was never unreffed
* The collection in the message handler was never unreffed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3319>
2022-11-05 03:23:43 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/mss/gstmssdemux.c:
mssdemux2: Update for adaptivedemux2 refactoring
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-11-03 01:48:08 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/dash/gstdashdemux.c:
* ext/adaptivedemux2/gstadaptivedemux-private.h:
* ext/adaptivedemux2/gstadaptivedemux-stream.c:
* ext/adaptivedemux2/gstadaptivedemux-stream.h:
* ext/adaptivedemux2/gstadaptivedemux.c:
* ext/adaptivedemux2/gstadaptivedemux.h:
* ext/adaptivedemux2/hls/gsthlsdemux.c:
adaptivedemux2: Move stream_seek() to the Stream class
Move the last stream specific vfunc from the demux
class to the stream class.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-08-21 04:31:53 +1000 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/dash/gstdashdemux.c:
* ext/adaptivedemux2/gstadaptivedemux-private.h:
* ext/adaptivedemux2/gstadaptivedemux-stream.c:
* ext/adaptivedemux2/gstadaptivedemux-stream.h:
* ext/adaptivedemux2/gstadaptivedemux-types.h:
* ext/adaptivedemux2/gstadaptivedemux.c:
* ext/adaptivedemux2/gstadaptivedemux.h:
* ext/adaptivedemux2/hls/gsthlsdemux.c:
adaptivedemux2: Refactor stream methods into the stream
Unlike the legacy elements, GstAdaptiveDemuxStream is a GObject now,
so a bunch of things that were actually stream methods on the
parent demux object can directly become stream methods now.
Move the stream class out to a header of its own.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-06-07 14:36:24 +1000 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/hls/m3u8.c:
* ext/adaptivedemux2/hls/m3u8.h:
hlsdemux2/m3u8: Implement EXT-X-GAP parsing
Read the EXT-X-GAP tag and set is_gap on the segment.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-06-07 14:13:39 +1000 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/hls/m3u8.c:
hlsdemux2/m3u8: Refactor parsing for readability
Small readability improvements in the parsing code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-10-14 06:21:41 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/downloadrequest.c:
* ext/adaptivedemux2/downloadrequest.h:
adaptivedemux2/downloadhelper: Remove return val for download_request_add_buffer()
The function can't actually fail, and the only caller
was ignoring the result anyway, so remove the return value.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-10-14 06:20:06 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/downloadhelper.c:
adaptivedemux2/downloadhelper: Add debug output of response headers
Dump the HTTP response headers at TRACE level
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-10-14 06:19:11 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/downloadhelper.c:
adaptivedemux2/downloadhelper: Don't mark transfer as complete/error if cancelled.
If the state of the download request was reset to UNSENT,
it was cancelled. Don't update the state to COMPLETE or ERRORED
in on_read_ready().
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-10-14 06:17:00 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/downloadhelper.c:
adaptivedemux2/downloadhelper: Ignore spurious read failure
Sometimes g_input_stream_read_all_finish() can return
0 bytes, but still succeed (return TRUE) and have more
data available later. Only finish the transfer
if it returns 0 bytes *and* FALSE with no error.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-10-14 06:15:45 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/downloadhelper.c:
* ext/adaptivedemux2/downloadrequest.c:
* ext/adaptivedemux2/downloadrequest.h:
adaptivedemux2/downloadhelper: Fix function name
Fix a typo in the name of function download_request_despatch_progress()
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-10-12 02:14:32 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/gstadaptivedemux-private.h:
* ext/adaptivedemux2/gstadaptivedemux.c:
adaptivedemux2: Remove scheduler_lock mutex
Remove the old unused scheduler_lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-10-11 03:20:11 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/gstadaptivedemux.c:
adaptivedemux2: Hold tracks lock accessing input_period
The input_period is protected by the TRACKS_LOCK,
so make sure to hold that when accessing it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-08-16 23:01:46 +1000 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/gstadaptivedemux-stream.c:
* ext/adaptivedemux2/gstadaptivedemux.h:
adaptivedemux2: Add state checks and clean up obsolete variables
The cancelled flag was only set in the stream finalize()
method, after all activity on the stream has stopped anyway.
Replace uses of cancelled with checks on the stream state.
Remove the replaced flag, which was checked but never set
to TRUE anywhere any more.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3314>
2022-10-30 20:28:25 +0900 Seungha Yang <seungha@centricular.com>
* docs/gst_plugins_cache.json:
* ext/vpx/gstvp9dec.c:
* ext/vpx/gstvp9enc.c:
* ext/vpx/gstvpxenc.c:
vpx: Complete high bitdepth vp9 en/decoding support
Adding 12bits variant formats to en/decoder, and high bitdepth
4:4:4 (except for GBR) encoding support
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3298>
2022-10-30 20:03:10 +0900 Seungha Yang <seungha@centricular.com>
* ext/vpx/gstvp9dec.c:
* ext/vpx/gstvp9enc.c:
* ext/vpx/gstvpxcompat.h:
* ext/vpx/gstvpxdec.h:
* ext/vpx/gstvpxenc.h:
vpx: Define formats for compatibility
ifdef for enum values never work. Instead, define new enum type
and use it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3298>
2022-10-27 23:57:58 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/hls/m3u8.c:
hlsdemux2: m3u8: Use PDT to offset stream time when aligning playlist
When matching segments across playlists with Program-Date-Times,
use the difference in segment PDTs to adjust the stream time
that's being transferred. This can fix cases where the
segment boundaries don't align across different streams
and the first download gets thrown away once the PTS
is seen and found not to match.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3309>
2022-11-01 02:17:46 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/hls/gsthlsdemux.c:
* ext/adaptivedemux2/hls/gsthlsdemux.h:
hlsdemux2: Download new header when it changes
Check whether the init file / MAP data for a segment
is different to the current data and trigger an
update if so. Previously, the header would only
be checked in HLS after switching bitrate or
after a seek / first download.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3307>
2022-11-01 01:41:35 +1100 Jan Schmidt <jan@centricular.com>
* ext/adaptivedemux2/hls/m3u8.c:
* ext/adaptivedemux2/hls/m3u8.h:
m3u8: Expose GstM3U8InitFile methods
Exposure ref/unref methods for the GstM3U8InitFile type,
and add a gst_m3u8_init_file_equal() comparison method.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3307>
2022-10-21 17:24:41 +0200 Edward Hervey <edward@centricular.com>
* docs/gst_plugins_cache.json:
* ext/adaptivedemux2/gstadaptivedemux-stream.c:
* ext/adaptivedemux2/gstadaptivedemux.c:
* ext/adaptivedemux2/gstadaptivedemux.h:
* ext/adaptivedemux2/hls/gsthlsdemux.c:
* ext/adaptivedemux2/hls/m3u8.c:
* ext/adaptivedemux2/hls/m3u8.h:
adaptivedemux2: Improve minimum buffering threshold
Previously the minimum buffering threshold was hardcoded to a specific
value (10s). This is suboptimal this an actual value will depend on the actual
stream being played.
This commit sets the low watermark threshold in time to 0, which is an automatic
mode. Subclasses can provide a stream `recommended_buffering_threshold` when
update_stream_info() is called.
Currently implemented for HLS, where we recommended 1.5 average segment
duration. This will result in buffering being at 100% when the 2nd segment has
been downloaded (minus a bit already being consumed downstream)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3240>
2022-10-28 18:57:44 +0530 Sanchayan Maity <sanchayan@asymptotic.io>
* gst/wavparse/gstwavparse.c:
wavparse: Speed up type finding for DTS
In order to figure out if the "raw" audio contained within the wav
container is actually DTS, right now we call the typefinder helper
which runs all typefinders.
Speed up this type finding process by specifying the extension.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3294>
2022-10-25 13:30:15 +1100 Matthew Waters <matthew@centricular.com>
* docs/gst_plugins_cache.json:
* gst/isomp4/gstqtmuxmap.c:
mp4mux: enable muxing VP9 streams
As specified in https://www.webmproject.org/vp9/mp4/
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3260>
2022-10-25 13:28:26 +1100 Matthew Waters <matthew@centricular.com>
* docs/gst_plugins_cache.json:
* gst/isomp4/atoms.c:
* gst/isomp4/atoms.h:
* gst/isomp4/gstqtmux.c:
* gst/isomp4/gstqtmuxmap.c:
qtmux: add support for writing vpcC box for VP9
Increases compatibility for VP9 in .mov in at least VLC.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3260>
2022-10-04 18:21:15 -0300 Thibault Saunier <tsaunier@igalia.com>
* ext/adaptivedemux2/dash/gstdashdemux.c:
* ext/adaptivedemux2/gstadaptivedemux.c:
dashdemux2: Fix the way we determine current_position after seeks
Without that the current_position was off after seeks, potentially
leading to not properly push a last fragment when a `.stop` time was
set.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3159>
2022-09-20 15:32:52 -0300 Thibault Saunier <tsaunier@igalia.com>
* ext/adaptivedemux2/dash/gstmpdclient.c:
dash: Fix computing `repeat_index` when seeking in stream with a start !=0 on the first fragment
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3159>
2022-09-22 11:20:55 -0300 Thibault Saunier <tsaunier@igalia.com>
* gst/matroska/matroska-demux.c:
matroskademux: Let upstream handle seeking/duration query in time if possible
So proper response are given for dash streams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3159>
2022-09-21 15:01:39 -0300 Thibault Saunier <tsaunier@igalia.com>
* gst/matroska/matroska-demux.c:
* gst/matroska/matroska-demux.h:
matroskademux: Start support for upstream segments in TIME format
So we can use matroskademux for dash webm dash streams.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3159>
2022-01-24 16:49:52 +0100 Jakub Adam <jakub.adam@collabora.com>
* sys/ximage/gstximagesrc.c:
ximagesrc: grab the server while capturing screen image
Makes sure screen resolution doesn't change in the middle of the
process.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1562>
2021-12-17 14:57:57 +0100 Jakub Adam <jakub.adam@collabora.com>
* sys/ximage/gstximagesrc.c:
* sys/ximage/gstximagesrc.h:
ximagesrc: change video resolution when X11 screen gets resized
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1562>
2022-10-23 20:32:35 +0100 Tim-Philipp Müller <tim@centricular.com>
* docs/gst_plugins_cache.json:
* gst/meson.build:
* gst/xingmux/gstxingmux.c:
* gst/xingmux/gstxingmux.h:
* gst/xingmux/meson.build:
* gst/xingmux/plugin.c:
* meson_options.txt:
* tests/check/elements/xingmux.c:
* tests/check/elements/xingmux_testdata.h:
* tests/check/meson.build:
xingmux: move from gst-plugins-ugly to gst-plugins-good
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/415
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3251>
2022-10-21 16:23:08 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: Only EOS on timeout if all streams are timed out/EOS
Otherwise a stream that is just temporarily inactive might time out and
then can never become active again because the EOS event was sent
already.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3238>
2022-10-18 16:51:39 +1100 Matthew Waters <matthew@centricular.com>
* docs/gst_plugins_cache.json:
* gst/rtp/gstrtpulpfecdec.c:
* gst/rtp/gstrtpulpfecdec.h:
rtpulpfecdec: add property for passthrough
Support for enabling and disabling decoding of FEC data decoding on
packet loss events and unconditional seqnum rewriting of packets.
See
https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/581
for background.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3212>
2022-10-14 01:23:04 +0000 Devin Anderson <danderson@microsoft.com>
* gst/wavparse/gstwavparse.c:
wavparse: Avoid occasional crash due to referencing freed buffer.
We've seen occasional crashes in the `wavparse` module associated with
referencing a buffer in `gst_wavparse_chain` that's already been freed. The
reference is stolen when the buffer is transferred to the adapter with
`gst_adapter_push` and, IIUC, assuming the source doesn't hold a reference to
the buffer, the buffer could be freed during interaction with the adapter in
`gst_wavparse_stream_headers`.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3179>
2022-10-13 11:21:42 -0400 Julian Bouzas <julian.bouzas@collabora.com>
* docs/gst_plugins_cache.json:
riff: Mark jpeg as parsed
This is needed so that autoplugging works with avidemux and JPEG decoders that
need parsed sink caps (eg rockchip 'mppjpegdec' decoder). It also works fine
with 'jpegdec' decoder regardless.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3175>
2022-10-13 00:20:45 +0000 Devin Anderson <danderson@microsoft.com>
* gst/wavparse/gstwavparse.c:
* tests/check/elements/wavparse.c:
* tests/files/corruptheadertestsrc.wav:
wavparse: Fix crash that occurs in push mode when header chunks are corrupted in certain ways.
In the case that a test is provided for, the size of the `fmt ` chunk is
changed from 16 bytes to 18 bytes (bytes 17 - 20 below):
```
$ hexdump -C corruptheadertestsrc.wav
00000000 52 49 46 46 e4 fd 00 00 57 41 56 45 66 6d 74 20 |RIFF....WAVEfmt |
00000010 12 00 00 00 01 00 01 00 80 3e 00 00 00 7d 00 00 |.........>...}..|
00000020 02 00 10 00 64 61 74 61 |....data|
00000028
```
(Note that the original file is much larger. This was the smallest sub-file
I could find that would generate the crash.)
Note that, while the same issue doesn't cause a crash in pull mode, there's a
different issue in that the file is processed successfully as if it was a .wav
file with zero samples.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3173>
2022-10-11 15:00:37 +0200 Edward Hervey <edward@centricular.com>
* sys/oss4/oss4-sink.c:
* sys/oss4/oss4-source.c:
oss4: Fix debug category initialization
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1456
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3158>
2022-10-08 01:03:13 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* gst/multifile/gstsplitmuxpartreader.c:
splitmuxsrc: don't queue data on unlinked pads
Once a pad has returned NOT_LINKED, the part reader shouldn't let its
corresponding data queue run full and eventually (after 20 seconds)
stall playback.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3145>
2022-10-03 20:28:47 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtpmanager/gstrtpsession.c:
* gst/rtpmanager/rtpsession.c:
* gst/rtpmanager/rtpsession.h:
* gst/rtpmanager/rtpsource.c:
* gst/rtpmanager/rtpsource.h:
rtpsource: Don't do probation for RTX sources
Disable probation for RTX sources as packets will arrive very
irregularly and waiting for a second packet usually exceeds the deadline
of the retransmission.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/181
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3112>
2022-10-03 19:58:38 +0300 Sebastian Dröge <sebastian@centricular.com>
* tests/examples/rtp/client-rtpaux.c:
rtp: examples: client-rtpaux: Provide correct caps by payload type and RTX pt map by session
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3112>
2019-01-25 17:04:50 -0500 George Kiagiadakis <george.kiagiadakis@collabora.com>
* tests/check/elements/rtpsession.c:
tests/check/rtpsession: extend test_internal_sources_timeout
to verify that rtx SSRCs do not BYE after timeout
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/360
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3112>
2022-10-03 19:12:55 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtpmanager/rtpsession.c:
* gst/rtpmanager/rtpsource.c:
* gst/rtpmanager/rtpsource.h:
rtpsession: Remember the corresponding media SSRC for RTX sources
This allows timing out the RTX source and sending BYE for it when the
actual media source belonging to it is timed out.
This change only applies to sending sources from this session.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/360
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3112>
2022-10-03 19:20:14 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtpmanager/rtpsession.c:
* gst/rtpmanager/rtpsource.c:
* gst/rtpmanager/rtpsource.h:
rtpsource: Rename rtp_source_update_caps to rtp_source_update_send_caps
To make it clear that this is only used for sending RTP sources.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3112>
2022-10-03 13:48:36 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtpmanager/gstrtpsession.c:
rtpsession: Rename gst_rtp_session_sink_setcaps to gst_rtp_session_setcaps_recv_rtp
to make it clearer that this is for setting receiver caps and to make it
more consistent with gst_rtp_session_setcaps_send_rtp.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3112>
2022-10-06 15:02:22 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: Retry SETUP with non-compliant URL resolution on "Bad Request" and "Not found"
Various RTSP servers/cameras assume base and control URL to be simply
appended instead of being resolved according to the relative URL
resolution algorithm as mandated by the RTSP specification.
To work around this, try using such a non-compliant control URL if the
server didn't like the URL used in the first SETUP request.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1447
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/922
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3127>
2022-10-04 03:57:31 +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/3115>
=== release 1.21.1 ===
2022-10-04 01:14:01 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* docs/gst_plugins_cache.json:

View file

@ -1,7 +1,30 @@
2022-10-23 20:32:35 +0100 Tim-Philipp Müller <tim@centricular.com>
* docs/gst_plugins_cache.json:
* gst/meson.build:
* gst/xingmux/gstxingmux.c:
* gst/xingmux/gstxingmux.h:
* gst/xingmux/meson.build:
* gst/xingmux/plugin.c:
* meson_options.txt:
* tests/check/elements/xingmux.c:
* tests/check/elements/xingmux_testdata.h:
* tests/check/meson.build:
xingmux: move from gst-plugins-ugly to gst-plugins-good
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/415
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3251>
2022-10-04 03:57:31 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3115>
=== release 1.21.1 ===
2022-10-04 01:14:01 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-plugins-ugly.doap:

View file

@ -1,7 +1,14 @@
2022-10-04 03:57:31 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3115>
=== release 1.21.1 ===
2022-10-04 01:14:01 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gst-python.doap:

View file

@ -1,7 +1,71 @@
2022-10-25 09:39:07 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-server.c:
Fix various warnings from gobject-introspection
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3261>
2022-10-15 12:40:04 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp-server/rtsp-auth.c:
* gst/rtsp-server/rtsp-latency-bin.c:
* gst/rtsp-server/rtsp-media-factory.c:
* gst/rtsp-server/rtsp-media.c:
* gst/rtsp-server/rtsp-onvif-media-factory.c:
* gst/rtsp-server/rtsp-server.c:
* gst/rtsp-server/rtsp-stream.c:
rtsp-server: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-14 08:53:18 +0200 Edward Hervey <edward@centricular.com>
* gst/rtsp-server/rtsp-client.h:
rtsp-client: Remove duplicate documentation
Confuses the documentation builder, since it's documented twice it complains
about a missing "Since:" marker whereas it's present in the documentation
comment further down
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3180>
2022-08-19 16:16:26 +0200 Linus Svensson <linussn@axis.com>
* gst/rtsp-server/rtsp-server.c:
rtsp-server: Free client if no connection could be created
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3164>
2022-10-11 14:55:48 +0200 Peter Stensson <petest@axis.com>
* gst/rtsp-server/rtsp-client.h:
rtsp-server: Add since marker for adjust_error_code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3157>
2022-06-21 09:51:55 +0200 Peter Stensson <petest@axis.com>
* gst/rtsp-server/rtsp-client.c:
* gst/rtsp-server/rtsp-client.h:
* gst/rtsp-server/rtsp-media.c:
* tests/check/gst/client.c:
* tests/check/gst/media.c:
rtsp-server: Add support for adjusting request response on pipeline errors
The idea is to give the application the possibility to adjust the error
code when responding to a request. For that purpose the pipeline's bus
messages are emitted to subscribers through a signal handle-message.
The subscribers can then check those messages for errors and adjust
the response error code by overriding the virtual method
adjust_error_code().
Fixes #1294
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2972>
2022-10-04 03:57:31 +0100 Tim-Philipp Müller <tim@centricular.com>
* docs/plugins/gst_plugins_cache.json:
* meson.build:
Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3115>
=== release 1.21.1 ===
2022-10-04 01:14:01 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* docs/plugins/gst_plugins_cache.json:

View file

@ -1,7 +1,22 @@
2022-09-23 17:18:35 +0200 Stéphane Cerveau <scerveau@igalia.com>
* gst-libs/gst/vaapi/gstvaapidecoder_h265.c:
h265parse: fix typo in member of GstH265SPS
Rename sps_extnsion_params to sps_extension_params
Fix comment about vui_parameters_present_flag
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3072>
2022-10-04 03:57:31 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3115>
=== release 1.21.1 ===
2022-10-04 01:14:01 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gstreamer-vaapi.doap:

View file

@ -1,7 +1,389 @@
2022-11-07 09:27:09 -0500 Xavier Claessens <xavier.claessens@collabora.com>
* docs/meson.build:
hotdoc: gst-hotdoc-plugins-scanner is not needed for libraries
Meson >= 0.64.0 does not allow any more to add executables into
hotdoc.generate_doc(..., dependencies: ...) and it should not be needed
any way.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3352>
2020-09-01 16:01:08 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* tests/check/gst/gstinfo.c:
tests: gstinfo: Test set_threshold_from_string's new reset behavior
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/605>
2020-08-22 23:42:40 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* tests/check/gst/gstinfo.c:
tests: gstinfo: Make logging tests pass when GST_DEBUG is set
Use gst_debug_set_threshold_from_string's new reset behavior to undo
GST_DEBUG and ensure the logging tests have a known configuration.
`gst_debug_set_threshold_from_string ("LOG", TRUE)` has the same effect
as `gst_debug_set_threshold_from_string ("", TRUE)` followed by
`gst_debug_set_default_threshold (GST_LEVEL_LOG)`.
Don't bother remembering the default log level set when the test
started. It will get reset by the next test, anyway.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/605>
2020-08-22 22:41:15 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
* gst/gstinfo.c:
info: Reset patterns with set_threshold_from_string
TLDR: Make `gst_set_threshold_from_string ("", TRUE)` reset *all*
threshold settings, including those set by previous invocations of
`gst_debug_set_threshold_from_string`.
The docs say:
@reset: %TRUE to clear all previously-set debug levels before setting
new thresholds
What actually happens is it sets the default threshold to `ERROR`,
leaves the patterns in place and calls
`gst_debug_category_reset_threshold` on each category.
In effect, any category that is matched by a pattern gets reset to that
threshold if the app changed it by directly invoking
`gst_debug_category_set_threshold`. All other categories are reset to
`ERROR`.
In my opinion this parameter currently has little value, as the same
effect can be achieved by including `ERROR` (without a pattern) in the
string, as in `"foo*:WARNING,*bar:INFO,ERROR"`.
What I actually expect it to do is reset *all* threshold settings,
including those set by previous invocations of
`gst_debug_set_threshold_from_string`, starting off with a clean slate
for the patterns provided with the call.
Otherwise there is no API to do this, besides:
- Painfully removing patterns one-by-one via
`gst_debug_unset_threshold_for_name` *if* you know what the patterns
are.
- Adding a `*:FOO` pattern to affect all categories, which makes the
default threshold useless and practically leaks all the old
patterns.
In my opinion this also makes it fit better into the layers of threshold
config, which is:
1. Temporary:
- `gst_debug_category_set_threshold`
- `gst_debug_category_reset_threshold`
2. Patterns:
- `gst_debug_set_threshold_for_name`
- `gst_debug_unset_threshold_for_name`
- `gst_debug_set_threshold_from_string`
- `GST_DEBUG`
3. Default:
- `gst_debug_set_default_threshold`
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/605>
2022-09-21 10:05:05 +0200 Edward Hervey <edward@centricular.com>
* gst/gstpad.c:
gstpad: Avoid race in (un)setting EOS flag on sinkpads
The scenario is the following:
* Thread 1 is pushing an EOS event on a sinkpad
* Thread 2 is pushing a STREAM_START event on the same sinkpad before Thread 1
returns. Note : It starts pushing the event after Thread 1 took the object lock.
There is a potential race between:
* The moment Thread 1 sets the EOS flag once it has finished sending the
event (via store_sticky_event). When it does that it has both the STREAM and
OBJECT lock
* The moment Thread 2 sends the STREAM_START event (Which should release that
EOS status), but removing the EOS flag is only done while holding the OBJECT
lock and not the STREAM_LOCK, which means it could be re-set by Thread 1 before
it then checks again the EOS flag (without the STREAM lock taken).
The EOS flag unsetting by STREAM_START should be done with the STREAM lock
taken, otherwise it will be racy.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1452
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3320>
2022-11-06 18:10:44 +0000 Tim-Philipp Müller <tim@centricular.com>
* tools/gst-inspect.c:
gst-inspect: print doc urls for Rust plugins
We have documentation for them now after all.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3346>
2022-11-05 00:06:25 +0000 Tim-Philipp Müller <tim@centricular.com>
* plugins/elements/gstidentity.c:
identity: fix "handoff" signal docs
The docs list an extra pad argument, which doesn't
match the actual signal function signature. Probably
a copy'n'paste mistake when copying things from fakesink.
Fixes #1546
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3337>
2022-10-24 12:13:14 +0200 Edward Hervey <edward@centricular.com>
* gst/gstpad.c:
gstpad: Fix non-serialized sticky event push
With non-serialized sticky events, such as GST_EVENT_INSTANT_RATE, we both want
to store the event (for later re-linking) *AND* push the event in a non-blocking
way.
We therefore must *not* propagate pending sticky events if the event is "sticky
or serialized" but only if it's "serialized"
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3254>
2022-08-17 22:34:35 -0600 Michael Gruner <michael.gruner@ridgerun.com>
* gst/parse/grammar.y.in:
parse: do delayed set only if the target child was not found and fail otherwise
When using the child proxy notation (child::property=value) it may
happen that the target child does not exist at the time of parsing
(i.e: decodebin creates the encoder according to the contents of the
stream). On this cases, we want to delay the setting of the property
to later, when new elements are added. Previous logic performed a
delayed set even if the target child was found but the property
was not found in it. This should be treated as a failure because,
unlike missing elements, properties should not appear dynamically.
By not failing, typos in property names may go unnoticed to the end
user.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2908>
2022-10-18 18:15:12 +0200 Michael Gruner <michael.gruner@ridgerun.com>
* gst/gstchildproxy.c:
* gst/gstchildproxy.h:
childproxy: Implement a new ::get_child_by_name_recurse() API
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2908>
2022-10-27 15:13:36 +0300 Sebastian Dröge <sebastian@centricular.com>
* libs/gst/base/gstaggregator.c:
* libs/gst/base/gstbaseparse.c:
core/base: Only post latency messages if the latency values have actually changed
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1525
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3282>
2022-10-27 11:18:24 +0200 Edward Hervey <edward@centricular.com>
* plugins/elements/gstconcat.c:
concat: Properly propagate EOS seqnum
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3284>
2022-10-25 09:39:07 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/gsturi.c:
* libs/gst/net/gstnettimepacket.c:
* libs/gst/net/gstntppacket.c:
Fix various warnings from gobject-introspection
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3261>
2022-10-22 01:43:22 +0900 Seungha Yang <seungha@centricular.com>
* tools/gst-inspect.c:
gst-inspect: Hide GST_PARAM_DOC_SHOW_DEFAULT flag
It's known flag but only for documentation purpose. Don't show
its (and user cannot understand) value 0x2000
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3241>
2022-10-22 18:34:14 +0300 Sebastian Dröge <sebastian@centricular.com>
* libs/gst/net/gstnetclientclock.c:
net: Add missing nullable annotation on the name parameter in the net/NTP clock constructors
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3249>
2022-10-22 22:04:57 +0900 Seungha Yang <seungha@centricular.com>
* gst/gstpadtemplate.c:
padtemplate: Fix annotations
gst_caps_replace() does not take ownership of the new caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3248>
2022-10-22 05:29:59 +0900 Seungha Yang <seungha@centricular.com>
* tools/gst-inspect.c:
gst-inspect: Don't print link to doc if it's known to be unavailable
"gst_element_factory_get_skip_documentation() == true" means
documentation was intentionally skipped for the element feature
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3243>
2022-10-21 11:47:11 +0200 François Laignel <fengalin@free.fr>
* gst/gstquery.c:
gst: uri query: fix inconsistent `uri` nullability assertion
Functions `gst_query_set_uri` and `gst_query_set_uri_redirection`
can both set a `NULL` `uri`, as annotated in the documentation.
However the functions bodies reject `NULL` `uri`s.
See [1] for a discussion on that matter.
[1]: https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1134#note_1600988
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3237>
2022-10-21 11:11:13 +0200 Thibault Saunier <tsaunier@igalia.com>
* docs/gst-hotdoc-plugins-scanner.c:
docs: plugins-scanner: Handle interface used for plugin API properties
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3236>
2022-10-18 03:08:44 +0900 Seungha Yang <seungha@centricular.com>
* docs/gst-hotdoc-plugins-scanner.c:
docs: plugin-scanner: Stop updating "long-name" metadata
The "long-name" value can be environment dependent, and it's not
actually used by our documentation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3208>
2022-10-19 22:30:38 +0900 Seungha Yang <seungha@centricular.com>
* gst/parse/grammar.y.in:
parse: Adjust debug log level
That's not an error case at all
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3228>
2022-10-19 13:34:28 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/gstdeviceproviderfactory.c:
* gst/gstelementfactory.c:
{element,deviceprovider}factory: g_object_new() can't ever return NULL
So treat it as the assertion it is.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3226>
2022-10-19 13:33:39 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/gstelementfactory.c:
elementfactory: Handle element factory loading failure in gst_element_factory_create_valist() not as assertion
In gst_element_factory_create_with_properties() it is a normal error
path so let's keep this consistent.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3226>
2022-10-19 13:28:06 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/gstdeviceproviderfactory.c:
* gst/gstelementfactory.c:
* gst/gstmeta.c:
* gst/gstregistry.c:
* gst/gsttaglist.c:
* gst/gstvalue.c:
gst: Use G_TYPE_INVALID instead of 0 for GTypes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3226>
2022-09-15 00:06:49 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* tests/check/pipelines/parse-launch.c:
tests: parse-launch: remove assignment order tests
These tests relied on setting the name of an element twice to verify
that the last one set took precedence, however name is a CONSTRUCT property
and the parser now errors out when such properties are set twice, in
g_object_new_with_properties .
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3026>
2022-09-13 23:16:08 +0200 Mathieu Duponchelle <mathieu@centricular.com>
* gst/parse/grammar.y.in:
* gst/parse/types.h:
* tests/check/pipelines/parse-launch.c:
parse: refactor to make use of gst_element_factory_make_with_properties
Instead of creating the element first, then setting properties and
presets, we gather those and construct the element with the properties.
This means users of gst_parse_launch can now set construct-only
properties.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1380
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3026>
2022-10-18 16:41:36 +0200 Bunio_FH <buniofh@gmail.com>
* gst/gstminiobject.c:
gstminiobject: shares capacity increase
during the MSE (WebKit) tests from Apple suite:
https://hls-streaming.cdn-apple.com/hls_conformance/dist/v1.1/index.html?pretty=true&whitelist=MSE%20Suite
webkit attempts to add a single audio buffer containing ~35.5k frames.
when corresponding GstSamples are pulled buffer is being referenced
more than object capacity allows: 2^15-1. since the case could be considered
malformed a surgical patch is applied to increase the capacity.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3221>
2022-10-15 12:31:17 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/gstatomicqueue.c:
* gst/gstbuffer.c:
* gst/gstbufferpool.c:
* gst/gstbufferpool.h:
* gst/gstelement.c:
* gst/gstevent.c:
* gst/gstinfo.c:
* gst/gstmessage.c:
* gst/gstobject.c:
* gst/gstparse.c:
* gst/gstpipeline.c:
* gst/gstquery.c:
* gst/gststructure.c:
* gst/gsttaglist.c:
* gst/gsttoc.c:
* gst/gsturi.c:
* gst/gstutils.c:
core: Add/fix various annotations
And fix memory leaks/null pointer dereferences in GstUri in error cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-15 12:24:46 +0300 Sebastian Dröge <sebastian@centricular.com>
* libs/gst/check/gstharness.c:
check: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-15 12:20:08 +0300 Sebastian Dröge <sebastian@centricular.com>
* libs/gst/net/gstnetaddressmeta.c:
* libs/gst/net/gstnettimepacket.c:
* libs/gst/net/gstnettimeprovider.c:
* libs/gst/net/gstntppacket.c:
net: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-15 12:18:28 +0300 Sebastian Dröge <sebastian@centricular.com>
* libs/gst/base/gstqueuearray.c:
base: Add/fix annotations in GstQueueArray
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-14 23:48:09 +0300 Sebastian Dröge <sebastian@centricular.com>
* libs/gst/controller/gsttimedvaluecontrolsource.c:
controller: Add/fix various annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3194>
2022-10-07 14:39:47 +0200 Guillaume Desmottes <guillaume.desmottes@onestream.live>
* libs/gst/base/gstaggregator.c:
aggregator: fix input buffering
We need to be able to buffer at least the aggregator latency +
upstream latency, which is the value used to compute the aggregator
deadline.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3138>
2022-10-01 04:58:04 +1000 Jan Schmidt <jan@centricular.com>
* gst/gstbin.c:
gstbin: Use g_queue_clear_full()
Use g_queue_clear_full() to release the child list
instead of iterating over the list twice.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3101>
2022-10-01 04:55:49 +1000 Jan Schmidt <jan@centricular.com>
* gst/gstbin.c:
gstbin: Fix a potential leak in gst_bin_do_deep_add_remove()
If a child element of a bin is unparented while
gst_bin_do_deep_add_remove() is iterating the children,
don't leak a ref to it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3101>
2022-10-01 04:54:20 +1000 Jan Schmidt <jan@centricular.com>
* gst/gstiterator.c:
gstiterator: Don't use gst_object_unref() for a GObject
The owner of a GstIterator is a plain GObject. Don't unref it
with gst_object_unref(), or it will be logged in tracer
info incorrectly.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3101>
2022-10-04 03:57:31 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3115>
=== release 1.21.1 ===
2022-10-04 01:14:01 +0100 Tim-Philipp Müller <tim@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* gstreamer.doap: