From d51b091cd99d08b689563266a078f33345817a45 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Tim-Philipp=20M=C3=BCller?= Date: Wed, 3 Nov 2021 15:43:32 +0000 Subject: [PATCH] Update ChangeLogs for 1.19.3 --- subprojects/gst-devtools/ChangeLog | 282 ++++ subprojects/gst-editing-services/ChangeLog | 152 ++ subprojects/gst-libav/ChangeLog | 48 + subprojects/gst-omx/ChangeLog | 42 + subprojects/gst-plugins-bad/ChangeLog | 2106 +++++++++++++++++++++++++++- subprojects/gst-plugins-base/ChangeLog | 774 ++++++++++ subprojects/gst-plugins-good/ChangeLog | 537 +++++++ subprojects/gst-plugins-ugly/ChangeLog | 137 ++ subprojects/gst-python/ChangeLog | 85 ++ subprojects/gst-rtsp-server/ChangeLog | 137 ++ subprojects/gstreamer-vaapi/ChangeLog | 49 + subprojects/gstreamer/ChangeLog | 367 +++++ 12 files changed, 4704 insertions(+), 12 deletions(-) diff --git a/subprojects/gst-devtools/ChangeLog b/subprojects/gst-devtools/ChangeLog index c748669..3ed53b9 100644 --- a/subprojects/gst-devtools/ChangeLog +++ b/subprojects/gst-devtools/ChangeLog @@ -1,3 +1,285 @@ +2021-10-30 16:22:39 +0300 Sebastian Dröge + + * validate/tests/launcher_tests/foreach/flow-expectations/log-sink-sink-expected: + * validate/tests/launcher_tests/simple_repeat/flow-expectations/log-sink-sink-expected: + video: Fix order of new video formats + Part-of: + +2021-10-30 00:34:35 +0100 Tim-Philipp Müller + + * validate/gst/validate/gst-validate-runner.c: + Use g_pattern_spec_match() instead of g_pattern_match() which is deprecated since glib 2.70 + Fixes compiler warnings with glib 2.70 + Part-of: + +2021-10-25 11:37:45 +0100 Tim-Philipp Müller + + * meson.build: + meson: require matching GStreamer dep versions for unstable development releases + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929 + Part-of: + +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * validate/launcher/meson.build: + * validate/tests/check/meson.build: + * validate/tests/launcher_tests/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * validate/tests/meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-17 11:39:57 +0100 Tim-Philipp Müller + + * validate/tools/meson.build: + tools: Define G_LOG_DOMAIN for various tools as well + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2021-10-12 15:52:48 -0300 Thibault Saunier + + * docs/meson.build: + meson: Streamline the way we detect when to build documentation + Part-of: + +2021-10-02 11:54:00 -0300 Thibault Saunier + + * validate/gst/validate/meson.build: + validate:build: Disable static building validate tracer + It introduce duplication of symbols and we need to rework the way we implement it + Part-of: + +2020-06-27 00:39:00 -0400 Thibault Saunier + + * meson.build: + * validate/gst/validate/meson.build: + meson: List libraries and their corresponding gir definition + Introduces a `libraries` variable that contains all libraries in a + list with the following format: + ``` meson + libraries = [ + [pkg_name, { + 'lib': library_object + 'gir': [ {full gir definition in a dict } ] + ], + .... + ] + ``` + It therefore refactors the way we build the gir so that we can reuse the + same information to build them against 'gstreamer-full' in gst-build + when linking statically + Part-of: + +2020-06-27 00:37:39 -0400 Thibault Saunier + + * docs/meson.build: + * validate/gst/validate/meson.build: + meson: Mark files as files() + Making it more robust and future proof + And fix issues that it creates + Part-of: + +2021-10-12 18:05:52 -0300 Thibault Saunier + + * validate/launcher/utils.py: + validate:launcher: Reindent utils.py + Part-of: + +2021-10-12 17:59:03 -0300 Thibault Saunier + + * validate/launcher/utils.py: + validate:launcher: Check if the running MR will close a referenced issue + Part-of: + +2021-10-12 17:19:46 -0300 Thibault Saunier + + * validate/launcher/testsuites/check.py: + * validate/launcher/utils.py: + ci: Check for closed bugs for unit tests too + And add FIXMEs for test that should have been reenabled but haven't, + we will reenable them when CI is stable enough! + Part-of: + +2021-10-12 17:14:49 -0300 Thibault Saunier + + * validate/launcher/testsuites/check.py: + tests: Move all unit tests issues to the GStreamer monorepo + Part-of: + +2021-10-13 11:09:20 -0300 Thibault Saunier + + * validate/launcher/testsuites/check.py: + Revert "tests: Blacklist some tests that recently failed" + This reverts commit 9f13ee5b0eada5ca0997e59be2ef46d5c2dd1dcd as + it was merge as part of the bigger CI gardening MR + https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1113 + Part-of: + +2021-10-13 00:17:27 -0300 Thibault Saunier + + * validate/launcher/apps/gstcheck.py: + * validate/launcher/testsuites/check.py: + ges:test: Document some GES failures + Namely races in: + * check.gst-editing-services.edit_while_seeked_with_stop_it + * check.gst-editing-services.check_layer_activness_gaps_it + See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/803 + and https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/804 + Part-of: + +2021-10-13 00:06:34 -0300 Thibault Saunier + + * validate/launcher/apps/gstcheck.py: + validate:launcher: Avoid spamming terminal when inspecting unit tests + And redirect GStreamer logs when necessary + Part-of: + +2021-10-12 23:05:20 -0300 Thibault Saunier + + * validate/launcher/apps/gstcheck.py: + * validate/launcher/baseclasses.py: + validate:launcher: Run validate unit tests as GstValidate tests + So we have all the features and we can properly document known issue + for them + Part-of: + +2021-10-07 19:28:41 +0900 Seungha Yang + + * validate/gst/validate/flow/gstvalidateflow.c: + validate: flow: Fix for line-ending mismatch issue on Windows + Unlike POSIX system, Windows distinguishes "w" and "wb" and when + a file is opened with text mode, OS will translate \n into \r\n. + Part-of: + +2021-09-25 23:40:31 -0300 Thibault Saunier + + * validate/launcher/testsuites/check.py: + tests: Blacklist some tests that recently failed + See: + - https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/739 + - https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/740 + Part-of: + +2021-10-12 10:10:05 -0300 Thibault Saunier + + * validate/launcher/testsuites/check.py: + tests: Mark check.gstreamer.gst_gstbin.test_watch_for_state_change flaky + See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/778 + Part-of: + +2021-10-11 12:03:02 -0300 Thibault Saunier + + * validate/launcher/testsuites/check.py: + ges:tests: Mark check.gst-plugins-base.validate.giosrc.read-growing-file as flaky + See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/776 + Part-of: + +2021-10-11 11:45:50 -0300 Thibault Saunier + + * validate/launcher/testsuites/check.py: + ges:tests: Mark ges 'check_edit_in_frames_with_framerate_mistmatch as flaky + See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/775 + Part-of: + +2021-10-11 11:05:36 -0300 Thibault Saunier + + * validate/launcher/testsuites/check.py: + tests:webrtcbin: Make known flaky webrtcbin as such + See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/773 + Part-of: + +2021-10-08 12:09:47 -0300 Thibault Saunier + + * validate/launcher/baseclasses.py: + validate:launcher: Do not dump on failure test we will retry + Part-of: + +2021-10-08 10:44:50 -0300 Thibault Saunier + + * validate/launcher/testsuites/check.py: + tests: Blacklist tests that are currently producing many CI failures + Part-of: + +2021-10-08 09:09:21 -0300 Thibault Saunier + + * validate/launcher/baseclasses.py: + validate:launcher: Allow more flexible handling of flaky tests + And retry twice flaky tests + Part-of: + +2021-10-07 21:28:12 -0300 Thibault Saunier + + * validate/launcher/baseclasses.py: + validate:launcher: Fix progress reporting with --n-runs + Part-of: + +2021-10-07 19:42:10 -0300 Thibault Saunier + + * validate/launcher/baseclasses.py: + validate:launcher: Support retry on failure when using --n-runs + Part-of: + +2021-10-07 19:41:07 -0300 Thibault Saunier + + * validate/launcher/baseclasses.py: + validate:launcher: Fix potential invalid index access + Part-of: + +2021-10-06 17:21:58 -0300 Thibault Saunier + + * validate/launcher/reporters.py: + validate:launcher: Fix adding logs to xunit + Part-of: + +2021-10-05 18:50:21 -0300 Thibault Saunier + + * validate/gst/validate/gst-validate-scenario.c: + validate:scenario: Allow waiting signal searching for element factory + Part-of: + +2021-10-02 11:58:56 -0300 Thibault Saunier + + * validate/launcher/main.py: + validate:launcher: Sync asset only when passing --sync + Part-of: + +2021-09-28 15:45:19 -0400 Xavier Claessens + + * .arcconfig: + Delete .arcconfig files + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + Part-of: + === release 1.19.2 === 2021-09-23 01:36:10 +0100 Tim-Philipp Müller diff --git a/subprojects/gst-editing-services/ChangeLog b/subprojects/gst-editing-services/ChangeLog index 165f1ca..1a64b1e 100644 --- a/subprojects/gst-editing-services/ChangeLog +++ b/subprojects/gst-editing-services/ChangeLog @@ -1,3 +1,155 @@ +2021-10-25 11:37:45 +0100 Tim-Philipp Müller + + * meson.build: + meson: require matching GStreamer dep versions for unstable development releases + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929 + Part-of: + +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * tests/check/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * docs/meson.build: + * tests/check/meson.build: + * tools/meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-17 11:39:57 +0100 Tim-Philipp Müller + + * tools/meson.build: + tools: Define G_LOG_DOMAIN for various tools as well + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2021-10-12 23:25:40 -0300 Thibault Saunier + + * docs/sitemap.txt: + * ges/meson.build: + ges:docs: Ignore GESImageSource as it is plain useless now + Part-of: + +2021-10-12 15:52:48 -0300 Thibault Saunier + + * docs/meson.build: + meson: Streamline the way we detect when to build documentation + Part-of: + +2021-09-13 18:33:01 -0300 Thibault Saunier + + * docs/meson.build: + * meson.build: + ges:build: Disable python modules when statically building + Introspection fails otherwise + Part-of: + +2020-06-27 00:39:00 -0400 Thibault Saunier + + * docs/meson.build: + * ges/meson.build: + * meson.build: + meson: List libraries and their corresponding gir definition + Introduces a `libraries` variable that contains all libraries in a + list with the following format: + ``` meson + libraries = [ + [pkg_name, { + 'lib': library_object + 'gir': [ {full gir definition in a dict } ] + ], + .... + ] + ``` + It therefore refactors the way we build the gir so that we can reuse the + same information to build them against 'gstreamer-full' in gst-build + when linking statically + Part-of: + +2021-10-13 00:07:20 -0300 Thibault Saunier + + * tests/check/python/common.py: + * tests/check/python/test_assets.py: + ges:tests: Create shorter assets to avoid timeouts + And use a simple GStreamer pipeline as testsrcbin with GstTranscoder + doesn't let us easily set the framerate of the source and we end up + having videorate dropping frames leading to the rendered file having + an unprecise duration. + This should fix races with `check.gst-editing-services.pythontests.pyunittest.python.test_assets.TestTimeline.test_reload_asset` + Part-of: + +2021-10-13 02:58:29 +0530 Nirbheek Chauhan + + * meson_options.txt: + meson: Remove duplicate definition of 'examples' option + This is a hard error starting with Meson 0.60.0rc1, due to + https://github.com/mesonbuild/meson/pull/9184#issuecomment-941603358 + The upstream change might get reverted before release, but we should + of course fix this regardless. + Part-of: + +2021-09-30 19:03:40 -0300 Thibault Saunier + + * ges/ges-uri-asset.c: + ges:uri-asset: Ignore streams with no ID + Since 0d95d9258b97 we respect the asset stream-id in `GESUriSource` so + we can not work with unknown or broken stream ID in the assets. + We just ignore them, warning about it and we should fix that in + demuxer so they don't expose pad without providing a stream id for them. + Part-of: + +2021-09-28 15:45:19 -0400 Xavier Claessens + + * .arcconfig: + Delete .arcconfig files + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-27 09:24:16 +0300 Sebastian Dröge + + * ges/ges-command-line-formatter.c: + commandline-formatter: Fix version documentation for ges_command_line_formatter_get_help() + Part-of: + +2021-09-25 16:34:49 +0300 Sebastian Dröge + + * ges/ges-clip-asset.c: + * ges/ges-command-line-formatter.c: + * ges/ges-effect-clip.c: + * ges/ges-meta-container.c: + * ges/ges-track-element-asset.c: + ges: Add a few missing annotations + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + Part-of: + === release 1.19.2 === 2021-09-23 01:35:39 +0100 Tim-Philipp Müller diff --git a/subprojects/gst-libav/ChangeLog b/subprojects/gst-libav/ChangeLog index 164e891..1b27bea2 100644 --- a/subprojects/gst-libav/ChangeLog +++ b/subprojects/gst-libav/ChangeLog @@ -1,3 +1,51 @@ +2021-10-25 11:37:45 +0100 Tim-Philipp Müller + + * meson.build: + meson: require matching GStreamer dep versions for unstable development releases + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929 + Part-of: + +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * tests/check/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * docs/meson.build: + * tests/check/meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + Part-of: + === release 1.19.2 === 2021-09-23 01:35:17 +0100 Tim-Philipp Müller diff --git a/subprojects/gst-omx/ChangeLog b/subprojects/gst-omx/ChangeLog index 43c8c6a..af1e4e4 100644 --- a/subprojects/gst-omx/ChangeLog +++ b/subprojects/gst-omx/ChangeLog @@ -1,3 +1,45 @@ +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * tests/check/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * docs/meson.build: + * meson.build: + * tests/check/meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + Part-of: + === release 1.19.2 === 2021-09-23 01:36:02 +0100 Tim-Philipp Müller diff --git a/subprojects/gst-plugins-bad/ChangeLog b/subprojects/gst-plugins-bad/ChangeLog index 944e7f8..f471789 100644 --- a/subprojects/gst-plugins-bad/ChangeLog +++ b/subprojects/gst-plugins-bad/ChangeLog @@ -1,3 +1,2096 @@ +2021-11-02 09:40:43 -0400 Nicolas Dufresne + + * gst-libs/gst/codecs/gstmpeg2decoder.c: + codecs: mpeg2: Drain before a new_sequence get signalled + The decoder may need to re-allocate the output buffer, it is easier if all + pictured have been outputed. + Part-of: + +2021-04-08 16:24:49 -0300 Daniel Almeida + + * sys/v4l2codecs/gstv4l2codecmpeg2dec.c: + v4l2codecs: gstv4l2codecsmpeg2dec: implement a render delay + The v4l2 backend support delayed output for performance reasons. + It is then possible to use render delays to queue multiple requests + simultaneously, thus increasing performance. + Part-of: + +2021-04-08 16:07:23 -0300 Daniel Almeida + + * gst-libs/gst/codecs/gstmpeg2decoder.c: + * gst-libs/gst/codecs/gstmpeg2decoder.h: + codecs: gstmpeg2decoder: add support for render delay + Some decoding APIs support delayed output for performance reasons. + One example would be to request decoding for multiple frames and + then query for the oldest frame in the output queue. + This also increases throughput for transcoding and improves seek + performance when supported by the underlying backend. + Introduce support in the mpeg2 base class, so that backends that + support render delays can actually implement it. + Part-of: + +2021-04-06 16:40:28 -0300 Daniel Almeida + + * sys/v4l2codecs/gstv4l2codecmpeg2dec.c: + * sys/v4l2codecs/gstv4l2codecmpeg2dec.h: + * sys/v4l2codecs/meson.build: + * sys/v4l2codecs/plugin.c: + v4l2codecs: Implement a MPEG2 V4L2 decoder element + Implement a MPEG2 V4L2 decoder element based on the previous h264 + implementation. + Part-of: + +2021-04-06 16:42:54 -0300 Daniel Almeida + + * sys/v4l2codecs/linux/videodev2.h: + v4l2codecs: mpeg2: update to the new uAPI + The mpeg2 stateless api has undergone changes as it is being + destage. Update the v4l2-controls header to match. + Part-of: + +2021-03-26 15:52:21 -0300 Daniel Almeida + + * sys/va/gstvampeg2dec.c: + sys: va: GstVaMpeg2Dec: use slice sc_offset and size + Seeing as how GstMpeg2Slice will now record the start code offset + as well as its size with the above field taken into account, the + manual computation in this class is not needed. + Remove it. + Part-of: + +2021-03-26 15:31:51 -0300 Daniel Almeida + + * gst-libs/gst/codecs/gstmpeg2decoder.c: + * gst-libs/gst/codecs/gstmpeg2picture.h: + codecs: GstMpeg2Slice: add field for sc_offset and size + Downstream might need the start code offset when decoding. + Previously this computation would be scattered in multiple sites. This + is error prone, so move it to the base class. Subclasses can access + slice->sc_offset directly without computing the address themselves + knowing that the size will also take the start code into account. + Part-of: + +2021-10-20 12:11:49 +0100 James Cowgill + + * sys/v4l2codecs/gstv4l2codech264dec.c: + * sys/v4l2codecs/gstv4l2codecvp8dec.c: + v4l2codecs: Handle allocator creation failure + If `VIDIOC_REQBUFS` doesn't return enough buffers the allocator creation + function can fail and return `NULL`. Handle this by generating an error + and returning instead of segfaulting. + Part-of: + +2021-10-20 12:08:49 +0100 James Cowgill + + * sys/v4l2codecs/gstv4l2codecallocator.c: + v4l2codecs: Fix segfault when destroying non-detached allocator + The GstV4l2CodecAllocator dispose function clears `self->decoder` but + the finalize function then tries to use it if the allocator has no been + detached yet. + Fix by detaching in the dispose function before we clear + `self->decoder`. + Part-of: + +2021-10-29 16:08:20 -0400 Julian Bouzas + + * gst/codecalpha/gstalphacombine.c: + alphacombine: use the same allocation query data for both decoders + This allows downstream elements to set allocation query parameters for both + decoders, which should be always the same. + Part-of: + +2021-10-31 13:43:40 +0530 Nirbheek Chauhan + + * sys/applemedia/vtdec.c: + * sys/applemedia/vtenc.c: + applemedia: Add ARGB64_BE, RGBA64_LE support to vtenc/vtdec + We can add this now that ARGB64_BE videoconvert support was added in: + https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1247 + Part-of: + +2021-10-20 02:19:33 +0530 Nirbheek Chauhan + + * sys/applemedia/vtenc.c: + * sys/applemedia/vtenc.h: + vtenc: Add FieldDetail properties for interlaced input + Standard interlace handling: + * If we have interlace-mode=interleaved and the field order, we just + set it when creating the session + * If we have interlace-mode=(interleaved|mixed) and no field order, we + set the field order on the first buffer + The encoder session does not support changing the FieldDetail after it + has started encoding frames, so we cannot support mixed streams + correctly. + Part-of: + +2021-10-20 01:49:29 +0530 Nirbheek Chauhan + + * sys/applemedia/vtenc.c: + * sys/applemedia/vtenc.h: + vtenc: Add a property to forcibly ignore alpha values + This PropertyKey is not documented in any headers anywhere, so we need + to define it ourselves. + Part-of: + +2021-10-19 23:53:39 +0530 Nirbheek Chauhan + + * sys/applemedia/vtenc.c: + vtenc: Set colorimetry information + It looks like VideoToolbox doesn't support all our colorimetries. + Part-of: + +2021-10-17 18:54:10 +0530 Nirbheek Chauhan + + * sys/applemedia/coremediabuffer.h: + * sys/applemedia/vtdec.c: + * sys/applemedia/vtenc.c: + * sys/applemedia/vtenc.h: + * sys/applemedia/vtutil.c: + * sys/applemedia/vtutil.h: + applemedia: Add ProRes support to vtenc and vtdec + For vtdec, we continue to prefer NV12; else we pick whatever + downstream wants. In the special case where we're decoding 10-bit or + 12-bit ProRes formats, we will prefer AYUV64. + Part-of: + +2021-10-17 19:19:15 +0530 Nirbheek Chauhan + + * sys/applemedia/vtenc.c: + vtenc: Improve error reporting in chain function + Otherwise it is quite difficult to figure out why the chain function + failed. Also assert not reached for case statements that should not be + hit. + Part-of: + +2021-10-14 12:14:49 +0530 Nirbheek Chauhan + + * sys/applemedia/vtdec.c: + vtdec: Remove dead code in switch statement + We never advertise these formats, so these cases will never be hit. + Part-of: + +2021-10-30 16:22:39 +0300 Sebastian Dröge + + * docs/plugins/gst_plugins_cache.json: + video: Fix order of new video formats + Part-of: + +2021-10-30 00:58:55 +0100 Tim-Philipp Müller + + * gst/mpegtsmux/gstatscmux.c: + * gst/mpegtsmux/gstbasetsmux.c: + * gst/mpegtsmux/gstmpegtsmux.c: + Couple more g_memdup() -> g_memdup2() fixes + Fixes deprecation warnings with newer GLib versions. + Part-of: + +2021-10-30 00:52:42 +0100 Tim-Philipp Müller + + * ext/dtls/gstdtlssrtpenc.c: + dtls: don't use deprecated g_binding_get_source() with newer GLib versions + Part-of: + +2021-10-30 01:41:51 +0900 Seungha Yang + + * gst-libs/gst/codecs/gsth265decoder.c: + codecs: h265decoder: Fix per-slice leak + As documented, slice header parsed via gst_h265_parser_parse_slice_hdr() + should be cleared, otherwise it would result in memory leak. + Part-of: + +2021-10-26 16:05:24 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvah264dec.c: + * sys/va/gstvah265dec.c: + * sys/va/gstvampeg2dec.c: + * sys/va/gstvavp8dec.c: + * sys/va/gstvavp9dec.c: + va: Delay decoders downstream negotiation. + Delay decoders downstream negotiation just before an output frame + needs to be allocated. + This is required, are least for H.264 and H.265 decoders, since + codec_data might trigger a new sequence before finishing upstream + negotiation, and sink pad caps need to set before setting source pad + caps, particularly to forward HDR fields. The other decoders are + changed too in order to keep the same structure among them. + Part-of: + +2021-10-26 09:41:53 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvabasedec.c: + vabasedec: Move warning message to decoder's category. + Part-of: + +2021-10-26 09:28:10 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvaav1dec.c: + * sys/va/gstvabasedec.h: + * sys/va/gstvah264dec.c: + * sys/va/gstvah265dec.c: + * sys/va/gstvampeg2dec.c: + * sys/va/gstvavp8dec.c: + * sys/va/gstvavp9dec.c: + va: Move common variable need_negotiation to GstBaseDec. + This is a common variable to all decoders, so it's sound to move it to + the base helper. + Part-of: + +2021-10-26 09:23:42 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvaav1dec.c: + * sys/va/gstvabasedec.c: + * sys/va/gstvabasedec.h: + * sys/va/gstvah264dec.c: + * sys/va/gstvah265dec.c: + * sys/va/gstvampeg2dec.c: + * sys/va/gstvavp8dec.c: + * sys/va/gstvavp9dec.c: + va: Move back parent_object to each element. + Using GstBaseDec hack to access the parent_object of each element in + the element itself is a bit fragile. It would be better to keep its + own parent object as the usual global variable. It would make it + resistant to code changes. + The GstBaseDec macro to access the parent object now it's internal to + base decoder. + Part-of: + +2021-10-23 00:44:57 +0200 Piotrek Brzeziński + + * docs/plugins/gst_plugins_cache.json: + video-format: Add support for ARGB64 LE/BE and similar variants + Co-authored-by: Sebastian Dröge + Part-of: + +2021-09-26 21:34:30 +0200 Heiko Becker + + * ext/neon/meson.build: + neon: Allow building against neon 0.32.x + No API/ABI changes: https://github.com/notroj/neon/blob/0.32.0/NEWS#L3 + Part-of: + +2021-10-25 11:37:45 +0100 Tim-Philipp Müller + + * meson.build: + meson: require matching GStreamer dep versions for unstable development releases + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929 + Part-of: + +2021-10-27 00:20:57 +0200 Mathieu Duponchelle + + * ext/webrtc/gstwebrtcbin.c: + * ext/webrtc/webrtctransceiver.c: + webrtcbin: fix check_negotiation computing on caps event + It seems logical that check_negotiation be true if received_caps + is *not* equal to the new caps. + Also clean up handling of transceivers' ssrc events, as this + patch triggered a leaky code path. + Part-of: + +2021-10-23 01:54:05 +0200 Mathieu Duponchelle + + * ext/webrtc/gstwebrtcbin.c: + webrtcbin: connect input stream when receiving caps + .. if a current direction has already been set + When `webrtcbin` has created an offer based on codec_preferences, + it might not have received caps on its sinkpads by the time a + remote description is set, in which case we want to connect the + input stream upon actual reception of the caps instead. + Part-of: + +2021-10-18 15:23:48 +0200 Mathieu Duponchelle + + * ext/webrtc/gstwebrtcbin.c: + webrtcbin: consider pads with trans->codec_preferences ready + .. when determining whether we can emit on-negotiation-needed + Part-of: + +2021-10-28 17:41:54 +0100 Tim-Philipp Müller + + * gst/videoparsers/gstmpeg4videoparse.c: + mpeg4videoparse: fix criticals trying to insert configs that don't exist yet + With mpeg4videoparse drop=false config-interval=N|-1 we might be + trying to insert a config before we have actually received one, + in which case we'll try to map a NULL buffer which will generate + lots of criticals. + Fixes #855 + Part-of: + +2021-10-20 17:46:10 +0800 Mengkejiergeli Ba + + * sys/msdk/gstmsdkh265enc.c: + msdk: Insert hdr sei at hevc encoder + There are two HDR SEIs defined in spec: mastering display colour volume and + content light level. Add insertion of HDR SEIs when they are available + during encoding. + Part-of: + +2021-10-21 16:12:06 +0100 Rob Agar + + * ext/webrtc/gstwebrtcbin.c: + webrtcbin: Also check data channel transport when collating connection state + https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/838 + Part-of: + +2021-10-27 11:54:09 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Color fixation will choose othercaps' structure. + gst_va_fixate_format() will iterate all othercaps' structures to find + the one with less information lost at color conversion. If a structure + with same color format is found, the iteration stops. It's like a + smart truncation. Then, this function also will choose the caps + feature. + Later this structure is used fixate its size and no further truncation + is needed. + Don't intersect at fixate, since it kills possible resizing. + Part-of: + +2021-10-27 11:53:28 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Ignore direction at orientation swapping. + It doesn't matter the direction of the negotiation. + Part-of: + +2021-10-27 10:31:04 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Consider video orientation for border calculation. + Part-of: + +2021-10-06 16:00:56 +0200 Timo Wischer + + * ext/avtp/gstavtpsrc.c: + avtpsrc: Retry receive with same buffer size + Without this patch in case of a retry recv() will be called with a + negative size argument. + Signed-off-by: Timo Wischer + Part-of: + +2021-10-26 16:00:36 +0200 Mathieu Duponchelle + + * ext/closedcaption/gstcccombiner.c: + cccombiner: fix default value when installing schedule property + Part-of: + +2021-10-26 15:58:26 +0200 Mathieu Duponchelle + + * ext/closedcaption/gstcccombiner.c: + cccombiner: fix emission of selected-samples in one case + Detected while reading the code, cccombiner must set + self->current_video_buffer to NULL *after* emitting selected-samples + in order for the application to get a useful return when peeking + the next video sample. + Part-of: + +2021-10-26 01:09:58 +0200 Mathieu Duponchelle + + * ext/closedcaption/gstcccombiner.c: + * tests/check/elements/cccombiner.c: + cccombiner: stop attaching caption buffers when caption pad has gone EOS + When schedule is true (as is the case by default), we insert padding + when no caption data is present in the schedule queue, and previously + weren't checking whether the caption pad had gone EOS, leading to + infinite scheduling of padding after EOS on the caption pad. + Rectify that by adding a "drain" parameter to dequeue_caption() + In addition, update the captions_and_eos test to push valid cc_data + in: without this cccombiner was attaching padding buffers it had + generated itself, and with that patch would now stop attaching + said padding to the second buffer. By pushing valid, non-padding + cc_data we ensure a caption buffer is indeed attached to the first + and second video buffers. + Part-of: + +2021-10-20 13:19:00 +0200 Mats Lindestam + + * ext/curl/gstcurlsshsink.c: + * ext/curl/gstcurlsshsink.h: + * tests/check/elements/curlsftpsink.c: + curlsftpsink: Add support for sha256 fingerprint + Part-of: + +2021-10-21 11:09:07 +0800 Mengkejiergeli Ba + + * sys/msdk/gstmsdkvpp.c: + msdkvpp: Add 12bit formats + Add 12bit formats for different chroma samplings at sink pad and + src pad, including P012_LE, Y212_LE and Y412_LE. + Part-of: + +2021-10-25 18:52:24 +0200 Floris + + * ext/gs/README.md: + gs: update README to use fixed versions + Use specific versions, instead of relying on 'master'. + Part-of: + +2021-10-25 18:47:46 +0200 Floris + + * ext/gs/gstgssrc.cpp: + gssrc: use default blocksize + The blocksize is set to 3 * 1024 * 1024 / 2, which is the default download_size of Google-Cloud-CPP. + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/846 + Part-of: + +2021-10-25 16:53:14 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvah265dec.c: + vah265dec: Fix end_picture() vmethod. + Since commit 88437a9c the signature of h265decoder's end_picture() + changed to return GstFlowReturn, but vah265dec was not updated. + This commit fixes this regression. + Part-of: + +2021-10-12 17:32:30 +0800 Mengkejiergeli Ba + + * sys/va/gstvaallocator.c: + va: allocator: Fix possible memory leaks + At gst_va_dmabuf_allocator_setup_buffer_full, static code analysis tool + does not know number of objects in descriptor is always larger than 0 if + export_surface_to_dmabuf succeeds. Thus, the tool will assume buf is + allocated with mem but not released when desc.num_objects equals to 0 + and raise a mem leak issue. + For gst_va_dambuf_memories_setup, we should also inform the tool that + n_planes will be larger than 0 by checking the value at very beginning. + Then, the defect similar to above will not be raised during static analysis. + Part-of: + +2021-10-25 01:02:28 +0100 Tim-Philipp Müller + + * po/af.po: + * po/ast.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/fur.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/ky.po: + * po/lt.po: + * po/lv.po: + * po/mt.po: + * po/nb.po: + * po/nl.po: + * po/or.po: + * po/pl.po: + * po/pt_BR.po: + * po/ro.po: + * po/ru.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + * po/zh_TW.po: + gst-plugins-bad: update translations + Fixes #656 + Part-of: + +2021-10-23 19:26:06 +0200 Andoni Morales Alastruey + + * gst-libs/gst/d3d11/gstd3d11device.cpp: + d3d11: add support for new debug layer versions + Part-of: + +2021-01-20 12:04:48 +0100 Rafał Dzięgiel + + * ext/assrender/gstassrender.c: + assrender: Add "application/vnd.ms-opentype" mimetype detection + The "application/vnd.ms-opentype" mimetype is commonly used in many fonts attached in the matroska videos. + Assrender should treat it as compatible without the need of parsing the file extension. + Part-of: + +2021-10-22 18:13:46 +0200 Stéphane Cerveau + + * ext/openjpeg/meson.build: + wrap: libopenjp2: use patch version 7 + Add support for win32 build + Disable the binary to avoid the thirdparty + dependency to be checked. + Part-of: + +2021-10-21 23:35:41 -0300 Martin Reboredo + + * gst-libs/gst/vulkan/gstvkutils.c: + * gst-libs/gst/vulkan/gstvkutils.h: + gstvulkan: Constify code in create_shader + Part-of: + +2021-10-21 00:33:06 +0100 Tim-Philipp Müller + + * meson_options.txt: + meson: default to gpl=disabled for gst-plugins-bad and -ugly + This will only affect individual/tarball module builds, as the + options yield to the parent project which was set to gpl=disabled + by default already. We kept it as auto in the original commit + to accommodate the need to update cerbero as well, which had to + be done separately after the initial commit. + Part-of: + +2021-01-20 13:38:03 +0100 Rafał Dzięgiel + + * ext/assrender/gstassrender.c: + assrender: Do not iterate over mimetypes without filename + No point spending time on iterating and comparing strings if we + are going to reject the value due to missing filename anyway. + Part-of: + +2021-01-20 11:46:17 +0100 Rafał Dzięgiel + + * ext/assrender/gstassrender.c: + assrender: Fix mimetype detection + Previously gst_structure_has_name was used to get a string to compare with supported mimetypes. + This is incorrect as above function returns a user defined structure name which is + not the structure mimetype value. + Part-of: + +2021-10-21 19:17:18 +1100 Matthew Waters + + * gst-libs/gst/vulkan/gstvkdebug.c: + * gst-libs/gst/vulkan/gstvkdebug.h: + * gst-libs/gst/vulkan/gstvkswapper.c: + vulkan/swapper: add some debug logging for surface size and present modes + Part-of: + +2021-10-21 00:28:25 +0200 Jan Alexander Steffens (heftig) + + * gst/interlace/gstinterlace.c: + interlace: Replace custom lock with object lock + The object lock is sufficient for the task of protecting against + object property data races. + Part-of: + +2021-10-21 00:37:47 +0200 Jan Alexander Steffens (heftig) + + * gst/interlace/gstinterlace.c: + interlace: Protect all properties with the lock + Avoid blatant data races here. + Part-of: + +2021-10-21 00:36:47 +0200 Jan Alexander Steffens (heftig) + + * gst/interlace/gstinterlace.c: + interlace: Reset src_fps_d together with src_fps_n + These fields belong together. + Part-of: + +2021-10-21 00:35:00 +0200 Jan Alexander Steffens (heftig) + + * gst/interlace/gstinterlace.c: + interlace: Clear stored_fields together with stored_frame + These fields belong together. + Part-of: + +2021-10-21 00:31:24 +0200 Jan Alexander Steffens (heftig) + + * gst/interlace/gstinterlace.c: + interlace: Reset after changing state to READY + Trying to reset before the pads have been deactivated races with the + streaming thread. There was also a buggy buffer clear leaving a dangling + `stored_frame` pointer around. Use `gst_interlace_reset` so this happens + properly. + Part-of: + +2021-10-20 14:34:42 +0200 Mathieu Duponchelle + + * docs/plugins/gst_plugins_cache.json: + * sys/nvcodec/gstnvenc.c: + * sys/nvcodec/gstnvh264enc.c: + nvh264enc: add constrained-baseline to the caps profiles + In practice, when baseline is requested from the encoder it + produces constrained baseline, and it is already reflected + in the profile-iop flags. + Part-of: + +2021-10-21 01:47:07 +0900 Seungha Yang + + * sys/mediafoundation/gstmfplatloader.c: + * sys/mediafoundation/meson.build: + mediafoundation: Fix for UWP build + We don't support D3D11 interop for UWP because some APIs + (specifically MFTEnum2) are desktop application only. + However, the code for symbol loading is commonly used by both UWP and WIN32. + Just link GModule unconditionally which is UWP compatible, and simply don't + try to load any library/symbol dynamically when D3D11 interop is unavailable. + Part-of: + +2021-10-20 00:54:26 +0100 Tim-Philipp Müller + + * REQUIREMENTS: + * docs/plugins/gst_plugins_cache.json: + * ext/libmms/gstmms.c: + * ext/libmms/gstmms.h: + * ext/libmms/meson.build: + * ext/meson.build: + * meson_options.txt: + mms: remove mmssrc plugin + Doubtful that anyone still needs that or there are even + any streams left out there. + MMS was deprecated in 2003 (in favour of RTSP) and support for + it was dropped with Microsoft Media Services 2008. + https://en.wikipedia.org/wiki/Microsoft_Media_Server + https://sdp.ppona.com/news2008.html + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/821 + Part-of: + +2021-10-19 18:18:25 +0100 Tim-Philipp Müller + + * sys/msdk/meson.build: + * sys/va/meson.build: + meson: va, msdk: simplify dep.get_variable() use + With recent Meson versions we can just write dep.get_variable('foo') + instead of dep.get_variable(pkgconfig: 'driverdir', internal: 'driverdir'). + Part-of: + +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * tests/check/meson.build: + * tests/validate/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * docs/meson.build: + * ext/onnx/meson.build: + * ext/opencv/meson.build: + * ext/wayland/meson.build: + * meson.build: + * sys/msdk/meson.build: + * tests/check/meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-18 00:03:47 +0100 Tim-Philipp Müller + + * meson.build: + meson: clean up conditional paths after version bump + Part-of: + +2020-11-19 18:03:11 +0100 Rafał Dzięgiel + + * ext/assrender/gstassrender.c: + assrender: fix smooth scaling by disabling hinting + When ass hinting value is set to anything other than NONE, + subtitles cannot use smooth scaling, thus all animations will jitter. + The libass author warns about possibility of breaking some scripts when it is enabled, + so lets do what is recommended and disable it to get the smooth scaling working. + Part-of: + +2021-05-07 11:11:31 +0200 Jan Alexander Steffens (heftig) + + * ext/srt/gstsrtsink.c: + srt: Plug leak of headers + Part-of: + +2020-08-31 17:17:56 +0200 Jan Alexander Steffens (heftig) + + * gst/mpegtsmux/gstbasetsmux.c: + mpegtsmux: Avoid crash when best pad gets flushed + The 'best' pad might receive a flush event between us picking it and us + popping the buffer. In this case, the buffer will be missing. + Similar to https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/711 + Part-of: + +2021-10-17 11:39:57 +0100 Tim-Philipp Müller + + * tools/meson.build: + tools: Define G_LOG_DOMAIN for various tools as well + Part-of: + +2021-10-01 15:31:18 +0100 Tim-Philipp Müller + + * gst-libs/gst/adaptivedemux/meson.build: + * gst-libs/gst/audio/meson.build: + * gst-libs/gst/basecamerabinsrc/meson.build: + * gst-libs/gst/codecparsers/meson.build: + * gst-libs/gst/codecs/meson.build: + * gst-libs/gst/d3d11/meson.build: + * gst-libs/gst/insertbin/meson.build: + * gst-libs/gst/interfaces/meson.build: + * gst-libs/gst/isoff/meson.build: + * gst-libs/gst/mpegts/meson.build: + * gst-libs/gst/opencv/meson.build: + * gst-libs/gst/play/meson.build: + * gst-libs/gst/player/meson.build: + * gst-libs/gst/sctp/meson.build: + * gst-libs/gst/transcoder/meson.build: + * gst-libs/gst/uridownloader/meson.build: + * gst-libs/gst/va/meson.build: + * gst-libs/gst/vulkan/meson.build: + * gst-libs/gst/wayland/meson.build: + * gst-libs/gst/webrtc/meson.build: + * gst-libs/gst/winrt/meson.build: + gst-plugins-bad: define G_LOG_DOMAIN for all libraries + Fixes #634 + Part-of: + +2021-10-06 13:38:35 +0200 Antonio Ospite + + * ext/aes/meson.build: + aes: specify the required OpenSSL version + The code in the aes elements assumes OpenSSL >= 1.1.0: + - implicit library initialization; + - version retrieved with OpenSSL_version(OPENSSL_VERSION); + and it fails to build with older versions. + Specify the required OpenSSL version explicitly in meson.build so that + the elements are excluded on older systems (e.g. Ubuntu 16.04) and the + rest of GStreamer can still build. + Part-of: + +2021-10-11 13:05:24 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvadeinterlace.c: + vadeinterlace: Accept ANY feature. + Part-of: + +2021-10-11 13:04:19 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvadeinterlace.c: + vadeinterlace: Fixate interlace-mode and framerate accordingly. + Part-of: + +2021-10-14 07:03:26 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Accept ANY feature. + Part-of: + +2021-10-13 19:27:41 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Traverse caps features in gst_va_vpp_caps_remove_fields() + The previous code had a potential failure for multiple caps features. Now + each caps feature in each structure is reviewed, and if it has a supported + feature, the structure is processed. + Part-of: + +2021-10-13 17:08:12 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Refactor gst_va_vpp_complete_caps_features() + gst_va_vpp_complete_caps_features() now receives the @feature_name to + add and return if @caps doesn't provide it. + So, instead of two nested loops, now the function is a single loop, + traversing @caps to find if each structure already contains the requested + @features_name. + It's important to add missing caps features with @caps, in order to + not lost information. + The function caller does the external loop by calling per each + available caps feature. + Part-of: + +2021-10-11 18:57:48 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Split caps transform in two phases. + In order to make more readable the caps transformation, the operation + was split in two phases: + 1. Rangify the supported caps structures. + 2. Add the missing (and supported) caps features. + Step 1 modified its logic, by copying any unrecognized structure. + It's a previous step required for allowing ANY caps feature as + passthrough. + Part-of: + +2021-10-08 12:38:04 +0300 Vivia Nikolaidou + + * gst/mpegtsdemux/tsdemux.c: + tsdemux: Change many GST_{DEBUG, LOG, etc} into _OBJECT + Log files with several demuxers running at once can otherwise get + confusing + Part-of: + +2021-10-08 12:36:58 +0300 Vivia Nikolaidou + + * gst/mpegtsdemux/tsdemux.c: + tsdemux: Issue GST_ELEMENT_WARNING for continuity errors + The application might want to make use of these. + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2021-09-19 00:55:34 +0100 Tim-Philipp Müller + + * ext/dts/meson.build: + * ext/faad/meson.build: + * ext/iqa/iqa.c: + * ext/iqa/meson.build: + * ext/mpeg2enc/meson.build: + * ext/mplex/meson.build: + * ext/resindvd/meson.build: + * ext/x265/meson.build: + * meson.build: + * meson_options.txt: + meson: add 'gpl' option and only build plugins with (A)GPL deps if explicitly enabled + Require explicit opt-in to build plugins with (A)GPL dependencies. + Keep ugly/bad options on 'auto' for now so cerbero doesn't fail. + Part-of: + +2020-10-30 16:02:22 +0200 Vivia Nikolaidou + + * gst/mpegtsmux/gstbasetsmux.c: + basetsmux: Support for caps changes + Part-of: + +2020-11-12 12:17:14 +0100 Jan Alexander Steffens (heftig) + + * gst/mpegtsmux/gstbasetsmux.c: + basetsmux: Clean up gst_base_ts_mux_create_stream + Part-of: + +2021-08-31 16:35:06 +0300 Vivia Nikolaidou + + * gst/mpegtsdemux/mpegtsbase.c: + mpegtsbase: Search SCTE-35 DRF_ID_CUEI in multiple registration descriptors + There are streams in the wild that have to add a SCTE-35 trigger in + another e.g. GA94 stream. Most encoders would replace the GA94 + descriptor ID with the CUEI one temporarily, but there are some that + will add two registration ID descriptors, one with GA94 and one with + CUEI. + Failing to parse the CUEI registration ID in that case would return + FALSE in _stream_is_private_section , therefore setting it as known PES + and pushing packets downstream instead of calling handle_psi. + Part-of: + +2021-10-01 14:36:48 +0200 Edward Hervey + + * gst/mpegtsdemux/tsdemux.c: + tsdemux: Improve gap detection + We should also take into account whether data is currently pending when checking + for gap on streams. It could very well be that some streams have very low + bitrate (and spread out) data. For those we don't want to push out a gap event. + Part-of: + +2021-09-05 11:57:18 +0200 Edward Hervey + + * gst/mpegtsdemux/mpegtspacketizer.c: + * gst/mpegtsdemux/mpegtspacketizer.h: + * gst/mpegtsdemux/tsdemux.c: + tsdemux: Handle "negative" timestamps + This is only enabled in push time mode. Furthermore it's only enabled for now if + PCR is to be ignored. + The problem is dealing with streams where the initial PTS/DTS observation might + be greater than following ones (from other PID for example). Before this patch, + this would result in sending buffers without any timestamp which would cause a + wide variety of issues. + Instead, pad segment and buffer timestamps with an extra + value (packetizer->extra_shift, default to 2s), to ensure that we can get valid + timestamps on outgoing buffers (even if that means they are before the segment + start). + Part-of: + +2021-09-05 11:55:55 +0200 Edward Hervey + + * gst/mpegtsdemux/tsdemux.c: + tsdemux: Handle streams with bogus PTS vs DTS + PTS and DTS should be within a reasonable distance of each other. + Part-of: + +2021-09-05 11:53:05 +0200 Edward Hervey + + * gst/mpegtsdemux/mpegtspacketizer.c: + tsdemux: Handle PTS->TS at wraparound + This has been a FIXME for ages. + Part-of: + +2021-10-14 14:07:07 +0100 Rob Agar + + * ext/webrtc/gstwebrtcbin.c: + webrtcbin: fix prevention of webrtcbin deletion due to ref held by probe callback + https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/810 + Part-of: + +2021-10-16 19:01:27 +0900 Seungha Yang + + * sys/d3d11/gstd3d11convert.cpp: + d3d11: d3d11{convert,scale}: Add add-borders property + Functionally identical to that of videoscale element. + When disabled, d3d11convert or d3d11scale element will scale + image without adding borders, meaning that display aspect ratio + will not be preserved. + Part-of: + +2021-10-16 10:58:53 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvafilter.c: + * sys/va/gstvafilter.h: + * sys/va/gstvavpp.c: + vapostproc: Add add-borders property to keep dar + Just as videoscale, it enables add-borders property (FALSE by default) + in vapostproc to add border, if necessary, to keep the display aspect + ratio from the original image. + Part-of: + +2021-10-16 10:51:57 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Fix early fixation. + First copy missing fields and then fixate all remaining fields. + Part-of: + +2021-10-14 19:08:49 +0100 Tim-Philipp Müller + + * docs/plugins/gst_plugins_cache.json: + * ext/meson.build: + * ext/ofa/gstofa.c: + * ext/ofa/gstofa.h: + * ext/ofa/meson.build: + * meson_options.txt: + * tests/check/elements/ofa.c: + ofa: remove ofa audio fingerprinting plugin + I think the MusicIP database for this has been defunct for years, + so I can't imagine this plugin is particularly useful or still + used by anyone. + See https://musicbrainz.org/doc/Fingerprinting#PUID + Part-of: + +2021-10-16 22:43:32 +0900 Seungha Yang + + * sys/mediafoundation/meson.build: + * sys/wasapi2/meson.build: + meson: wasapi2,mediafoundation: Work around Windows SDK header issue + Some SDK headers are not standard compliant, so MSVC will + complain when such headers are in use with "/permissive-" compile + option. Use "/Zc:twoPhase-" to work around the issue as documented in + https://docs.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-160#windows-header-issues + Part-of: + +2021-10-16 09:29:28 -0300 Thibault Saunier + + * ext/fdkaac/meson.build: + meson: Mark newly fdkaac/ogg/vorbis as allow fallback + This way when the dep is `auto` we will fallback if the system + dependency is not available. + And use https to get libvorbis + Part-of: + +2021-10-16 01:15:06 +0900 Seungha Yang + + * sys/mediafoundation/gstmfplatloader.c: + * sys/mediafoundation/gstmfplatloader.h: + * sys/mediafoundation/gstmftransform.cpp: + * sys/mediafoundation/gstmftransform.h: + * sys/mediafoundation/gstmfvideoenc.cpp: + * sys/mediafoundation/meson.build: + * sys/mediafoundation/plugin.c: + mediafoundation: Use GetProcAddress() for OS version dependent symbols + We are using some symbols which are not available on Windows 7, + specifically D3D11 interop related ones + Part-of: + +2021-10-06 03:26:25 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Transfer colorimetry at fixate if possible. + Taken from videoconvert element. + Part-of: + +2021-10-12 15:52:48 -0300 Thibault Saunier + + * docs/meson.build: + meson: Streamline the way we detect when to build documentation + Part-of: + +2020-06-27 00:39:00 -0400 Thibault Saunier + + * docs/meson.build: + * gst-libs/gst/adaptivedemux/meson.build: + * gst-libs/gst/audio/meson.build: + * gst-libs/gst/basecamerabinsrc/meson.build: + * gst-libs/gst/codecparsers/meson.build: + * gst-libs/gst/codecs/meson.build: + * gst-libs/gst/d3d11/meson.build: + * gst-libs/gst/insertbin/meson.build: + * gst-libs/gst/interfaces/meson.build: + * gst-libs/gst/mpegts/meson.build: + * gst-libs/gst/opencv/meson.build: + * gst-libs/gst/play/meson.build: + * gst-libs/gst/player/meson.build: + * gst-libs/gst/sctp/meson.build: + * gst-libs/gst/transcoder/meson.build: + * gst-libs/gst/uridownloader/meson.build: + * gst-libs/gst/va/meson.build: + * gst-libs/gst/vulkan/meson.build: + * gst-libs/gst/wayland/meson.build: + * gst-libs/gst/webrtc/meson.build: + * meson.build: + meson: List libraries and their corresponding gir definition + Introduces a `libraries` variable that contains all libraries in a + list with the following format: + ``` meson + libraries = [ + [pkg_name, { + 'lib': library_object + 'gir': [ {full gir definition in a dict } ] + ], + .... + ] + ``` + It therefore refactors the way we build the gir so that we can reuse the + same information to build them against 'gstreamer-full' in gst-build + when linking statically + Part-of: + +2020-06-27 00:37:39 -0400 Thibault Saunier + + * gst-libs/gst/audio/meson.build: + * gst-libs/gst/basecamerabinsrc/meson.build: + * gst-libs/gst/codecs/meson.build: + * gst-libs/gst/insertbin/meson.build: + * gst-libs/gst/mpegts/meson.build: + * gst-libs/gst/play/meson.build: + * gst-libs/gst/player/meson.build: + * gst-libs/gst/vulkan/meson.build: + * gst-libs/gst/webrtc/meson.build: + meson: Mark files as files() + Making it more robust and future proof + And fix issues that it creates + Part-of: + +2021-09-13 17:53:12 -0300 Thibault Saunier + + * gst-libs/gst/audio/meson.build: + bad:audio: Add generated files sources in declare_dependency + Part-of: + +2021-10-15 23:18:41 +0900 Seungha Yang + + * sys/mediafoundation/gstmftransform.cpp: + * sys/mediafoundation/gstmfutils.cpp: + * sys/mediafoundation/gstmfvideoenc.cpp: + mediafoundation: Fix various string constness handling + ... with fixing typo (g_strup -> g_strdup) + Constness needs to be explicit in C++ world otherwise compiler + would complain about that. + Part-of: + +2021-10-15 10:03:46 +0100 Rob Agar + + * tests/examples/webrtc/webrtcrenego.c: + missing transceiver unref in WebRTC renegotiation example + Part-of: + +2021-10-13 17:17:44 +0800 Mengkejiergeli Ba + + * tests/examples/va/multiple-vpp.c: + tests:va: Fix null ptr dereference in multi-vpp + Dereference the pointer err before null check, which raised a null + pointer dereference issue by Coverity. Modify it to do the null check + of err first, then dereference it. + Part-of: + +2021-10-13 15:58:29 +0800 Mengkejiergeli Ba + + * sys/va/gstvadecoder.c: + va: Fix null ptr dereference for vadeocder + Making a null check in gst_va_decode_picture_free () indicates pic->buffers or pic->slices + can be null, then in _destroy_buffers () the pointers are dereferenced, which is detected + as dereference after null check by Coverity. Thus, modify the code to do null check in + _detroy_buffers (). + Part-of: + +2021-04-05 10:29:37 +0300 Vivia Nikolaidou + + * gst/mpegtsdemux/mpegtsbase.c: + * gst/mpegtsdemux/mpegtsbase.h: + * gst/mpegtsdemux/tsdemux.c: + * gst/mpegtsdemux/tsdemux.h: + tsdemux: Handle delayed seek events + Store the event in case it cannot be processed immediately and process + it after the first segment has been produced. + Part-of: + +2021-04-05 10:28:51 +0300 Vivia Nikolaidou + + * gst/mpegtsdemux/tsdemux.c: + * gst/mpegtsdemux/tsdemux.h: + tsdemux: Protect demux->segment_event with a mutex + Would otherwise cause weird issues when processing a delayed seek event + Part-of: + +2021-10-14 14:35:45 -0400 Nicolas Dufresne + + * gst-libs/gst/codecs/gsth264decoder.c: + codecs: h264: Fix wrong type of ret variable + This ret is not a GstFlowReturn. This broke v4l2 decoder which does not + implement new_picture() virtual function. + Part-of: + +2021-10-13 21:45:34 +0900 Seungha Yang + + * sys/d3d11/gstd3d11desktopdup.h: + * sys/d3d11/gstd3d11screencapture.cpp: + * sys/d3d11/gstd3d11screencapture.h: + * sys/d3d11/gstd3d11screencapturedevice.cpp: + * sys/d3d11/gstd3d11screencapturedevice.h: + * sys/d3d11/gstd3d11screencapturesrc.cpp: + * sys/d3d11/gstd3d11screencapturesrc.h: + * sys/d3d11/meson.build: + * sys/d3d11/plugin.cpp: + * tests/examples/d3d11/d3d11screencapturesrc.cpp: + * tests/examples/d3d11/meson.build: + d3d11: Rename screen capture element + Old name "desktopdup" may confuse users. Now it's renamed to + "screencapture" + Part-of: + +2021-10-05 18:52:25 -0300 Thibault Saunier + + * gst-libs/gst/transcoder/gsttranscoder.c: + transcoder: Set state back to NULL after run() finishes + Part-of: + +2021-09-13 18:02:03 -0300 Thibault Saunier + + * gst-libs/gst/transcoder/gsttranscoder.h: + transcoder: Use full path for includes in 'gsttranscoder.h' + Part-of: + +2021-10-12 17:50:31 +0800 Mengkejiergeli Ba + + * gst-libs/gst/va/gstvadisplay_drm.c: + va:display: Don't close an fd with negative value + Cannot pass negative parameter to close() and thus no need to apply + close() when fd < 0. + Part-of: + +2021-10-12 17:48:17 +0800 Mengkejiergeli Ba + + * sys/va/gstvadecoder.c: + va: Fix error handling for decoder + Need to check if va decoder is closed successfully. + Part-of: + +2021-10-12 17:44:27 +0800 Mengkejiergeli Ba + + * sys/va/gstvabasetransform.c: + va: Fix error handling for base transform + Need to check the returned value of gst_buffer_pool_set_active() when + setting the active status of buffer pool. + Part-of: + +2021-10-13 21:26:53 -0300 Thibault Saunier + + * ext/avtp/meson.build: + meson:avtp: Error out if sock_txtime is not present and avtp is enabled + Part-of: + +2021-10-10 01:56:32 +0900 Seungha Yang + + * gst-libs/gst/codecparsers/gsth264parser.c: + * gst-libs/gst/codecparsers/gsth265parser.c: + codecparsers: {h264,h265}parser: Fix typo around SEI nalu generator + Fix to create correct SEI nalu when the size of payloadType and/or + payloadType is larger than 255 (0xff) + Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1601 + Part-of: + +2021-10-05 20:15:44 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvafilter.c: + * sys/va/gstvavpp.c: + vapostproc: Negotiate interlaced. + Part-of: + +2021-10-05 20:15:09 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Copy missing fields at fixate. + When caps negotiation implies a caps feature change, some fields might + get lost. This patch brings them back from input caps. + Part-of: + +2021-10-05 20:15:09 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Simplify size fixate. + gst_va_vpp_fixate_size() returned the fixated caps, but that is not + needed since `othercaps` are modified inline. + Part-of: + +2021-10-05 20:15:09 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvavpp.c: + vapostproc: Simplify fixate. + The first approach to fixate was simply a copy&paste of both + videoconvert and videoscale, trying to keep their logic as isolated + as possible. But that brought duplicated and sparse logic. + This patch merge both approaches simplifying the fixate operation. + Part-of: + +2021-10-05 17:41:57 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvadeinterlace.c: + * sys/va/gstvafilter.c: + * sys/va/gstvafilter.h: + * sys/va/gstvavpp.c: + va: filter, deinterlace, vpp: Add gst_va_buffer_get_surface_flags(). + Add a helper function to get, from GstVideoInfo and GstBuffers flags, + the VA interlace surface flags. This is used currently by vainterlace + element, but it will be used in vapostproc too if it can process + interlaced frames. + Part-of: + +2021-09-22 14:50:40 +0800 Mengkejiergeli Ba + + * sys/msdk/gstmsdkenc.c: + msdkenc: fix vp9enc initialization fail + MediaSDK does not support to handle extbuff with id + MFX_EXTBUFF_VIDEO_SIGNAL_INFO for mjpegenc and vp9enc. Hence, need to + exclude mjpeg and vp9 when passing color properties to MediaSDK during + msdkenc initialization. + Fix issue: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/764 + Part-of: + +2021-10-10 17:04:13 +0900 Seungha Yang + + * tests/examples/d3d11/d3d11desktopdupsrc.cpp: + * tests/examples/d3d11/d3d11device.cpp: + * tests/examples/d3d11/d3d11device.h: + * tests/examples/d3d11/d3d11videosink-kb.c: + * tests/examples/d3d11/d3d11videosink-kb.h: + * tests/examples/d3d11/d3d11videosink-shared-texture-d3d9ex.cpp: + * tests/examples/d3d11/d3d11videosink-shared-texture.cpp: + * tests/examples/d3d11/d3d11videosink.c: + * tests/examples/d3d11/meson.build: + * tests/examples/meson.build: + examples: d3d11: Add a desktop capture example + ... with d3d11 desktop capture device provider + Part-of: + +2021-10-05 21:49:38 +0900 Seungha Yang + + * sys/d3d11/gstd3d11desktopdup.cpp: + * sys/d3d11/gstd3d11desktopdup.h: + * sys/d3d11/gstd3d11desktopdupdevice.cpp: + * sys/d3d11/gstd3d11desktopdupdevice.h: + * sys/d3d11/gstd3d11desktopdupsrc.cpp: + * sys/d3d11/meson.build: + * sys/d3d11/plugin.cpp: + d3d11: Add device provider for d3d11desktopdupsrc + ... and add support for multi-GPU/multi-monitor + By using newly added "monitor-handle" property, user can specify a + monitor to be captured via HMONITOR handle. + Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1673 + Part-of: + +2021-10-11 15:23:08 +0200 Stéphane Cerveau + + * ext/ttml/gstttmlparse.c: + * ext/ttml/gstttmlrender.c: + ttml: fix log init + The log system should be init before calling a log + Fix regression after: + https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2038 + Part-of: + +2021-10-04 13:30:37 +0200 Víctor Manuel Jáquez Leal + + * tests/check/elements/vapostproc.c: + * tests/check/meson.build: + tests: va: Add VA buffer copy tests. + It should only work for raw buffers, but fails on dmabuf since it + should have a drm modifier. + Part-of: + +2021-10-06 15:20:50 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvaallocator.c: + va: allocator: dmabuf: Use GstVaSurfaceCopy, if possible. + If dmabuf-based buffer to copy contains only one memory, and there are + memories available in the allocator's pool, it's possible a fast + memory copy using GstVaSurfaceCopy, regardless the drm modifier. + Part-of: + +2021-10-05 15:21:01 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvaallocator.c: + va: allocator: Use GstVaSurfaceCopy. + Part-of: + +2021-10-05 13:36:56 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvaallocator.c: + * sys/va/gstvasurfacecopy.c: + * sys/va/gstvasurfacecopy.h: + * sys/va/meson.build: + * sys/va/vasurfaceimage.c: + * sys/va/vasurfaceimage.h: + va: Add GstVaSurfaceCopy class. + This new class is a helper for fast/tricky copy of surfaces. First it + tries to copy using the function vaCopy in libva 1.12. If it fails, or + it's not available, a GstVaFilter is tried to be instantiated with the + allocator's parameters, and if succeed, it's used for copying the + source surface. + This is required for dmabuf surfaces with drm modifier. + Part-of: + +2021-10-05 13:21:00 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvafilter.c: + * sys/va/vasurfaceimage.c: + * sys/va/vasurfaceimage.h: + va: filter: Enable to pass VASurfaceID in GstVaSample. + Initially GstVaSample processed its GstBuffer member to get the + VASurfaceID. But it might cases where we already have the VASurfaceID + to process by the filter. + This patch enables the possibility to pass the surfaces rather than + the buffers. In order to validate the surfaces a function to check + surfaces were added. + Part-of: + +2021-10-07 21:51:55 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvaallocator.c: + * sys/va/meson.build: + * sys/va/vasurfaceimage.c: + * sys/va/vasurfaceimage.h: + va: Split VA memory handling in different files. + Take out the VA memory wrappers from gstvallocator.c to an external + file exposing the functions. + This is going to be needed for the copy helper object. + Part-of: + +2021-10-05 06:54:25 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvaallocator.h: + va: allocator: Add missing header file. + Added stdint.h because uintptr_t is used. + Part-of: + +2021-10-04 21:31:53 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvadisplay_priv.c: + * sys/va/gstvadisplay_priv.h: + va: display: Add gst_va_display_has_vpp() + Part-of: + +2021-09-30 14:59:31 +0200 Benjamin Gaignard + + * sys/v4l2codecs/gstv4l2codecvp8dec.c: + * sys/v4l2codecs/linux/v4l2-controls.h: + v4l2codecs: Align v4l2-controls header with kernel 5.15-rc3 + Update v4l2-controls to be aligned with kernel 5.15-rc3. + Fix VP8 decoder to use the correct field name. + Part-of: + +2021-10-08 23:07:32 +0900 Seungha Yang + + * sys/mediafoundation/gstmfh264enc.cpp: + * sys/mediafoundation/gstmfh265enc.cpp: + * sys/mediafoundation/gstmfvideoenc.cpp: + * sys/mediafoundation/gstmfvideoenc.h: + * sys/mediafoundation/gstmfvp9enc.cpp: + mediafoundation: mfvideoenc: Use DXGI adapter LUID + Make use of new DXGI adapter LUID based device context sharing. + Note that we were using DXGI adapter LUID to open MFT already. + Part-of: + +2021-10-08 22:37:20 +0900 Seungha Yang + + * sys/d3d11/gstd3d11av1dec.cpp: + * sys/d3d11/gstd3d11decoder.cpp: + * sys/d3d11/gstd3d11decoder.h: + * sys/d3d11/gstd3d11h264dec.cpp: + * sys/d3d11/gstd3d11h265dec.cpp: + * sys/d3d11/gstd3d11mpeg2dec.cpp: + * sys/d3d11/gstd3d11vp8dec.cpp: + * sys/d3d11/gstd3d11vp9dec.cpp: + d3d11: d3d11decoder: Use DXGI adapter LUID + ... instead of index of DXGI adapter. + The order of IDXGIAdapter1 enumerated via IDXGIFactory1::EnumAdapters1 + can be varying even there's no rebooting in case that GPU preference order + is updated by user (for example, it can be done by using NVIDIA Control Panel + in case of multi-GPU laptop system) and eGPU is another possible case. + So, for an element which requires fixed target GPU requirement, + index based device enumeration is unreliable. + Part-of: + +2021-10-08 21:39:44 +0900 Seungha Yang + + * gst-libs/gst/d3d11/gstd3d11utils.cpp: + * gst-libs/gst/d3d11/gstd3d11utils.h: + d3d11: d3d11utils: Add support for DXGI Adapter LUID based D3D11 device context sharing + Part-of: + +2021-10-08 19:41:22 +0900 Seungha Yang + + * gst-libs/gst/d3d11/gstd3d11device.cpp: + * gst-libs/gst/d3d11/gstd3d11device.h: + * gst-libs/gst/d3d11/gstd3d11utils.cpp: + * gst-libs/gst/d3d11/gstd3d11utils.h: + * tests/check/libs/d3d11device.cpp: + * tests/check/meson.build: + d3d11: d3d11device: Add gst_d3d11_device_new_{for_adapter_luid,wrapped} + * gst_d3d11_device_new_for_adapter_luid() + Used for creating D3D11 device for a DXGI adapter (i.e., GPU) + corresponding to a LUID (Locally Unique Identifier). + This method can be useful for interop with other APIs such as + Direct3D12, MediaFoundation, CUDA, etc. + * gst_d3d11_device_new_wrapped() + Allows creating a new GstD3D11Device object by using already + configured ID3D11Device. This is conceptually equivalent to + gst_gl_context_new_wrapped() + Part-of: + +2021-10-08 17:16:02 +0900 Seungha Yang + + * gst-libs/gst/d3d11/gstd3d11device.cpp: + * sys/d3d11/gstd3d11window.cpp: + d3d11: d3d11device: Remove "allow-tearing" property + Plugin can query DXGI_FEATURE_PRESENT_ALLOW_TEARING without d3d11device + help + Part-of: + +2021-10-08 21:14:52 +0300 Sebastian Dröge + + * ext/webrtc/gstwebrtcbin.c: + * tests/check/elements/webrtcbin.c: + webrtcbin: Use the same promise reply structure name everywhere + This was an inconsistent mix of different names in the past. The name + has no meaning at all so let's set all to "application/x-gst-promise". + Part-of: + +2021-10-08 15:44:37 +0300 Vivia Nikolaidou + + * docs/plugins/gst_plugins_cache.json: + * gst/debugutils/gstchopmydata.c: + chopmydata: Fix FIXMEs in gst_element_class_set_static_metadata + Part-of: + +2021-10-06 03:19:30 +0900 Seungha Yang + + * sys/d3d11/gstd3d11desktopdupsrc.cpp: + d3d11: d3d11desktopdupsrc: Add support for non-D3D11 downstream element + By this commit, application doesn't need to configure d3d11download + element for software pipeline which will make things simpler + Part-of: + +2021-10-06 22:06:44 +0900 Seungha Yang + + * gst-libs/gst/codecs/gstav1decoder.c: + * gst-libs/gst/codecs/gsth264decoder.c: + * gst-libs/gst/codecs/gsth265decoder.c: + * gst-libs/gst/codecs/gstmpeg2decoder.c: + * gst-libs/gst/codecs/gstvp8decoder.c: + * gst-libs/gst/codecs/gstvp9decoder.c: + codecs: Use GST_VIDEO_DECODER_ERROR() only for decoding error case + The GST_VIDEO_DECODER_ERROR() should be used only for robust/error-resilient + decoding purpose. Any other error codes such as not-negotiated or flushing + should be returned without modified for upstream to be able to handle + it immediately. (for example, application might want to try other + decoder element on not-negotiated) + Part-of: + +2021-10-07 01:54:29 +0900 Seungha Yang + + * gst-libs/gst/codecs/gsth264decoder.c: + codecs: h264decoder: Update for remaining gboolean to GstFlowReturn port + Fix for spurious/spammy warning and wrong function return type + Part-of: + +2021-09-23 17:36:20 +0530 Nirbheek Chauhan + + * ext/openjpeg/meson.build: + meson: Fix build with -Dopenjpeg=disabled + tests/check/meson.build uses the openjpeg_dep variable + unconditionally, and the subdir_done() is useless anyway, since the + plugin is only built if openjpeg_dep.found() is true. Fixes: + ..\tests\check\meson.build:23:0: ERROR: Unknown variable "openjpeg_dep". + In particular, this fixes the build on UWP since we disable openjpeg + explicitly in Cerbero when building for UWP. + Part-of: + +2021-10-01 14:35:06 +0200 Guillaume Desmottes + + * ext/gs/README.md: + bad: gs: update README + - add one missing dep + - change install path to match monorepo + - fix current dirs + Part-of: + +2021-09-17 13:02:38 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvadeinterlace.c: + * sys/va/gstvavpp.c: + * tests/examples/va/main.c: + va: Use macro rather than VAMemory feature string. + Part-of: + +2021-09-24 11:53:56 +0200 Jan Alexander Steffens (heftig) + + * gst/mpegtsdemux/mpegtsparse.c: + mpegtsparse: Don't assert the packet_size when filling for EOS + If the packetizer got reset for any reason (failure to find PCR?) then + the packet_size can be zero here even though we already enqueued some + packets. + Part-of: + +2021-09-22 00:05:43 +0900 Seungha Yang + + * gst-libs/gst/codecs/gstmpeg2decoder.c: + * gst-libs/gst/codecs/gstmpeg2decoder.h: + * sys/d3d11/gstd3d11mpeg2dec.cpp: + * sys/va/gstvampeg2dec.c: + codecs: mpeg2decoder: Use GstFlowReturn everywhere + boolean return value is not sufficient for representing the reason + of error in most cases. For instance, any errors around new_sequence() + would mean negotiation error, not just *ERROR*. + And some subclasses will allocate buffer/memory/surface on new_picture() + but it could be failed because of expected error, likely flushing + Part-of: + +2021-09-21 22:21:51 +0900 Seungha Yang + + * gst-libs/gst/codecs/gsth264decoder.c: + * gst-libs/gst/codecs/gsth264decoder.h: + * sys/d3d11/gstd3d11h264dec.cpp: + * sys/nvcodec/gstnvh264dec.c: + * sys/v4l2codecs/gstv4l2codech264dec.c: + * sys/va/gstvah264dec.c: + codecs: h264decoder: Use GstFlowReturn everywhere + boolean return value is not sufficient for representing the reason + of error in most cases. For instance, any errors around new_sequence() + would mean negotiation error, not just *ERROR*. + And some subclasses will allocate buffer/memory/surface on new_picture() + but it could be failed because of expected error, likely flushing + Part-of: + +2021-09-21 00:23:13 +0900 Seungha Yang + + * gst-libs/gst/codecs/gsth265decoder.c: + * gst-libs/gst/codecs/gsth265decoder.h: + * sys/d3d11/gstd3d11h265dec.cpp: + * sys/nvcodec/gstnvh265dec.c: + * sys/va/gstvah265dec.c: + codecs: h265decoder: Use GstFlowReturn everywhere + boolean return value is not sufficient for representing the reason + of error in most cases. For instance, any errors around new_sequence() + would mean negotiation error, not just *ERROR*. + And some subclasses will allocate buffer/memory/surface on new_picture() + but it could be failed because of expected error, likely flushing + Part-of: + +2021-10-02 21:22:23 +0900 Seungha Yang + + * ext/closedcaption/bit_slicer.c: + * ext/closedcaption/io-sim.c: + * ext/closedcaption/misc.h: + * ext/closedcaption/sampling_par.c: + closedcaption: Fix broken debug function macros with MSVC build + warning C4003: not enough arguments for function-like macro invocation 'warning' + G_STMT_END macro is extended to the below form with MSVC + __pragma(warning(push)) \ + __pragma(warning(disable:4127)) \ + while(0) \ + __pragma(warning(pop)) + So MSVC preprocessor will extend it further to + __pragma(VBI_CAT_LEVEL_LOG(push)) ... + Should rename warning() debug macro function therefore. + Part-of: + +2021-10-02 20:12:07 +0900 Seungha Yang + + * gst/mpegtsmux/gstbasetsmux.c: + mpegtsmux: basetsmux: Don't try to return value from void function + gstbasetsmux.c(1508): warning C4098: 'free_splice': 'void' function returning a value + Part-of: + +2021-10-03 16:53:54 +0200 Víctor Manuel Jáquez Leal + + * sys/va/gstvadevice.c: + * sys/va/meson.build: + va: Make libgudev dependency optional. + libgudev is a problematic dependency, particularly in sandboxed + environments, such as flatpak. + This patch implements a way to get the available VA devices using + brute-forced traverse of /dev/drm/renderD* directory. Thus usable in + those sandboxed environments. + Part-of: + +2021-10-03 15:45:58 +0200 Víctor Manuel Jáquez Leal + + * gst-libs/gst/va/meson.build: + * sys/va/meson.build: + va: meson: Move back libgudev dependency to plugin. + When move the libgstva, libgudev dependency was moved as part of the + library, though it's not use by the library but the plugin. This patch + moves back libgudev dependency to the plugin. + Also HAVE_LIBDRM is move to the library which is the one who use it. + Part-of: + +2021-10-03 19:14:07 +0900 Seungha Yang + + * sys/nvcodec/gstnvdecoder.c: + * sys/nvcodec/gstnvh264dec.c: + nvcodec: nvh264sldec: Add support for interlaced stream + Implement missing interlaced stream support + Part-of: + +2021-10-03 17:41:40 +0900 Seungha Yang + + * sys/nvcodec/gstnvh264dec.c: + nvcodec: nvh264sldec: Consider additional render delay DPB pictures + At least additional 4 pictures are required + Part-of: + +2021-10-03 17:37:02 +0900 Seungha Yang + + * sys/nvcodec/gstnvvp9dec.c: + nvcodec: nvvp9sldec: Fix for VP9 profile2 decoding + Fix for output video format to be selected correctly + Part-of: + +2021-10-03 02:14:17 +0900 Seungha Yang + + * sys/msdk/meson.build: + msdk: meson: Fix build on Windows + subprojects\gst-plugins-bad\sys\msdk\meson.build:160:2: ERROR: Unknown variable "libva_dep". + Part-of: + +2021-10-03 01:45:57 +0900 Seungha Yang + + * sys/d3d11/gstd3d11vp9dec.cpp: + d3d11: d3d11vp9dec: Fix use_prev_in_find_mv_refs value setting + "last_show_frame" should be updated based on + GstVp9FrameHeader::show_frame, not show_existing_frame + Part-of: + +2021-09-18 22:51:53 +0900 Seungha Yang + + * gst-libs/gst/codecs/gstvp8decoder.c: + * gst-libs/gst/codecs/gstvp9decoder.c: + codecs: {vp8,vp9}decoder: Drain on new_sequence() + Decoder should drain queued frame (if any) and empty DPB before + starting new sequence. + Part-of: + +2021-10-01 00:27:42 +0900 Seungha Yang + + * sys/nvcodec/gstnvvp8dec.c: + * sys/nvcodec/gstnvvp9dec.c: + nvcodec: nv{vp8,vp9}sldec: Implement get_preferred_output_delay() + Equivalent to that of nvh264sldec. Use render delay in case of non-live + pipeline for the better throughput performance. + Part-of: + +2021-10-01 01:00:24 +0900 Seungha Yang + + * gst-libs/gst/codecs/gstvp8decoder.c: + * gst-libs/gst/codecs/gstvp9decoder.c: + codecs: {vp8,vp9}decoder: Cleanup drain code + Make them consistent with h26x decoder baseclass + Part-of: + +2021-10-01 02:58:44 +0900 Seungha Yang + + * gst-libs/gst/codecs/gstvp8decoder.c: + codecs: vp8decoder: Fix typo + Part-of: + +2021-10-02 20:21:41 +0900 Seungha Yang + + * gst-libs/gst/codecs/gstvp9decoder.c: + * gst-libs/gst/codecs/gstvp9decoder.h: + codecs: vp9decoder: add support for render delay + Some decoding APIs support delayed output for performance reasons. + One example would be to request decoding for multiple frames and + then query for the oldest frame in the output queue. + This also increases throughput for transcoding and improves seek + performance when supported by the underlying backend. + Introduce support in the vp9 base class, so that backends that + support render delays can actually implement it. + Co-authored by Seungha Yang + Part-of: + +2021-10-02 19:47:45 +0900 Seungha Yang + + * gst-libs/gst/codecs/gstvp9decoder.h: + codecs: vp9decoder: Fix class struct documentation + s/GstVp9Decoder/GstVp9DecoderClass + Part-of: + +2021-09-30 17:38:33 +0200 Víctor Manuel Jáquez Leal + + * sys/va/meson.build: + va: meson: Update and enhance meson syntax usage. + This patch contains two updates: + 1. Instead of checking for dependency already checked just to verify a + version, we use the dependency version API. + 2. Update the deprecated function get_pkgconfig_variable. + Part-of: + +2021-09-30 17:43:09 +0200 Víctor Manuel Jáquez Leal + + * sys/msdk/meson.build: + msdk: meson: Don't get dependency variable before it's valid. + It's possible to have installed MediaSDK environment + package (libmfx-dev in Debian) without libva environment package. This + setup will lead to a breakage of meson configuration. + The fix is to get the libva's driver directory variable after the + dependency is validated as found. + Part-of: + +2021-09-30 13:32:44 +0200 Marc Leeman + + * gst/rist/gstristsink.c: + ristsink: set sync to FALSE on RTCP sink + See commit 921e9a54: rtpsink: set sync off on rtcp_sink + Part-of: + +2021-09-30 13:19:40 +0200 Marc Leeman + + * gst/rtp/gstrtpsink.c: + rtpsink: set sync off on rtcp_sink + When using the following setup (the error can be reproduced using + simpler sender pipelines), the receiver resynchronises the clock on RTCP + packets. The effect was that a couple seconds were cut out of the + playback because an initial RTCP packet was dropped. + When sending out all RTCP packets (setting sync=FALSE on the RTCP + updsink), the playback is fine. + This syncs rtpsink with rtpsrc (where this property was already set). + gst-launch-1.0 filesrc location=899-en.mp3 \ + ! mpegaudioparse \ + ! mpg123audiodec \ + ! audioconvert \ + ! audioresample \ + ! avenc_g722 \ + ! rtpg722pay + ! rtpsink uri=rtp://239.1.2.3:1234 + gst-launch-1.0 uridecodebin rtp://239.1.2.3:1234?encoding-name=G722 \ + ! autoaudiosink + Part-of: + +2020-09-17 15:06:38 +0200 Marc Leeman + + * gst/rtp/gstrtpsrc.c: + * tests/check/elements/rtpsrc.c: + rtpmanagerbad: do not set iface on sink + Part-of: + +2021-08-27 19:19:57 +0900 Seungha Yang + + * sys/mediafoundation/gstmfdevice.c: + * sys/mediafoundation/gstwin32devicewatcher.cpp: + * sys/mediafoundation/gstwin32devicewatcher.h: + * sys/mediafoundation/meson.build: + mfdeviceprovider: Add support for device update + Similar to the wasapi2 plugin, GstWinRT library will be used for UWP, + and adding new GstWin32DeviceWatcher object implementation for + Win32 desktop application. + Part-of: + +2021-08-26 22:38:37 +0900 Seungha Yang + + * sys/wasapi2/gstwasapi2device.c: + * sys/wasapi2/gstwasapi2device.h: + * sys/wasapi2/meson.build: + * sys/wasapi2/plugin.c: + wasapi2deviceprovider: Add support for device update + ... by using newly implemented GstWinRT library + Part-of: + +2021-08-26 19:47:51 +0900 Seungha Yang + + * gst-libs/gst/meson.build: + * gst-libs/gst/winrt/gstwinrt.h: + * gst-libs/gst/winrt/gstwinrtdevicewatcher.cpp: + * gst-libs/gst/winrt/gstwinrtdevicewatcher.h: + * gst-libs/gst/winrt/meson.build: + * gst-libs/gst/winrt/winrt-prelude.h: + libs: Introduce GstWinRT library + Adding a helper library for various WinRT specific implementations. + Currently this library supports only DeviceWatcher abstraction object + which can be used for dynamic device add/remove detection. + See also + https://docs.microsoft.com/en-us/uwp/api/windows.devices.enumeration.devicewatcher?view=winrt-20348 + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * README: + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-18 23:37:20 +0900 Seungha Yang + + * sys/d3d11/gstd3d11videosink.cpp: + * sys/d3d11/gstd3d11window.cpp: + d3d11videosink: Add support for crop meta + ... when upstream element is d3d11. + Note that, if upstream element is not d3d11, crop meta is almost + pointless since d3d11videosink will upload video frame to GPU memory + in any case. + Part-of: + +2021-09-18 23:37:59 +0900 Seungha Yang + + * sys/d3d11/gstd3d11videosink.cpp: + d3d11videosink: Perform propose_allocation() even when we have no configured window + In order to support d3d11 device update, d3d11videosink will configure + window on the first buffer. So, there might not be configured + window when propose_allocation() is required. + Part-of: + +2021-09-27 15:30:25 +0300 Sebastian Dröge + + * ext/gs/gstgscommon.cpp: + * ext/gs/gstgscommon.h: + * ext/gs/gstgssink.cpp: + * ext/gs/gstgssrc.cpp: + gs: Add support for authenticating via Service Account Credentials + This allows authenticating directly with Server Account credentials + instead of having it configured on host system separately, and thus + allows using arbitrary accounts configured/selected at runtime. + Part-of: + +2021-09-27 14:56:21 +0300 Sebastian Dröge + + * ext/gs/gstgs.cpp: + * ext/gs/gstgscommon.cpp: + * ext/gs/gstgscommon.h: + * ext/gs/gstgssink.cpp: + * ext/gs/gstgssink.h: + * ext/gs/gstgssrc.cpp: + * ext/gs/gstgssrc.h: + gs: Fix indentation and make it consistent + Apparently this partially used clang-format's default settings, so let's + use that for everything now. + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + Part-of: + +2021-09-23 19:30:32 +0300 Sebastian Dröge + + * ext/webrtc/gstwebrtcbin.c: + webrtcbin: Always set SINK/SRC flags + webrtcbin can act as a sink/source depending on the SDP later. Without + setting this here already, surrounding bins might not notice this and + the pipeline configuration might become inconsistent, e.g. with regards + to latency. + See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/737 + Part-of: + +2021-09-25 00:09:00 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.c: + * gst-libs/gst/mpegts/gst-scte-section.h: + * gst-libs/gst/mpegts/gstmpegtssection.c: + * gst/mpegtsdemux/tsdemux.c: + mpegts: add missing Since comments after SCTE 35 work + Part-of: + +2021-06-08 23:25:58 +0200 Mathieu Duponchelle + + * gst/mpegtsmux/gstbasetsmux.c: + basetsmux: use private copy of g_ptr_array_copy + This function is only present since glib 2.62 + Part-of: + +2021-05-04 14:38:28 +0200 Mathieu Duponchelle + + * gst/mpegtsmux/gstbasetsmux.c: + basetsmux: fix SCTE pts_adjustment with offsets + When there are elements between the demuxer and the muxer that + introduce an offset to the running time, or when offsets are + set on pads by the application, this shift must be taken into + account when calculating the final pts_adjustement. + Part-of: + +2021-04-23 01:22:32 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.c: + * gst-libs/gst/mpegts/gst-scte-section.h: + * gst/mpegtsmux/gstbasetsmux.c: + basetsmux: rework SCTE section handling to handle passthrough + mpegtsmux can receive SCTE sections from two origins: events + created by the application, and events forwarded downstream by + mpegtsdemux, containing sections that may not have been fully + parsed, and additional data to help tsmux translate times to + the correct domain, both for requesting keyframes and calculating + an accurate pts_adjustment. + The complete approach is documented further in a comment above + the relevant function. + Part-of: + +2021-04-23 01:19:21 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gstmpegtssection.c: + mpegtspacketizer: handle "packetizing" already packetized data + .. when the section didn't have a packetizer. This can happen + as a result of building a new section from a copy of the original + data of another section. + Part-of: + +2021-04-23 01:15:08 +0200 Mathieu Duponchelle + + * gst/mpegtsdemux/tsdemux.c: + * gst/mpegtsdemux/tsdemux.h: + tsdemux: switch SCTE 35 sections handling to a passthrough model + Instead of modifying the splice times in the incoming sections + to running time and expecting eg mpegtsmux to convert those back + to its local PES time domain, which might be impossible when + those splice times are encrypted or the specification is extended, + transmit the needed information to the muxer as separate fields in + the event: + * A pts offset field can be used by the muxer in order to calculate + a final pts_adjustment + * A rtime_map can be used by the muxer to determine the correct + running times at which it should request keyframes + Part-of: + +2021-04-14 00:27:16 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.c: + scte-section: add support for packetizing splice_program_flag='0' + Part-of: + +2021-04-13 23:56:06 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.c: + scte-section: add support for packetizing schedule events + Part-of: + +2021-04-13 23:42:54 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.c: + scte-section: Add TODO for porting to gst_bit_* + Part-of: + +2021-04-13 23:38:16 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.c: + * gst-libs/gst/mpegts/gst-scte-section.h: + scte-section: add support for parsing splice components + Part-of: + +2021-04-13 20:51:09 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.c: + * gst-libs/gst/mpegts/gst-scte-section.h: + scte-section: add support for SCHEDULE commands + Part-of: + +2021-04-13 20:47:36 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.c: + scte-section: fix typo + Part-of: + +2021-04-13 20:44:54 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.c: + * gst-libs/gst/mpegts/gst-scte-section.h: + gst-scte-section: implement partial parsing + In cases where either the SIT is encrypted, or an unknown + command is encountered, we still want to send an event downstream. + Part-of: + +2021-04-06 17:57:42 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.c: + * gst-libs/gst/mpegts/gst-scte-section.h: + * tests/examples/mpegts/ts-scte-writer.c: + scte35-section: semantic API break + Document that the constructors for the splice events expect + a running time, as users of the API can not be expected to + predict the appropriate local PTS. + Part-of: + +2021-04-06 17:37:28 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.c: + scte-section: add support for packetizing time_signal splices + time_signal splices are trivial, they only contain a splice_time() + and all the relevant information is carried in descriptors. + Part-of: + +2021-04-06 00:58:33 +0200 Mathieu Duponchelle + + * gst/mpegtsmux/gstbasetsmux.c: + * gst/mpegtsmux/gstbasetsmux.h: + basetsmux: extend SCTE 35 support + Makes it possible to support passing SCTE 35 cue points from + demuxer to muxer, while preserving correct timing. + This will also improve ex nihilo cue points injection, as splice + times and durations are now interpreted as running time values, + and may trigger key unit requests. + Part-of: + +2021-04-06 00:36:43 +0200 Mathieu Duponchelle + + * docs/plugins/gst_plugins_cache.json: + * gst/mpegtsdemux/tsdemux.c: + * gst/mpegtsdemux/tsdemux.h: + tsdemux: Expose send-scte35-events property + When enabled, SCTE 35 sections (eg ad placement opportunities) + are forwarded as events donwstream. + Part-of: + +2021-04-06 00:26:50 +0200 Mathieu Duponchelle + + * gst/mpegtsdemux/mpegtsbase.c: + * gst/mpegtsdemux/mpegtsbase.h: + mpegtsbase: expose vmethod to let subclass handle sections + This can be used by tsdemux to handle and forward SCTE 35 + sections. + Part-of: + +2021-04-06 00:23:09 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gstmpegtssection.c: + * gst-libs/gst/mpegts/gstmpegtssection.h: + mpegtssection: expose event constructor + This allows the demuxer to forward sections of interest downstream, + for example SCTE 35 splice information. These can then be reinjected + appropriately by a muxer for example. + Part-of: + +2021-04-06 00:21:58 +0200 Mathieu Duponchelle + + * gst-libs/gst/mpegts/gst-scte-section.h: + scte-section.h: fix type macros + Part-of: + === release 1.19.2 === 2021-09-23 01:34:47 +0100 Tim-Philipp Müller @@ -166207,6 +168300,7 @@ === release 0.10.21 === +('0', '10', '21') 2011-01-21 21:13:22 +0000 Tim-Philipp Müller * ChangeLog: @@ -204517,8 +206611,6 @@ every file but apart from that no changes compared to the latest SVN versions happened. -=== release 0.10.21 === - 2008-09-01 16:05:45 +0000 Edward Hervey tests/check/elements/audioresample.c: Now that GstBaseTransform is 'fixed' ... remove cruft from tests. @@ -208023,8 +210115,6 @@ (deinterleave_suite): Add some more deinterleave unit test bits I had locally. -=== release 0.10.20 === - 2008-05-14 13:57:41 +0000 Tim-Philipp Müller gst/audioresample/gstaudioresample.c: Revert previous change which made basetransform handle buffer_alloc and which b... @@ -209581,8 +211671,6 @@ Use AG_GST_CHECK_PLUGIN and AG_GST_DISABLE_PLUGIN to simplify which plug-ins are included/excluded. (#498222) -=== release 0.10.19 === - 2008-03-03 06:04:02 +0000 Sebastian Dröge Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static... @@ -213759,8 +215847,6 @@ (gst_speex_resample_update_state): Only post the latency message if we have a resampler state already. -=== release 0.10.17 === - 2007-11-23 10:21:11 +0000 Sebastian Dröge gst/audioresample/gstaudioresample.c: Implement latency query. @@ -218728,8 +220814,6 @@ work with earlier versions due to GstChildProxy brokeness). Also up requirements to last released core/base. -=== release 0.10.15 === - 2007-04-27 15:33:46 +0000 Julien Moutte ext/theora/theoradec.c: Calculate buffer duration correctly to generate a perfect stream (#433888). @@ -221059,8 +223143,6 @@ Original commit message from CVS: move amrwb code -=== release 0.10.12 === - 2007-01-04 12:49:47 +0000 Thomas Vander Stichele configure.ac: split out GST_CFLAGS into GST_PLUGINS_BASE_CFLAGS and GST_CFLAGS so that GST_BASE_CFLAGS can go inbetwe... diff --git a/subprojects/gst-plugins-base/ChangeLog b/subprojects/gst-plugins-base/ChangeLog index 889ea4b..b82faf6 100644 --- a/subprojects/gst-plugins-base/ChangeLog +++ b/subprojects/gst-plugins-base/ChangeLog @@ -1,3 +1,777 @@ +2021-11-01 15:48:58 -0400 Matthias Clasen + + * gst-libs/gst/gl/egl/gstglcontext_egl.c: + egl: handle configless contexts + With EGL_KHR_no_config_context, EGL contexts may just not + have an EGLConfig to give you. Deal with it. + Fixes: #858 + Part-of: + +2021-10-30 01:55:38 +0900 Seungha Yang + + * tests/examples/overlay/win32-videooverlay-playbin.c: + examples: win32-videooverlay-playbin: Add a repeat option + ... in order to test pipeline/element reuse cases. + Part-of: + +2021-10-30 16:22:39 +0300 Sebastian Dröge + + * docs/plugins/gst_plugins_cache.json: + * gst-libs/gst/video/video-format.h: + video: Fix order of new video formats + Part-of: + +2021-10-30 15:50:30 +0300 Sebastian Dröge + + * gst-libs/gst/gl/gstglutils.c: + * gst-libs/gst/video/video.c: + base: Fix some annotations + Part-of: + +2021-10-30 00:34:35 +0100 Tim-Philipp Müller + + * tests/examples/playback/playback-test.c: + * tests/examples/seek/jsseek.c: + Use g_pattern_spec_match() instead of g_pattern_match() which is deprecated since glib 2.70 + Fixes compiler warnings with glib 2.70 + Part-of: + +2021-10-23 00:44:57 +0200 Piotrek Brzeziński + + * docs/plugins/gst_plugins_cache.json: + * gst-libs/gst/video/video-converter.c: + * gst-libs/gst/video/video-format.c: + * gst-libs/gst/video/video-format.h: + * gst-libs/gst/video/video-info.c: + * gst-libs/gst/video/video-scaler.c: + video-format: Add support for ARGB64 LE/BE and similar variants + Co-authored-by: Sebastian Dröge + Part-of: + +2021-10-25 11:37:45 +0100 Tim-Philipp Müller + + * meson.build: + meson: require matching GStreamer dep versions for unstable development releases + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929 + Part-of: + +2021-10-27 22:49:44 +1100 Jan Schmidt + + * gst/playback/gstdecodebin3-parse.c: + decodebin3: Only unblock for GAP events and buffers. + An alternate fix for + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1239 + and https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1236 + that makes it clear the intent is to only unblock on a GAP event, and + not any others. + Part-of: + +2021-10-26 15:12:16 +0200 Guillaume Desmottes + + * gst/playback/gstparsebin.c: + parsebin: fix critical when sorting pads + If the pad does not have a current caps, get_pad() returns the query + caps which can be ANY. In such case the caps does not have any structure + resulting in a critical warning when calling gst_caps_get_structure(). + Part-of: + +2021-10-23 16:06:54 +0300 Sebastian Dröge + + * gst/typefind/gsttypefindfunctions.c: + typefindfunctions: Use memcmp() instead of a strange macro around strncmp() + Part-of: + +2021-10-23 14:31:59 +0300 Sebastian Dröge + + * gst/typefind/gsttypefindfunctions.c: + typefindfunctions: Add various CMAF brands to the MP4 typefinder + Part-of: + +2021-10-23 14:30:02 +0300 Sebastian Dröge + + * gst/typefind/gsttypefindfunctions.c: + typefindfunctions: Refactor ftyp brands checking + Store known brands in arrays and add a helper function to check them. + Also add all the `iso3` to `isob` ISO brands and the `hlsf` ISO + fragmented brand. + Part-of: + +2021-10-23 14:28:35 +0300 Sebastian Dröge + + * gst/typefind/gsttypefindfunctions.c: + typefindfunctions: Add various other boxes to the list of known top-level MP4 boxes + styp, udta, sidx, ssix, prft, mfra, pdin and meta are in the ISOBMFF + spec and emsg in the CMAF spec. + Part-of: + +2021-10-25 01:01:56 +0100 Tim-Philipp Müller + + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/fur.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/lv.po: + * po/nb.po: + * po/nl.po: + * po/or.po: + * po/pl.po: + * po/pt_BR.po: + * po/ro.po: + * po/ru.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + gst-plugins-base: update translations + Fixes #656 + Part-of: + +2021-10-22 17:54:55 +1100 Matthew Waters + + * gst-libs/gst/gl/meson.build: + gl/egl: install required egl.h header + Fixes build against using the gir. + Part-of: + +2021-10-20 11:56:32 +0200 Guillaume Desmottes + + * gst/playback/gststreamsynchronizer.c: + streamsynchronizer: set running time offset on events + It's cleaner and more generic than overriding the qos events. + Part-of: + +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * tests/check/meson.build: + * tests/validate/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * docs/meson.build: + * ext/libvisual/meson.build: + * gst-libs/gst/gl/meson.build: + * gst-libs/gst/tag/meson.build: + * meson.build: + * tests/meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-18 00:03:47 +0100 Tim-Philipp Müller + + * meson.build: + meson: clean up conditional paths after version bump + Part-of: + +2021-02-09 19:56:49 -0300 Thibault Saunier + + * gst-libs/gst/pbutils/gstdiscoverer-types.c: + * gst-libs/gst/pbutils/gstdiscoverer.c: + * gst-libs/gst/pbutils/gstdiscoverer.h: + * gst-libs/gst/pbutils/pbutils-private.h: + * tools/gst-discoverer.c: + discoverer: Set number to stream infos + The idea is that we can reference to streams using this unique number, + within the context of that discoverer info. That number should always + be usable to reference the streams for a specific stream. + Part-of: + +2021-10-20 09:37:40 +0200 Edward Hervey + + * gst-libs/gst/pbutils/gstdiscoverer.c: + discoverer: Don't ref NULL taglist + Fixes warning introduced in 064f7bbbfac9610fd391c45091e35391b80e1212 + Part-of: + +2021-10-19 10:07:55 -0400 Xavier Claessens + + * gst-libs/gst/audio/meson.build: + Revert "audio: Merge simd libs into the main one" + This reverts commit 4d3a200358439e6c76c5dd1be2daae0cceb0e44a. + Part-of: + +2021-10-19 17:07:37 +0300 Sebastian Dröge + + * gst-libs/gst/video/video-overlay-composition.c: + video-overlay-composition: Fix constructor guard to actually allow NULL as parameter + And don't use a NULL rectangle later. + Part-of: + +2021-10-19 19:46:48 +1100 Matthew Waters + + * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: + * gst-libs/gst/gl/gstgldisplay.c: + gl/eagl: fix eagl display creation + The GstGLDisplayType of the display was win32 instead of the required eagl. + Part-of: + +2021-08-31 16:21:09 +1000 Matthew Waters + + * gst-libs/gst/rtp/gstrtpbasepayload.c: + * tests/check/libs/rtpbasepayload.c: + * tests/check/libs/rtpdummyhdrextimpl.c: + tests/rtp/payload: add test for shrinking extension data + Part-of: + +2021-08-24 21:26:54 +1000 Matthew Waters + + * gst-libs/gst/rtp/gstrtpbuffer.c: + * tests/check/libs/rtp.c: + rtp: also support shrinking the extension data + Currently the extension data length specified in the RTP header would + say it was shorter then the data serialised to a packet. When + combining the resulting buffer, the underlying memory would still + contain the extra (now 0-filled) padding data. + This would mean that parsing the resulting RTP packet would potentially + start with a number of 0-filled bytes which many RTP formats are not + expecting. + Such usage is found by e.g. RTP header extension when allocating the + maximum buffer (which may be larger than the written size) and shrinking + to the required size the data once all the rtp header extension data has + been written. + Part-of: + +2021-10-17 13:14:38 +0100 Tim-Philipp Müller + + * ext/vorbis/gstvorbisdec.c: + vorbisdec: don't emit g_warning() on malformed input data + Part-of: + +2021-10-17 13:12:11 +0100 Tim-Philipp Müller + + * ext/theora/gsttheoradec.c: + theoradec: don't emit g_warning() on malformed input stream + Part-of: + +2021-10-17 13:04:14 +0100 Tim-Philipp Müller + + * gst/subparse/gstsubparse.c: + subparse: don't use g_warning() for malformed input + Part-of: + +2021-10-17 11:39:57 +0100 Tim-Philipp Müller + + * tools/meson.build: + tools: Define G_LOG_DOMAIN for various tools as well + Part-of: + +2021-10-01 15:30:27 +0100 Tim-Philipp Müller + + * gst-libs/gst/allocators/meson.build: + * gst-libs/gst/app/meson.build: + * gst-libs/gst/audio/meson.build: + * gst-libs/gst/fft/meson.build: + * gst-libs/gst/gl/meson.build: + * gst-libs/gst/pbutils/meson.build: + * gst-libs/gst/riff/meson.build: + * gst-libs/gst/rtp/meson.build: + * gst-libs/gst/rtsp/meson.build: + * gst-libs/gst/sdp/meson.build: + * gst-libs/gst/tag/meson.build: + * gst-libs/gst/video/meson.build: + gst-plugins-base: define G_LOG_DOMAIN for all libraries + Fixes #634 + Part-of: + +2021-08-15 01:36:14 +0200 Mathieu Duponchelle + + * docs/plugins/gst_plugins_cache.json: + * gst-libs/gst/audio/gstaudioaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst/compositor/compositor.c: + audio/video aggregator: make use of new aggregator inactive pad API + Part-of: + +2021-10-10 17:07:33 +0100 Philippe Normand + + * gst-libs/gst/pbutils/gstdiscoverer-types.c: + * gst-libs/gst/pbutils/gstdiscoverer.c: + * gst-libs/gst/pbutils/gstdiscoverer.h: + * gst-libs/gst/pbutils/pbutils-private.h: + * tools/gst-discoverer.c: + discoverer: Advertise container-specific tags with a new API + Since commit a55dafe341ac7398e7c37c30d8b760228296da92, stream-scoped tags no + longer appeared as top-level tags, introducing a behaviour regression, specially + for MP3 files. + The `gst_discoverer_info_get_tags()` API now returns all tags detected for the + given media, as documented. + A new API is introduced to get container-specific tags, + `gst_discoverer_container_info_get_tags()`. The discoverer tool was adapted to + use it. `gst_discoverer_info_get_tags()` is now deprecated in favor of + `gst_discoverer_container_info_get_tags()` and + `gst_discoverer_stream_info_get_tags()`. + Fixes #759 + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2021-10-14 23:02:36 -0300 Thibault Saunier + + * gst/encoding/gstsmartencoder.c: + smartencoder: Force reencoding of vp9 for profiles can't support + If the input file is in a profile we won't be able to output (1 or 3 in BGR + format), simply reencode everything for now. + Once we add support for that case we can remove that code + Part-of: + +2021-10-14 22:55:35 -0300 Thibault Saunier + + * gst-libs/gst/pbutils/encoding-profile.c: + encoding-profile: ignore more fields when creating for discover info + Part-of: + +2021-10-14 22:29:19 -0300 Thibault Saunier + + * gst/encoding/gstsmartencoder.c: + smartencoder: Always plug a vp9parse when encoding vp9 + This way we know that all relevant fields about video format are + added and we avoid renegotiation issues. + Part-of: + +2021-10-05 10:46:26 -0300 Thibault Saunier + + * gst/encoding/gstsmartencoder.c: + smartencoder: Fix renegotiating when reencoding parts of the stream with vpx + In the encoded streams we might not have all the information about the + raw video stream, but when reencoding they end up being specified, even + if those are default values. + As vp8 decoders always output frames in some YUV color space we can + ensure that when upstream doesn't specify any value in its caps we + use the default one which is what we end up doing when decoding/reencoding + anyway, so this way downstream (matroskamux in that case) doesn't need + to be able to renegotiate (which it doesn't). + Part-of: + +2021-10-16 09:29:28 -0300 Thibault Saunier + + * ext/ogg/meson.build: + * ext/vorbis/meson.build: + meson: Mark newly fdkaac/ogg/vorbis as allow fallback + This way when the dep is `auto` we will fallback if the system + dependency is not available. + And use https to get libvorbis + Part-of: + +2021-10-15 22:07:39 -0300 Thibault Saunier + + * gst-libs/gst/gl/meson.build: + meson: Fix warning building GstGLEGL + We forgot to add the `GstGL` gir as a dependency which was properly + done for GstGLWayland and GstGLX11. + And document why we use a list for `all_libraries` + Part-of: + +2021-10-12 15:52:48 -0300 Thibault Saunier + + * docs/meson.build: + meson: Streamline the way we detect when to build documentation + Part-of: + +2020-06-27 00:39:00 -0400 Thibault Saunier + + * docs/meson.build: + * gst-libs/gst/allocators/meson.build: + * gst-libs/gst/app/meson.build: + * gst-libs/gst/audio/meson.build: + * gst-libs/gst/fft/meson.build: + * gst-libs/gst/gl/meson.build: + * gst-libs/gst/pbutils/meson.build: + * gst-libs/gst/riff/meson.build: + * gst-libs/gst/rtp/meson.build: + * gst-libs/gst/rtsp/meson.build: + * gst-libs/gst/sdp/meson.build: + * gst-libs/gst/tag/meson.build: + * gst-libs/gst/video/meson.build: + * meson.build: + meson: List libraries and their corresponding gir definition + Introduces a `libraries` variable that contains all libraries in a + list with the following format: + ``` meson + libraries = [ + [pkg_name, { + 'lib': library_object + 'gir': [ {full gir definition in a dict } ] + ], + .... + ] + ``` + It therefore refactors the way we build the gir so that we can reuse the + same information to build them against 'gstreamer-full' in gst-build + when linking statically + Part-of: + +2020-06-27 00:37:39 -0400 Thibault Saunier + + * gst-libs/gst/allocators/meson.build: + * gst-libs/gst/app/meson.build: + * gst-libs/gst/audio/meson.build: + * gst-libs/gst/gl/meson.build: + * gst-libs/gst/pbutils/meson.build: + * gst-libs/gst/rtp/meson.build: + * gst-libs/gst/rtsp/meson.build: + * gst-libs/gst/sdp/meson.build: + * gst-libs/gst/tag/meson.build: + * gst-libs/gst/video/meson.build: + * meson.build: + meson: Mark files as files() + Making it more robust and future proof + And fix issues that it creates + Part-of: + +2021-10-13 21:28:58 +0200 Piotrek Brzeziński + + * gst-libs/gst/video/video-converter.c: + video-converter: Fix v210->I420 last line conversion + Last line would not be converted correctly if height was an odd number. + Fixed by accounting for data type (8bit vs. 16bit) differences between + respective packing and unpacking functions. + Part-of: + +2021-10-13 16:53:41 +0200 Piotrek Brzeziński + + * gst-libs/gst/video/video-format.c: + video-format: Clean up v210 packing code + Part-of: + +2021-10-13 17:25:41 +0200 Piotrek Brzeziński + + * gst-libs/gst/video/video-converter.c: + video-converter: Add fast paths from I420/YV12, UYVY, Y42B and YUY2 to v210 + Part-of: + +2021-10-14 17:48:59 +1100 Matthew Waters + + * gst-libs/gst/gl/gstglupload.c: + gl/dmabuf: add some debug logging about why things may fail to be uploaded + Part-of: + +2021-09-24 15:02:27 +1000 Matthew Waters + + * gst/playback/gstplaybin2.c: + * gst/playback/gstplaybin3.c: + playbin2/3: autoplug/caps: don't expand caps to ANY + Retrieving the pad template caps from a ghost pad returns ANY which when + merged with any other caps will return ANY. ANY is not very specific + and may cause suboptimal code paths in e.g. decoders that assume the + lowest common denominator when presented with ANY caps. + Fixes negotiating dma-buf with vaapidecodebin between glupload in the + video sink element. + Part-of: + +2021-08-02 17:46:37 +0900 Seungha Yang + + * tests/examples/playback/playback-test.c: + examples: playback-test: Fix for UI resize scenario on Windows + Application needs to notify videosink element of video widget resize + via gst_video_overlay_set_render_rectangle() since WM_SIZE event + wouldn't be notified. + Part-of: + +2020-04-15 23:41:52 -0400 Olivier Crête + + * gst-libs/gst/audio/meson.build: + audio: Merge simd libs into the main one + Actually extract the .o objects from the convience libraries and put + them into the main one. Without this, they will just be referenced by + the .pc file, but it will be unusable because they are not installed. + Part-of: + +2017-08-29 17:21:05 -0400 Olivier Crête + + * ext/gl/gstglimagesink.c: + * ext/gl/gstgltransformation.c: + * ext/gl/gstglutils.c: + * ext/gl/gstglutils.h: + * ext/gl/gstglvideomixer.c: + * gst-libs/gst/gl/gstglutils.c: + * gst-libs/gst/gl/gstglutils.h: + * gst-libs/gst/gl/gstglutils_private.h: + glutils: Export affine transformation functions for gtkglsink + Also remove duplicated copy of those functions from the gl plugin + With contributions from Bastien Nocera + Part-of: + +2021-05-04 15:55:15 -0400 Olivier Crête + + * ext/gl/gstglvideoflip.c: + * ext/gl/gstglvideoflip.h: + glvideoflip: Replace GstVideoFlipMethod -> GstVideoOrientationMethod + It's the same enum, just drop the renamed copy. But keep the registered + GEnum as it is part of the API. + Part-of: + +2021-05-04 15:51:36 -0400 Olivier Crête + + * ext/gl/gstglvideoflip.c: + glvideoflip: Use the API to parse the image orientation + This will reduce the code duplication a little. + Part-of: + +2021-05-04 15:51:13 -0400 Olivier Crête + + * ext/gl/gstglimagesink.c: + glimagesink: Use the API to parse the image orientation + This will reduce the code duplication a little. + Part-of: + +2021-05-04 15:50:59 -0400 Olivier Crête + + * gst-libs/gst/video/video.c: + * gst-libs/gst/video/video.h: + video: Add API to parse the image orientation from a GstTagList + Part-of: + +2021-05-04 15:39:29 -0400 Olivier Crête + + * ext/gl/gstglimagesink.c: + * ext/gl/gstglimagesink.h: + glimagesink: Replace GstGLRotateMethod with GstVideoOrientationMethod + It's the same enum, just drop the renamed copy. But keep the registered + GEnum as it is part of the API. + Part-of: + +2021-05-04 15:28:25 -0400 Olivier Crête + + * gst-libs/gst/video/meson.build: + * gst-libs/gst/video/video.c: + * gst-libs/gst/video/video.h: + video: Put nicer documentation in GstVideoOrientationMethod + Part-of: + +2021-09-26 18:05:31 +0100 Tim-Philipp Müller + + * tools/gst-play.c: + gst-play: pick up minus and plus also from navigation events + Makes it easier to test playback rate changes with the video + window being in focus. + Part-of: + +2021-10-09 05:39:38 +1100 Jan Schmidt + + * gst/playback/gsturidecodebin3.c: + * gst/playback/gsturisourcebin.c: + uridecodebin3/urisourcebin: Reusability fixes + Improvements to uridecodebin3 and urisourcebin so that they are + reusable across a PAUSED->READY->PAUSED transition. + Disconnect and release decodebin3 request pads when urisourcebin + removes src pads. + In urisourcebin, make sure to remove src pads that are exposed + directly (raw pads and static typefind srcpads) when + cleaning up. + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/768 + Part-of: + +2021-10-10 01:24:44 +1100 Jan Schmidt + + * gst/playback/gstplaybin3.c: + playbin3: Always register 'playbin3' element. + If the USE_PLAYBIN3=1 env var is set, we want to replace + playbin with playbin3, but separate to that, we always + want to register the 'playbin3' element so that applications + which explicitly use playbin3 work regardless of the env var. + This fixes `USE_PLAYBIN3=1 gst-validate-launcher`, for example. + Part-of: + +2021-10-05 05:43:13 +1100 Jan Schmidt + + * gst/playback/gstplaybin3.c: + playbin3: Avoid group deactivation deadlock. + Change locking around group deactivation to avoid deadlocks + when shutting down exactly as a buffering message arrives. + The PLAYBIN3_LOCK now protects the active field of the + source group. Everything else is still protected by the + source-group-lock. + Also properly protect group switching operations with + the PLAYBIN3_LOCK everywhere. + Part-of: + +2021-09-15 16:49:16 +0200 Ludvig Rappe + + * gst-libs/gst/pbutils/codec-utils.c: + * tests/check/libs/pbutils.c: + pbutils: Remove sample entry code "raw" + Part-of: + +2021-09-16 15:18:24 +0200 Stéphane Cerveau + + * gst/typefind/gsttypefindfunctions.c: + typefindfunctions: differentiate h265 from h264 + in some cases, the algo gives the same probability + to h264 and h265 for h26x stream resulting in a h265 + stream detected as a h264. + if sps/pps/vps detected, increase the probabilty. + Part-of: + +2021-09-26 01:55:39 +0100 Tim-Philipp Müller + + * gst-libs/gst/video/video-format.h: + video: make GST_VIDEO_FORMAT_INFO_IS_*() macros booleans + Spotted by Stirling Westrup. + Fixes #726 + Part-of: + +2021-09-26 01:52:12 +0100 Tim-Philipp Müller + + * gst-libs/gst/audio/audio-info.h: + audio: make GST_AUDIO_INFO_IS_UNPOSITIONED return a boolean + Luckily this worked right since the flag we check is the + only flag and its vale is 1, but feels more correct to + actually check for non-zeroness. + Spotted by Stirling Westrup. + Part-of: + +2021-09-27 16:11:33 -0400 Olivier Crête + + * gst-libs/gst/rtp/gstrtphdrext.c: + * gst-libs/gst/rtp/gstrtphdrext.h: + rtphdrext: Give "inherited" direction in set_attributes + Part-of: + +2021-09-27 10:19:51 -0400 Olivier Crête + + * gst-libs/gst/rtp/gstrtphdrext.c: + rtphdrext: Use NULL-safe case insensitive comparison + Part-of: + +2021-09-27 10:01:02 -0400 Olivier Crête + + * gst-libs/gst/rtp/gstrtphdrext.c: + rtphdrext: Print warnings when trying to parse caps + Part-of: + +2021-09-24 13:38:39 -0400 Olivier Crête + + * gst-libs/gst/rtp/gstrtphdrext.c: + * gst-libs/gst/rtp/gstrtphdrext.h: + * tests/check/libs/rtpdummyhdrextimpl.c: + rtphdrext: Pass just the attributes to the subclass + Since the base class now does the parsing, there is no need + to reproduce that code in all the subclasses, just pass the attributes + which are the only relevant bit anyway. + Also, only store the direction if the subclass accepted the caps + Part-of: + +2021-09-24 13:19:22 -0400 Olivier Crête + + * tests/check/libs/rtphdrext.c: + rtphdrext: Use fail_unless_equals_string() to make tests easier to debug + Part-of: + +2021-09-24 13:02:13 -0400 Olivier Crête + + * tests/check/libs/rtpdummyhdrextimpl.c: + * tests/check/libs/rtphdrext.c: + rtphdrext test: Use helper function for caps + Also, let the base class parse the direction for us. + Part-of: + +2021-09-24 12:51:01 -0400 Olivier Crête + + * gst-libs/gst/rtp/gstrtphdrext.c: + * gst-libs/gst/rtp/gstrtphdrext.h: + rtphdrext: Add helper function to set fields in caps + Part-of: + +2021-09-23 16:37:45 -0400 Olivier Crête + + * gst-libs/gst/rtp/gstrtphdrext.c: + rtphdrext: Parse direction from the caps + Part-of: + +2021-09-23 16:33:32 -0400 Olivier Crête + + * gst-libs/gst/rtp/gstrtphdrext.c: + rtphdrext: Set the direction in the caps from the property + Part-of: + +2021-09-23 16:24:04 -0400 Olivier Crête + + * gst-libs/gst/rtp/gstrtphdrext.c: + * gst-libs/gst/rtp/gstrtphdrext.h: + rtphdrext: Store the direction in the base class + Store the direction associated wit the RTP header extension in the + base class so it can use it. + Part-of: + +2021-09-23 16:01:40 -0400 Olivier Crête + + * gst-libs/gst/rtp/gstrtphdrext.c: + * gst-libs/gst/rtp/gstrtphdrext.h: + rtphdrext: Set caps without attributes as the default + Most subclasses just use the simple function, so just let the base class + do it. It makes less code in subclasses. + Part-of: + +2021-09-23 15:36:00 -0400 Olivier Crête + + * gst-libs/gst/rtp/gstrtphdrext.c: + * gst-libs/gst/rtp/gstrtphdrext.h: + rtphdrext: Put simple caps generation as the base class default + Instead of having a helper function that gets called by almost every + subclass, just let the base class set the caps fields automatically. + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * README: + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-27 00:53:34 +0200 Havard Graff + + * gst-libs/gst/video/gstvideodecoder.c: + videodecoder: request sync-points regularly on error + If we are not receiving a sync-point for a very long time, we need to + keep asking for them. The request-sync-point logic keeps track of how + many keyunitrequests we are allowed to send, but that would not matter + if we don't keep asking. + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + Part-of: + === release 1.19.2 === 2021-09-23 01:33:08 +0100 Tim-Philipp Müller diff --git a/subprojects/gst-plugins-good/ChangeLog b/subprojects/gst-plugins-good/ChangeLog index f997cc9..3bd2e99 100644 --- a/subprojects/gst-plugins-good/ChangeLog +++ b/subprojects/gst-plugins-good/ChangeLog @@ -1,3 +1,539 @@ +2021-11-02 16:46:08 +0200 Sebastian Dröge + + * docs/gst_plugins_cache.json: + * gst/multifile/gstmultifilesink.c: + * gst/multifile/gstmultifilesink.h: + multifilesink: Make minimum distance between keyframes in next-file=key-frame mode configurable + Previously this was hardcoded to 10s, which is not necessarily the + desired behaviour. + Part-of: + +2021-11-01 16:32:10 +0100 Erlend Eriksen + + * gst/isomp4/gstqtmux.c: + qtmux: Fix deadlock in gst_qt_mux_prepare_moov_recovery + Regression from 5766731bd4200c3a374522a749386f740347661a + Part-of: + +2021-10-30 16:22:39 +0300 Sebastian Dröge + + * docs/gst_plugins_cache.json: + video: Fix order of new video formats + Part-of: + +2021-10-30 00:58:55 +0100 Tim-Philipp Müller + + * tests/check/elements/rtphdrext-colorspace.c: + Couple more g_memdup() -> g_memdup2() fixes + Fixes deprecation warnings with newer GLib versions. + Part-of: + +2021-10-23 00:44:57 +0200 Piotrek Brzeziński + + * docs/gst_plugins_cache.json: + video-format: Add support for ARGB64 LE/BE and similar variants + Co-authored-by: Sebastian Dröge + Part-of: + +2021-10-29 03:46:25 +0200 Mathieu Duponchelle + + * gst/rtpmanager/rtptwcc.c: + rtptwcc: don't assume all PacketInfo->data are buffers + They can also be buffer lists + Part-of: + +2021-10-25 11:37:45 +0100 Tim-Philipp Müller + + * meson.build: + meson: require matching GStreamer dep versions for unstable development releases + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929 + Part-of: + +2021-10-28 21:37:47 +1100 Jan Schmidt + + * gst/isomp4/qtdemux.c: + qtdemux: Fix text and closed-caption handling. + https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1182 + broke text and and closed caption extraction when introducing WebVTT + support, by making the output buffers not have timestamps any more. + Fix that by making the process functions copy buffer metadata + when generating new output buffers. + Part-of: + +2021-10-25 01:02:07 +0100 Tim-Philipp Müller + + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/fur.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/ky.po: + * po/lt.po: + * po/lv.po: + * po/mt.po: + * po/nb.po: + * po/nl.po: + * po/or.po: + * po/pl.po: + * po/pt_BR.po: + * po/ro.po: + * po/ru.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + * po/zh_HK.po: + * po/zh_TW.po: + gst-plugins-good: update translations + Fixes #656 + Part-of: + +2021-10-23 14:38:06 +0300 Sebastian Dröge + + * gst/isomp4/qtdemux_types.c: + qtdemux: Add pasp box to the list of known boxes + Part-of: + +2021-01-20 11:53:51 +0100 Rafał Dzięgiel + + * gst/matroska/matroska-read-common.c: + matroska: Set image/attachment structure mimetype + Set structure mimetype to fix data detection by mimetype in other plugins. + Part-of: + +2021-01-20 11:33:39 +0100 Rafał Dzięgiel + + * gst/matroska/matroska-read-common.c: + matroska: Treat non-image structure as attachment + Otherwise each structure is named as GstTagImageInfo even if + it does not contain any images which is misleading. + Part-of: + +2021-10-21 20:32:05 +1100 Matthew Waters + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: fix leak of pad when a fec encoder and aux sender a created + The ghost sink pad retrieved by rtpbin from the aux sender was not freed + when there was a previous element (fec encoder) in the chain. + Part-of: + +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * tests/check/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * docs/meson.build: + * meson.build: + * tests/check/meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-18 00:03:47 +0100 Tim-Philipp Müller + + * meson.build: + meson: clean up conditional paths after version bump + Part-of: + +2021-09-15 14:19:06 -0400 Olivier Crête + + * docs/gst_plugins_cache.json: + * gst/rtpmanager/gstrtphdrext-clientaudiolevel.c: + * gst/rtpmanager/gstrtphdrext-clientaudiolevel.h: + * gst/rtpmanager/gstrtpmanager.c: + * gst/rtpmanager/meson.build: + * tests/check/elements/rtphdrextclientaudiolevel.c: + * tests/check/meson.build: + rtphdrext-clientaudiolevel: Rename RFC 6464 element + Multiplying elements named after RFC numbers is confusing, + so let's give them meaningful names. + Part-of: + +2021-06-05 03:13:52 +1000 Jan Schmidt + + * gst/isomp4/fourcc.h: + * gst/isomp4/meson.build: + * gst/isomp4/qtdemux-webvtt.c: + * gst/isomp4/qtdemux-webvtt.h: + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux_types.c: + qtdemux: Add support for wvtt (WebVTT) subtitles. + WebVTT in ISO MP4 is specified in ISO 14496-30, + and needed for DASH support. It's stored in an + mp4 specific format. To handle it compatibly, + the wvtt boxes are converted back into WebVTT text + and pushed as application/x-subtitle-vtt + Part-of: + +2021-08-27 22:45:18 +1000 Jan Schmidt + + * gst/isomp4/qtdemux.c: + isomp4: Split buffer process functions. + Split the different handling for closed captions, VobSub subpicture + and timed text samples into separate simplified process functions. + Part-of: + +2021-08-27 21:58:25 +1000 Jan Schmidt + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + isomp4: Use a function pointer for buffer splitting. + Swap the `need_process` boolean check on qtdemux streams + for a direct function pointer to the splitting function, + so we can stop adding extra cases to the single growing + `gst_qtdemux_process_buffer()` function. + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2021-10-05 12:28:22 -0300 Thibault Saunier + + * gst/isomp4/gstqtmux.c: + qtmux: Allow more fields changes renegotiating h264 + And consider interlace-mode=progress as equivalent to the field not + being specified. + Part-of: + +2021-10-05 10:50:32 -0300 Thibault Saunier + + * gst/matroska/matroska-mux.c: + matroskamux: Ignore some fields when renegotiating + Those values are never used in the muxer so we should not fail the + negotiation if those are changing. + Part-of: + +2021-10-17 01:59:35 -0300 Thibault Saunier + + * ext/lame/meson.build: + lame:meson: Avoid using fallback when we could use system install + Part-of: + +2021-10-05 11:38:33 -0300 Thibault Saunier + + * ext/lame/gstlamemp3enc.h: + * ext/lame/meson.build: + meson: Support building lame as subproject + Part-of: + +2021-10-12 15:52:48 -0300 Thibault Saunier + + * docs/meson.build: + meson: Streamline the way we detect when to build documentation + Part-of: + +2021-10-13 14:42:15 +0100 Philippe Normand + + * ext/soup/stub/soup.h: + soup-stub: Gate G_URI_FLAGS_SCHEME_NORMALIZE behind glib version check + Part-of: + +2021-10-13 10:38:07 +0200 Bastien Nocera + + * ext/gtk/gtkgstglwidget.c: + gtkglsink: Avoid assertion when applying "auto" rotation method + Guard against the orientation not coming from an inexistant tag, nor + from the application (rotation set to "auto") which caused an assertion. + When the application requests the auto rotation method, make sure it is + resolved to a rotation that's applicable. + ERROR:gstreamer/subprojects/gst-plugins-good/ext/gtk/gtkgstglwidget.c:745:gtk_gst_gl_widget_set_rotate_method: code should not be reached + Fixes: 103ceb853a5f7dade07a1ac4aa517e9df6ed5ded + Part-of: + +2021-10-04 09:31:02 +0100 Philippe Normand + + * ext/soup/gstsoup.c: + * ext/soup/gstsouphttpclientsink.c: + * ext/soup/gstsouphttpclientsink.h: + * ext/soup/gstsouphttpsrc.c: + * ext/soup/gstsouphttpsrc.h: + * ext/soup/gstsouploader.c: + * ext/soup/gstsouploader.h: + * ext/soup/gstsouputils.c: + * ext/soup/gstsouputils.h: + * ext/soup/meson.build: + * ext/soup/stub/soup.h: + * meson.build: + * tests/check/elements/souphttpsrc.c: + * tests/check/meson.build: + soup: Runtime compatibility support for libsoup2 and libsoup3 + The src and sink elements no longer link against libsoup. It is now loaded at + runtime. If any version is resident already, it is used. Otherwise we first try + to load libsoup3 and if it's not found we fallback to libsoup2. + For the unit-tests, we now build one version of the test unit file per libsoup + version found. So if both libsoup2 and libsoup3 are available on the host, the + CI will cover them both. + Based on initial patch by Daniel Kolesa and + Patrick Griffis . + Part-of: + +2021-09-10 18:03:55 -0400 Olivier Crête + + * gst/rtp/gstrtpopuspay.c: + rtopuspay: Set marker bit inside RTP packet too + At the end of a talk spurt, not only set the marker flag on the + GstBuffer, but also set the bit inside the RTP header as recommended + by the RFC. + Part-of: + +2021-10-11 14:27:24 +0200 Bastien Nocera + + * ext/gtk/gstgtkbasesink.c: + gtksink: Fetch the default "widget" value in the docs + There's really no interesting "widget" value that could be shown in the + docs, so use the GST_PARAM_DOC_SHOW_DEFAULT flag to avoid showing + another value. + Part-of: + +2021-10-11 10:22:41 +0200 Bastien Nocera + + * ext/gtk/gstgtkbasesink.c: + * ext/gtk/gstgtkglsink.c: + gtksink: Avoid errors fetching widget property + Avoid errors when fetching the "widget" property and GTK initialisation + fails, such as when running in a non-graphical environment. + Part-of: + +2021-05-04 13:27:30 -0400 Olivier Crête + + * ext/gtk/gstgtkbasesink.c: + * ext/gtk/gstgtkglsink.c: + gtksink: Return reference to GtkWidget in the acquire function + This should ensure thread safety. + Part-of: + +2020-09-03 18:27:19 -0400 Olivier Crête + + * docs/gst_plugins_cache.json: + * ext/gtk/gstgtkbasesink.c: + * ext/gtk/gstgtkbasesink.h: + * ext/gtk/gstgtkglsink.c: + * ext/gtk/gtkgstglwidget.c: + * ext/gtk/gtkgstglwidget.h: + gtkglsink: Add rotate-method property + This mostly just takes code out of glimagesink and applies it here. + Part-of: + +2021-10-12 19:01:37 +0300 Sebastian Dröge + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Don't assert on the input side if no GOP is available when shutting down + Part-of: + +2021-10-12 11:43:16 +0530 Nirbheek Chauhan + + * ext/soup/meson.build: + libsoup: Bump to 2.74 to fix gssapi build failure on macOS + See: https://gitlab.gnome.org/GNOME/libsoup/-/merge_requests/255 + We also need to disable sysprof by default because it only builds on + native Linux. If someone really wants it, they can enable the option + on the command-line by passing -Dlibsoup:sysprof=enabled + Part-of: + +2020-06-05 16:20:18 +0200 Marek Vasut + + * ext/jpeg/gstjpegdec.c: + * ext/jpeg/gstjpegdec.h: + jpegdec: Support libjpeg-turbo colorspace conversion + The libjpeg-turbo has a built-in support for performing colorspace + conversion. The performance of this conversion is much better than + doing the same separately using videoconvert. Implement support for + this conversion to RGBx/xRGB/BGRx/xBGR formats. Other formats can + be easily added later. + - The decoding of various pixel formats can be tested and compared to + non-libjpeg-turbo decoding as follows: + for gfmt in {RGB,BGR}{,x} x{RGB,BGR} ; do + echo "$gfmt" + gst-launch-1.0 -q \ + videotestsrc pattern=colors ! \ + video/x-raw,format=${gfmt} ! \ + fakesink dump=true | \ + head -n 200 | tail -n 1 + gst-launch-1.0 -q --gst-plugin-path=build/ext/jpeg/ \ + videotestsrc pattern=colors ! \ + video/x-raw,format=${gfmt} ! \ + jpegenc ! \ + jpegdec ! \ + video/x-raw,format=${gfmt} ! \ + fakesink dump=true | \ + head -n 200 | tail -n 1 + done + Result looks as follows, i.e. comparable: + RGB + 00000c70 (0x7f7736fbdd10): 05 33 19 05 33 26 05 33 33 05 33 40 05 33 4c 05 .3..3&.33.3@.3L. + 00000c70 (0x7f389e8f7d10): 05 32 17 04 32 22 04 32 31 04 32 3e 04 32 4a 04 .2..2".21.2>.2J. + RGBx + 00000c70 (0x7f79efd0ad10): cc 07 22 ff d9 07 22 ff e6 07 22 ff f3 07 22 ff .."..."..."...". + 00000c70 (0x7fb6989f3d10): cd 06 22 00 d9 06 22 00 e6 06 22 00 f4 06 22 00 .."..."..."...". + BGR + 00000c70 (0x7fa0a6c42d10): 05 0c 33 05 19 33 05 26 33 05 33 33 05 40 33 05 ..3..3.&3.33.@3. + 00000c70 (0x7fc74165fd10): 05 08 32 04 17 32 04 22 32 04 31 32 04 3e 32 04 ..2..2."2.12.>2. + BGRx + 00000c70 (0x7fbf399f1d10): 22 07 cc ff 22 07 d9 ff 22 07 e6 ff 22 07 f3 ff "..."..."..."... + 00000c70 (0x7f50e3d1cd10): 22 06 cd 00 22 06 d9 00 22 06 e6 00 22 06 f4 00 "..."..."..."... + xRGB + 00000c70 (0x7f0b950a2d10): ff cc 07 22 ff d9 07 22 ff e6 07 22 ff f3 07 22 ..."..."..."..." + 00000c70 (0x7f4416b8dd10): 00 cd 06 22 00 d9 06 22 00 e6 06 22 00 f4 06 22 ..."..."..."..." + xBGR + 00000c70 (0x7f237d74dd10): ff 22 07 cc ff 22 07 d9 ff 22 07 e6 ff 22 07 f3 ."..."..."...".. + 00000c70 (0x7f095547dd10): 00 22 06 cd 00 22 06 d9 00 22 06 e6 00 22 06 f4 ."..."..."...".. + ^^ ^^ ^^ ^^ + Notice how the alpha channel is set to arbitrary value in case of the + libjpeg-turbo decoding into RGBx/BGRx/xRGB/xBGR pixel formats. This is + documented in libjpeg-turbo README.md as follows: + " + When using the RGBX, BGRX, XBGR, and XRGB colorspaces during decompression, the + X byte is undefined, and in order to ensure the best performance, libjpeg-turbo + can set that byte to whatever value it wishes. + " + - The interlaced num_fields=2 mjpeg stream can be generated and + tested as follows (this does require mjpegtools): + $ gst-launch-1.0 videotestsrc num-buffers=10 ! jpegenc ! multifilesink location=in%04d.jpg + $ jpeg2yuv -f 25 -I t -L 0 -j in%04d.jpg | yuv2lav -f avi -o result.avi + ... + $ gst-launch-1.0 --gst-plugin-path=build/ext/jpeg/ filesrc location=result.avi ! \ + avidemux ! jpegdec ! video/x-raw,format=RGBx ! videoconvert ! autovideosink + Signed-off-by: Marek Vasut + Part-of: + +2021-09-21 13:37:35 +0300 Sebastian Dröge + + * gst/multifile/gstsplitmuxsink.c: + * gst/multifile/gstsplitmuxsink.h: + splitmuxsink: Keep track of the pending input GOPs in a queue + This cleans up input GOP handling and makes it possible to handle more + than 2 pending GOPs, which could happen before if keyframes are arriving + with too short of a distance between them. + Part-of: + +2021-09-16 19:36:27 +0300 Sebastian Dröge + + * gst/multifile/gstsplitmuxsink.c: + * gst/multifile/gstsplitmuxsink.h: + splitmuxsink: Handle frame reordering due to B frames better + Instead of assuming that the PTS of a keyframe is the lowest PTS of a + GOP, wait until the DTS has passed this PTS and take the minimum PTS up + to that point. That way the minimum PTS of a GOP can be determined, at + least for closed GOP streams. Open GOP streams still can't be handled + properly. + By knowing the minimum PTS of each GOP, keyframes can be requested at + the correct time relative to the GOP (and thus fragment) start and + fragment overflow calculations can calculate the correct durations of + the GOPs. + Part-of: + +2021-09-16 14:07:27 +0300 Sebastian Dröge + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Reset timecodes when resetting the sink + Part-of: + +2021-09-16 13:11:20 +0300 Sebastian Dröge + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Use GST_CLOCK_STIME_NONE instead of 0 to initialize max out running time + Otherwise streams with only DTS would misbehave while it is negative. + For outputting everything immediately at EOS, use G_MAXINT64 instead + which is bigger-or-equal to any other running time. + Part-of: + +2021-09-16 13:02:29 +0300 Sebastian Dröge + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Only update max in/out running time if it's actually bigger + Part-of: + +2021-09-16 12:53:12 +0300 Sebastian Dröge + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Only count keyframes for the reference context, consistently + Part-of: + +2021-09-24 13:38:39 -0400 Olivier Crête + + * gst/rtpmanager/gstrtphdrext-rfc6464.c: + rtphdrext: Pass just the attributes to the subclass + Since the base class now does the parsing, there is no need + to reproduce that code in all the subclasses, just pass the attributes + which are the only relevant bit anyway. + Also, only store the direction if the subclass accepted the caps + Part-of: + +2021-09-24 12:52:37 -0400 Olivier Crête + + * gst/rtpmanager/gstrtphdrext-rfc6464.c: + rtphdrext-rfc6464: Use helper function to set caps field + Part-of: + +2021-09-23 16:01:40 -0400 Olivier Crête + + * gst/rtp/gstrtphdrext-colorspace.c: + * gst/rtpmanager/gstrtphdrext-twcc.c: + rtphdrext: Set caps without attributes as the default + Most subclasses just use the simple function, so just let the base class + do it. It makes less code in subclasses. + Part-of: + +2021-09-23 15:36:00 -0400 Olivier Crête + + * gst/rtp/gstrtphdrext-colorspace.c: + * gst/rtpmanager/gstrtphdrext-rfc6464.c: + * gst/rtpmanager/gstrtphdrext-twcc.c: + rtphdrext: Put simple caps generation as the base class default + Instead of having a helper function that gets called by almost every + subclass, just let the base class set the caps fields automatically. + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * README: + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * docs/gst_plugins_cache.json: + * meson.build: + Back to development + Part-of: + === release 1.19.2 === 2021-09-23 01:33:39 +0100 Tim-Philipp Müller @@ -5,6 +541,7 @@ * ChangeLog: * NEWS: * RELEASE: + * docs/gst_plugins_cache.json: * gst-plugins-good.doap: * meson.build: Release 1.19.2 diff --git a/subprojects/gst-plugins-ugly/ChangeLog b/subprojects/gst-plugins-ugly/ChangeLog index b747f21..a4ecaf8 100644 --- a/subprojects/gst-plugins-ugly/ChangeLog +++ b/subprojects/gst-plugins-ugly/ChangeLog @@ -1,3 +1,140 @@ +2021-10-25 11:37:45 +0100 Tim-Philipp Müller + + * meson.build: + meson: require matching GStreamer dep versions for unstable development releases + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929 + Part-of: + +2021-10-25 01:02:36 +0100 Tim-Philipp Müller + + * po/af.po: + * po/ast.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/fur.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/lv.po: + * po/ms.po: + * po/mt.po: + * po/nb.po: + * po/nl.po: + * po/or.po: + * po/pl.po: + * po/pt_BR.po: + * po/ro.po: + * po/ru.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/ta.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + * po/zh_TW.po: + gst-plugins-ugly: update translations + Fixes #656 + Part-of: + +2021-10-21 00:33:06 +0100 Tim-Philipp Müller + + * meson_options.txt: + meson: default to gpl=disabled for gst-plugins-bad and -ugly + This will only affect individual/tarball module builds, as the + options yield to the parent project which was set to gpl=disabled + by default already. We kept it as auto in the original commit + to accommodate the need to update cerbero as well, which had to + be done separately after the initial commit. + Part-of: + +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * tests/check/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * docs/meson.build: + * tests/check/meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-18 00:03:47 +0100 Tim-Philipp Müller + + * meson.build: + meson: clean up conditional paths after version bump + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2021-09-19 00:55:34 +0100 Tim-Philipp Müller + + * ext/a52dec/meson.build: + * ext/cdio/meson.build: + * ext/dvdread/meson.build: + * ext/mpeg2dec/meson.build: + * ext/sidplay/meson.build: + * ext/x264/meson.build: + * meson.build: + * meson_options.txt: + meson: add 'gpl' option and only build plugins with (A)GPL deps if explicitly enabled + Require explicit opt-in to build plugins with (A)GPL dependencies. + Keep ugly/bad options on 'auto' for now so cerbero doesn't fail. + Part-of: + +2021-10-12 15:52:48 -0300 Thibault Saunier + + * docs/meson.build: + meson: Streamline the way we detect when to build documentation + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * README: + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + Part-of: + === release 1.19.2 === 2021-09-23 01:34:00 +0100 Tim-Philipp Müller diff --git a/subprojects/gst-python/ChangeLog b/subprojects/gst-python/ChangeLog index 6045091..1a0634c 100644 --- a/subprojects/gst-python/ChangeLog +++ b/subprojects/gst-python/ChangeLog @@ -1,3 +1,88 @@ +2021-10-27 17:20:39 +1300 Chris Wiggins + + * examples/plugins/python/py_audiotestsrc.py: + python: Update audiotestsrc to return correct tuple on FlowReturn Errors + Part-of: + +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * testsuite/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * testsuite/meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2021-09-22 13:12:07 -0300 Thibault Saunier + + * meson.build: + python:meson: Do not build plugin when statically built + It is not supported yet + Part-of: + +2021-09-14 18:25:46 -0300 Thibault Saunier + + * meson.build: + * meson_options.txt: + python: Add an option to disable tests + Part-of: + +2021-10-14 17:01:01 -0300 Thibault Saunier + + * gi/__init__.py: + python: Fix using overrides when not building PyGObject + Since 547570cd790f2b2e390edc1dfb5df4c7a33de45c we do not always build + PyGObject and our development environment is broken when trying to use + GStreamer python when built against system PyGObject with the following + error importing Gst in there: + ``` + 12345678** (gst-plugin-scanner:710617): CRITICAL **: 11:45:02.343: can't find gi.repository.Gst + Traceback (most recent call last): + File "/usr/lib/python3.9/site-packages/gi/repository/__init__.py", line 23, in + from ..importer import DynamicImporter + File "/usr/lib64/python3.9/site-packages/gi/importer.py", line 33, in + from .overrides import load_overrides + ImportError: cannot import name 'load_overrides' from 'gi.overrides' (/var/home/thiblahute/devel/gstreamer/gstreamer/subprojects/gst-editing-services/bindings/python/gi/overrides/__init__.py) + Factory Details: + ``` + The approach to fixing it is to implement override `gi` in + `gst-python/gi/` which we add to `PYTHONPATH`) and in there reset the + `gi` module to the right place and we get overrides from paths from + `_GI_OVERRIDES_PATH` we set in `gst-env.py` which points to all the + overrides that will be installed. + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + Part-of: + === release 1.19.2 === 2021-09-23 01:35:45 +0100 Tim-Philipp Müller diff --git a/subprojects/gst-rtsp-server/ChangeLog b/subprojects/gst-rtsp-server/ChangeLog index aca54de..22e9388 100644 --- a/subprojects/gst-rtsp-server/ChangeLog +++ b/subprojects/gst-rtsp-server/ChangeLog @@ -1,3 +1,139 @@ +2021-10-25 11:37:45 +0100 Tim-Philipp Müller + + * meson.build: + meson: require matching GStreamer dep versions for unstable development releases + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929 + Part-of: + +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * tests/check/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * docs/meson.build: + * tests/check/meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-01 15:32:58 +0100 Tim-Philipp Müller + + * gst/rtsp-server/meson.build: + * gst/rtsp-sink/meson.build: + rtsp-server: define G_LOG_DOMAIN + Fixes #634 + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2021-10-12 15:52:48 -0300 Thibault Saunier + + * docs/meson.build: + meson: Streamline the way we detect when to build documentation + Part-of: + +2020-06-27 00:39:00 -0400 Thibault Saunier + + * docs/meson.build: + * gst/rtsp-server/meson.build: + * meson.build: + meson: List libraries and their corresponding gir definition + Introduces a `libraries` variable that contains all libraries in a + list with the following format: + ``` meson + libraries = [ + [pkg_name, { + 'lib': library_object + 'gir': [ {full gir definition in a dict } ] + ], + .... + ] + ``` + It therefore refactors the way we build the gir so that we can reuse the + same information to build them against 'gstreamer-full' in gst-build + when linking statically + Part-of: + +2020-06-27 00:37:39 -0400 Thibault Saunier + + * gst/rtsp-server/meson.build: + meson: Mark files as files() + Making it more robust and future proof + And fix issues that it creates + Part-of: + +2021-10-07 13:00:10 +0300 Sebastian Dröge + + * gst/rtsp-server/rtsp-media.c: + rtsp-media: Unprepare suspended medias too + Previously suspended medias immediately reached the UNPREPARED state + without going through the media's unprepare() vfunc. This didn't allow + the media subclass to do any additional cleanup, and for example the + shutdown-eos property of GstRTSPMedia was ignored. + Part-of: + +2021-10-06 18:19:29 +0300 Sebastian Dröge + + * gst/rtsp-server/rtsp-media.c: + rtsp-media: Only unprepare a media if it was not already unpreparing anyway + Part-of: + +2021-10-03 23:25:23 +0200 Ognyan Tonchev + + * gst/rtsp-server/rtsp-client.c: + * gst/rtsp-server/rtsp-session.c: + * gst/rtsp-server/rtsp-session.h: + rtsp-client: make sure sessmedia will not get freed while used + handle_*_request() functions were all retrieving the session media from + the session by calling gst_rtsp_session_get_media () which is a transfer-none + call. If a session timeout happens at that time, the session media may get freed + making the pointer invalid.. + Fixes #757 + Part-of: + +2021-10-05 19:37:40 +0300 Sebastian Dröge + + * gst/rtsp-server/rtsp-media.c: + rtsp-media: Also mark receive-only (RECORD) medias as prepared when unsuspending + Previously the status was only changed for other medias. + Part-of: + +2021-10-01 13:51:37 +0300 Sebastian Dröge + + * gst/rtsp-server/rtsp-session.c: + rtsp-session: Don't unref medias twice if it is removed inside gst_rtsp_session_filter() while the mutex is shortly released + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/757 + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * docs/gst_plugins_cache.json: + * meson.build: + Back to development + Part-of: + === release 1.19.2 === 2021-09-23 01:35:27 +0100 Tim-Philipp Müller @@ -5,6 +141,7 @@ * ChangeLog: * NEWS: * RELEASE: + * docs/gst_plugins_cache.json: * gst-rtsp-server.doap: * meson.build: Release 1.19.2 diff --git a/subprojects/gstreamer-vaapi/ChangeLog b/subprojects/gstreamer-vaapi/ChangeLog index b04e547..a53022f 100644 --- a/subprojects/gstreamer-vaapi/ChangeLog +++ b/subprojects/gstreamer-vaapi/ChangeLog @@ -1,3 +1,52 @@ +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * tests/check/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * docs/meson.build: + * gst-libs/gst/vaapi/meson.build: + * meson.build: + * tests/check/meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2021-10-15 00:33:39 +0800 He Junyan + + * docs/index.md: + Docs: Fix a typo for Intel's vaapi driver name. + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + Part-of: + === release 1.19.2 === 2021-09-23 01:35:54 +0100 Tim-Philipp Müller diff --git a/subprojects/gstreamer/ChangeLog b/subprojects/gstreamer/ChangeLog index 34f23a6..d36f706 100644 --- a/subprojects/gstreamer/ChangeLog +++ b/subprojects/gstreamer/ChangeLog @@ -1,3 +1,370 @@ +2021-10-30 00:34:35 +0100 Tim-Philipp Müller + + * gst/gstinfo.c: + Use g_pattern_spec_match() instead of g_pattern_match() which is deprecated since glib 2.70 + Fixes compiler warnings with glib 2.70 + Part-of: + +2021-10-29 13:27:37 +0300 Vivia Nikolaidou + + * plugins/elements/gstidentity.c: + identity: Fix crash when receiving a gap event outside the current segment + We were checking if the start time of the gap event was + GST_CLOCK_TIME_NONE, which is superfluous because that cannot happen, + and then not checking if it was NONE after gst_segment_to_running_time, + which caused a crash if an identity received a gap event fully or + partially outside the current segment. + This patch was done in cooperation with: + Jan Alexander Steffens (heftig) + Part-of: + +2021-10-25 21:55:25 +0200 Ruben Gonzalez + + * gst/gstdevicemonitor.c: + devicemonitor: g_queue_clear_full introduced in glib 2.60 + The GStreamer dependency is glib >=2.56.0. Therefore, define + g_queue_clear_full if glib < 2.60. + Issue added in commit 1912bcbc + Part-of: + +2021-10-19 13:39:55 +0300 Sebastian Dröge + + * gst/gstdevicemonitor.c: + devicemonitor: Only fail start() if no provider at all could be started + Also refactor various internals of the monitor code: + - Don't allow starting twice but just return directly when starting a + second time. + - Don't end up in an inconsistent state if call start() a second time + while the monitor is starting up. + - Remove complicated cookie code: it was not possible to add/remove + filters while the monitor was started anyway so this was only useful + in the very small time-window while starting the monitor or while + getting the devices. Instead disallow adding/removing filters while + the monitor is starting, and when getting devices work on a snapshot + of providers/filters. + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/667 + Part-of: + +2021-10-25 01:01:28 +0100 Tim-Philipp Müller + + * po/af.po: + * po/ast.po: + * po/az.po: + * po/be.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/fur.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/ko.po: + * po/lt.po: + * po/nb.po: + * po/nl.po: + * po/pl.po: + * po/pt_BR.po: + * po/ro.po: + * po/ru.po: + * po/rw.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + * po/zh_TW.po: + gstreamer: update translations + Fixes #656 + Part-of: + +2021-10-22 11:00:06 -0400 Pascal Hache + + * libs/gst/base/gstbaseparse.c: + baseparse: fix invalid avg_bitrate after reset + gst_base_parse_reset() does not reset data_bytecount to 0, so + gst_base_parse_update_bitrates() uses a wrong value to calculate + the average bitrate on subsequent pipeline starts. This leads to an + excessive amount of "tag" events being pushed. These events include + very high "bitrate" values that diminish over time, and are produced + until the average bitrate is back to sane values. + Fixes #840 + Part-of: + +2021-10-20 11:20:13 +0200 Guillaume Desmottes + + * plugins/elements/gstconcat.c: + concat: fix qos event handling + We were shadowing the sinkpad variable resulting in: + - the QoS event to be send to all sink pads instead of the active one + - the pad to be leaked + Part-of: + +2021-10-18 16:55:14 +0100 Tim-Philipp Müller + + * gst/parse/meson.build: + * libs/gst/helpers/meson.build: + meson: fix use of deprecated meson api external_program.path() + Just using .full_path() instead. + Part-of: + +2021-10-18 15:47:00 +0100 Tim-Philipp Müller + + * tests/check/meson.build: + * tests/validate/meson.build: + meson: update for meson.build_root() and .build_source() deprecation + -> use meson.project_build_root() or .global_build_root() instead. + Part-of: + +2021-10-18 00:40:14 +0100 Tim-Philipp Müller + + * meson.build: + meson: update for dep.get_pkgconfig_variable() deprecation + ... in favour of dep.get_variable('foo', ..) which in some + cases allows for further cleanups in future since we can + extract variables from pkg-config dependencies as well as + internal dependencies using this mechanism. + Part-of: + +2021-10-18 00:03:47 +0100 Tim-Philipp Müller + + * meson.build: + meson: clean up conditional paths after version bump + Part-of: + +2021-05-28 07:54:32 +0200 Edward Hervey + + * gst/gststreams.c: + stream: Set the object name to the stream id + Makes it more meaningful in debug logs (instead of streamNNNNN) + Part-of: + +2021-10-19 10:24:42 -0400 Xavier Claessens + + * gst/meson.build: + Revert "meson: Link to objects instea of static helper library" + This reverts commit b19de413b94d228b1460b0899f9b41b2b5233943. + Part-of: + +2021-10-17 11:39:57 +0100 Tim-Philipp Müller + + * tools/meson.build: + tools: Define G_LOG_DOMAIN for various tools as well + Part-of: + +2021-10-01 15:29:36 +0100 Tim-Philipp Müller + + * gst/gst.c: + * gst/gst_private.h: + * gst/meson.build: + * libs/gst/base/meson.build: + * libs/gst/check/meson.build: + * libs/gst/controller/meson.build: + * libs/gst/net/meson.build: + gstreamer: define G_LOG_DOMAIN for all libraries + And get rid of weird way the define was done for core. + Fixes #634 + Part-of: + +2021-10-06 01:30:03 +0100 Tim-Philipp Müller + + * libs/gst/check/gstcheck.c: + libs: check: handle criticals and warnings for new gstreamer log domains + Part-of: + +2021-10-18 15:56:31 +0200 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: expose API for ignoring inactive pads + An inactive pad is a pad which, in live mode, hasn't yet received + a first buffer, but has been waited on at least once. + Exposing API to support this behaviour allows users of aggregator + subclasses to request pads, and not start pushing data on those + immediately, while avoiding systematic timeouts. + Subclasses must check in explicitly to this behavior, most likely + by exposing a user-facing property, and must check whether a pad + needs ignoring when aggregating. That is because by design, + aggregator subclasses don't get a list of "ready" pads, but instead + directly iterate element->sinkpads. + Part-of: + +2021-10-14 18:38:26 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson requirement to >= 0.59 + For monorepo build and ugly/bad, for advanced feature + option API like get_option('xyz').required(..) which + we use in combination with the 'gpl' option. + For rest of modules for consistency (people will likely + use newer features based on the top-level requirement). + Part-of: + +2020-06-27 00:39:00 -0400 Thibault Saunier + + * docs/meson.build: + * gst/meson.build: + * libs/gst/base/meson.build: + * libs/gst/check/libcheck/meson.build: + * libs/gst/check/meson.build: + * libs/gst/controller/meson.build: + * libs/gst/net/meson.build: + * meson.build: + meson: List libraries and their corresponding gir definition + Introduces a `libraries` variable that contains all libraries in a + list with the following format: + ``` meson + libraries = [ + [pkg_name, { + 'lib': library_object + 'gir': [ {full gir definition in a dict } ] + ], + .... + ] + ``` + It therefore refactors the way we build the gir so that we can reuse the + same information to build them against 'gstreamer-full' in gst-build + when linking statically + Part-of: + +2020-06-27 00:37:39 -0400 Thibault Saunier + + * gst/meson.build: + * libs/gst/base/meson.build: + * libs/gst/check/libcheck/meson.build: + * libs/gst/check/meson.build: + * libs/gst/controller/meson.build: + * libs/gst/net/meson.build: + meson: Mark files as files() + Making it more robust and future proof + And fix issues that it creates + Part-of: + +2021-10-08 13:56:02 +0300 Veronika Kremneva + + * gst/gstconfig.h.in: + gstreamer/gst/gstconfig.h.in: Add support for ARC64 architecture + Signed-off-by: Veronika Kremneva + Part-of: + +2021-09-25 23:51:52 -0300 Thibault Saunier + + * tests/check/libs/aggregator.c: + tests: aggregator: Take `TIMEOUT_FACTOR` env var into account + This env var is set in the CI so we grow the timeout as required + (when running in valgrind for example). + Trying to avoid hitting wrong timeout in valgrind job like in: + https://gitlab.freedesktop.org/tpm/gstreamer/-/jobs/14009456 + Part-of: + +2021-10-01 23:36:39 +0900 Seungha Yang + + * tests/check/gst/gstmeta.c: + tests: gstmeta: Fix failure on Windows + Windows doesn't support fork so every test will be performed in + one process. So the test_meta_custom_transform() is being + failed because "test-custom" custom meta is being used/defined in + another test test_meta_custom() as well. + Part-of: + +2021-09-23 17:07:09 +0530 Nirbheek Chauhan + + * tools/meson.build: + meson: Fix gst-launch build on UWP + The APIs we need from WinMM for higher timer resolution are only + available for non-UWP apps. The winmm library itself is still + available, so we need to disable the check. + Part-of: + +2021-10-05 08:51:08 -0400 Xavier Claessens + + * tools/gst-indent: + ci: Fix gst-indent path + It used to be downloaded into PATH, but we can now instead run it from + git. Also move it to top source dir instead of gstreamer subproject. + Part-of: + +2021-09-24 15:24:15 +0200 Robert Rosengren + + * docs/gst/running.md: + docs/running: Describe GST_REGISTRY_MODE + Change-Id: I45e9fe90137d4a8306c3a5e4f636fa43425b978f + Part-of: + +2021-05-10 12:50:18 +0200 Robert Rosengren + + * gst/gstregistrybinary.c: + registrybinary: registry file mode via GST_REGISTRY_MODE + In an embedded system where all services run as seperate users it is + useful to have the gstreamer registry readable by all so it can be + re-used, in similar manner as a host system where one user have seperate + applications running but all share same registry. + To make this possible introducing GST_REGISTRY_MODE for adjusting the + changing mode of the registry binary when finishing up with the + temporary file (which has restricted access). + Fixes: #692 + Part-of: + +2021-10-04 13:49:44 +0200 Jan Alexander Steffens (heftig) + + * plugins/elements/gstmultiqueue.c: + multiqueue: Fix query unref race on flush + If the query has already been destroyed at this point, GST_IS_QUERY will + read garbage, can return false and we will try to unref it again. + Instead, make note of whether the item is a query when we dequeue it. + Part-of: + +2021-09-29 11:23:38 +0200 Stéphane Cerveau + + * plugins/tracers/gstfactories.c: + core: remove outdated mention to gst-build + Part-of: + +2021-09-28 10:11:15 +1000 Brad Hards + + * README: + * RELEASE: + doc: update IRC links to OFTC + Part-of: + +2021-09-25 18:48:22 +0100 Tim-Philipp Müller + + * docs/gst/running.md: + gstreamer: docs: document GST_DEBUG env var evaluation order + Fixes #716 + Part-of: + +2021-09-26 01:07:02 +0100 Tim-Philipp Müller + + * meson.build: + Back to development + Part-of: + +2021-09-25 01:53:35 +0200 Mathieu Duponchelle + + * gst/gstbin.c: + * gst/gstvalue.h: + docs: link to concrete types rather than type macros + Latest hotdoc version extended the ignored, boilerplate macros + to now include TYPE macros for records as well + Linking to the concrete type is more informative + Part-of: + === release 1.19.2 === 2021-09-23 01:32:32 +0100 Tim-Philipp Müller -- 2.7.4