Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package gstreamer for openSUSE:Factory checked in at 2023-03-12 16:22:24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gstreamer (Old) and /work/SRC/openSUSE:Factory/.gstreamer.new.31432 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gstreamer" Sun Mar 12 16:22:24 2023 rev:85 rq:1070783 version:1.22.1 Changes: -------- --- /work/SRC/openSUSE:Factory/gstreamer/gstreamer.changes 2023-02-09 16:22:04.734364280 +0100 +++ /work/SRC/openSUSE:Factory/.gstreamer.new.31432/gstreamer.changes 2023-03-12 16:22:25.856285196 +0100 @@ -1,0 +2,61 @@ +Thu Mar 9 17:03:26 UTC 2023 - Bjørn Lie <bjorn....@gmail.com> + +- Update to version 1.22.1: + + Highlighted bugfixes: + - audio channel-mix: allow up to 64 channels (instead of up to + 63 channels) + - avfvideosrc: Don't wait on main thread for permissions + request + - avvidenc: avoid generating inaccurate output timestamps, + especially with variable framerate streams + - AV1 video codec caps signalling improvements in various + elements + - codectimestamper: Fix timestamping on sequence update + - d3d11overlaycompositor: fix texture width and height + - d3d11videosink: Fix rendering on external handle + - dashdemux2: fix seek operation taking a log time to finish + for some streams + - nvencoder: Fix B-frame encoding on Linux and min buffers in + auto GPU mode + - playbin3: fixing buffering for live pipelines + - playbin: fix potential deadlock when stopping stream with + subtitles visible + - redenc: fix setting of extension ID for twcc + - rtspsrc: improved compatibility with more broken RTSP servers + - v4l2h264dec: Fix Raspberry Pi4 will not play video in + application + - vtdec: fix jittery playback of H.264 Level 4.1 movies in + macOS + - vtdec: Fix non-deterministic frame output after flushing + seeks + - vtenc: fix handling of interlaced ProRes on Apple M1 hardware + - vtenc: don't advertise ARGB/RGBA64 input caps on M1 Pro/Max + with macOS <13 + - wasapi2src: Fix loopback capture on Windows 10 Anniversary + Update + - tools: better handling of non-ASCII command line arguments on + Windows + - gst-libav: fix build against newer ffmpeg versions + - gst-python: Use arch-specific install dir for gi overrides + - cerbero: Fix setuptools site.py breakage in Python 3.11 + - macOS packages: Fix broken binaries on macos < 11.0 + - various bug fixes, memory leak fixes, and other stability and + reliability improvements + + gstreamer: + - buffer: fix copy meta reference debug log formatting + - bin: Don't unlock unlocked mutex in gst_bin_remove_func() + - pad: Don't leak user_data in gst_pad_start_task() + - aggregator: Always lock aggpad around update_time_level + - inputselector: Avoid potential deadlock when shutting down, + e.g. playbin with subtitles + - multiqueue: Handle use-interleave latency live pipelines, + fixing buffering for live pipelines in playbin3 + - GstBaseSrc: fix transfer annotation for fixate() virtual + method + - GstBaseSrc, GstPushSrc: add nullable annotations to virtual + methods + - tools: Make sure UTF-8 encoded command line arguments on + Windows +- Rebase patches with quilt. + +------------------------------------------------------------------- Old: ---- gstreamer-1.22.0.tar.xz New: ---- gstreamer-1.22.1.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gstreamer.spec ++++++ --- /var/tmp/diff_new_pack.q84ZSa/_old 2023-03-12 16:22:26.588288420 +0100 +++ /var/tmp/diff_new_pack.q84ZSa/_new 2023-03-12 16:22:26.596288455 +0100 @@ -19,7 +19,7 @@ %define gst_branch 1.0 Name: gstreamer -Version: 1.22.0 +Version: 1.22.1 Release: 0 Summary: Streaming-Media Framework Runtime License: LGPL-2.1-or-later ++++++ gstreamer-1.22.0.tar.xz -> gstreamer-1.22.1.tar.xz ++++++ ++++ 1638 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/ChangeLog new/gstreamer-1.22.1/ChangeLog --- old/gstreamer-1.22.0/ChangeLog 2023-01-23 20:29:57.703900600 +0100 +++ new/gstreamer-1.22.1/ChangeLog 2023-03-04 14:42:56.087887300 +0100 @@ -1,3 +1,143 @@ +=== release 1.22.1 === + +2023-03-04 13:42:32 +0000 Tim-Philipp Müller <t...@centricular.com> + + * NEWS: + * RELEASE: + * gstreamer.doap: + * meson.build: + Release 1.22.1 + +2023-03-02 15:51:08 +0200 Vivia Nikolaidou <vi...@ahiru.eu> + + * plugins/elements/gstinputselector.c: + * plugins/elements/gstinputselector.h: + inputselector: Avoid deadlock when shutting down + Transition from PLAYING to PAUSED unschedules any pending clock wait, + but there was no guard that prevented another input buffer then waiting + again while in PAUSED before dataflow stops. Use a new `playing` flag to + avoid this, and exit the chain function if instead of playing we're now + flushing. Basically the same as the clocksync element. + Closes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1772 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4099> + +2023-01-28 02:32:13 +0900 Seungha Yang <seun...@centricular.com> + + * tools/gst-inspect.c: + * tools/gst-launch.c: + * tools/gst-stats.c: + * tools/gst-typefind.c: + tools: Make sure UTF-8 encoded command line arguments on Windows + On Windows, arguments passed in main() are system codepage + encoded and might not be valid UTF-8 string. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4072> + +2023-02-21 20:13:57 -0700 James Hilliard <james.hillia...@gmail.com> + + * gst/gstbuffer.c: + buffer: fix copy meta reference debug log formatting + Fixes the following valgrind error: + ==616== Conditional jump or move depends on uninitialised value(s) + ==616== at 0x4900E34: gst_debug_print_object (gstinfo.c:1143) + ==616== by 0x49010B6: gst_info_printf_pointer_extension_func (gstinfo.c:1215) + ==616== by 0x4959FDB: __gst_printf_pointer_extension_serialize (printf-extension.c:47) + ==616== by 0x495A487: printf_postprocess_args (vasnprintf.c:258) + ==616== by 0x495A52C: __gst_vasnprintf (vasnprintf.c:290) + ==616== by 0x4959F8F: __gst_vasprintf (printf.c:154) + ==616== by 0x4901C1F: gst_debug_message_get (gstinfo.c:791) + ==616== by 0x4901C75: _gst_debug_log_preamble (gstinfo.c:1431) + ==616== by 0x4903208: gst_debug_log_default (gstinfo.c:1575) + ==616== by 0x49020BA: gst_debug_log_full_valist (gstinfo.c:624) + ==616== by 0x490211D: gst_debug_log_valist (gstinfo.c:656) + ==616== by 0x49021AD: gst_debug_log (gstinfo.c:533) + ==616== by 0x48DDC11: gst_buffer_copy_into (gstbuffer.c:693) + ==616== by 0x48DF5F1: gst_buffer_copy_with_flags (gstbuffer.c:727) + ==616== by 0x48DF640: gst_buffer_copy_deep (gstbuffer.c:756) + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4038> + +2023-02-22 11:51:58 +0000 Tim-Philipp Müller <t...@centricular.com> + + * po/fur.po: + gstreamer: update translations + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4041> + +2023-02-09 13:53:48 +0100 Jan Alexander Steffens (heftig) <jan.steff...@ltnglobal.com> + + * gst/gstpad.c: + pad: Don't leak user_data in gst_pad_start_task + When the task already exists, we forgot to free the passed `user_data`. + This wasn't an issue for most C code, which doesn't pass a + `GDestroyNotify`, but bindings such as gstreamer-rs do! + That said, allocating a trampoline in gstreamer-rs just for it to get + thrown away again is awkward. Maybe we need a `gst_pad_resume_task`? + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3925> + +2023-02-07 13:43:06 +0000 medithe <medi...@gmx.at> + + * gst/gstbin.c: + gstreamer: bin: Don't unlock unlocked mutex in gst_bin_remove_func() + Calling `g_mutex_unlock(mutex)` leads to an undefined behavior if the + mutex is not locked by the current thread. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3910> + +2023-01-27 19:29:24 +0100 Mathieu Duponchelle <math...@centricular.com> + + * libs/gst/base/gstbasesrc.h: + BaseSrc: fix transfer annotation for fixate virtual method + The fixate virtual method has the same semantics as gst_caps_fixate(), + so the caps parameter must be marked as (transfer full). + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3839> + +2023-01-26 15:42:18 +0100 Mathieu Duponchelle <math...@centricular.com> + + * libs/gst/base/gstbasesrc.h: + * libs/gst/base/gstpushsrc.h: + BaseSrc, PushSrc: add nullable annotations to virtual methods + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3833> + +2023-01-26 10:33:26 +0100 Jan Alexander Steffens (heftig) <jan.steff...@ltnglobal.com> + + * libs/gst/base/gstaggregator.c: + aggregator: Warn about the right segment's format + We were checking the head segment here, not the current segment. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3819> + +2020-09-02 17:59:30 +0200 Jan Alexander Steffens (heftig) <jan.steff...@ltnglobal.com> + + * libs/gst/base/gstaggregator.c: + aggregator: Always lock aggpad around update_time_level + `aggpad->segment` is protected by the `aggpad`'s object lock. We need to + take the lock before calling `update_time_level`. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3819> + +2023-01-25 13:26:08 +0200 Sebastian Dröge <sebast...@centricular.com> + + * gst/gsttypefind.c: + gst: Fix gst_type_find_peek() return value annotation + It's not possible to annotate a in-parameter for a return value array as + the array length. Both are assumed to have the same direction and the + current annotation causes the size parameter to be considered an out + parameter. + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3814> + +2023-01-23 17:26:07 +0100 Edward Hervey <edw...@centricular.com> + + * plugins/elements/gstmultiqueue.c: + multiqueue: Handle use-interleave latency live pipelines + Due to the dynamic nature of multiqueue, when `use-interleave` is used we can't + report a maximum tolerated latency (when queried) since it is calculated + dynamically. + When in such live pipelines, we need to make sure multiqueue can handle the + lowest global latency (provided by this event). Failure to do that would + result in not providing enough buffering for a realtime pipeline. + Fixes #1732 + Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3810> + +2023-01-25 16:46:42 +0000 Tim-Philipp Müller <t...@centricular.com> + + * meson.build: + Back to development + === release 1.22.0 === 2023-01-23 19:29:34 +0000 Tim-Philipp Müller <t...@centricular.com> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/NEWS new/gstreamer-1.22.1/NEWS --- old/gstreamer-1.22.0/NEWS 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/NEWS 2023-03-04 14:42:32.000000000 +0100 @@ -2,10 +2,13 @@ GStreamer 1.22.0 was originally released on 23 January 2023. +The latest bug-fix release in the stable 1.22 series is 1.22.1 and was +released on 04 March 2023. + See https://gstreamer.freedesktop.org/releases/1.22/ for the latest version of this document. -Last updated: Monday 23 January 2023, 17:00 UTC (log) +Last updated: Monday 04 March 2023, 13:00 UTC (log) Introduction @@ -298,8 +301,8 @@ - This is enabled by setting the instant-uri property to true, setting the URI to switch to immediately, and then disabling the instant-uri property again afterwards. -- playbin3, decodebin3, uridecodebin3, parsebin, and urisrc are no - longer experimental +- playbin3, decodebin3, uridecodebin3, parsebin, and urisourcebin are + no longer experimental - They were originally marked as âtechnology previewâ but have since seen extensive usage in production settings, so are considered ready for general use now. @@ -819,9 +822,9 @@ New MP4 muxer + Fragmented MP4 muxer -- fmp4mux: New fragmented MP4/ISOBMFF/CMAF muxer for generating - e.g. DASH/HLS media fragments. -- isomp4mux: New non-fragmented, normal MP4 muxer. +- isofmp4mux, cmafmux, dashmp4mux, onviffmp4mux: New fragmented + MP4/ISOBMFF/CMAF muxer for generating e.g. DASH/HLS media fragments. +- isomp4mux, onvifmp4mux: New non-fragmented, normal MP4 muxer. Both plugins provides elements that replace the existing qtmux/mp4mux element from gst-plugins-good. While not feature-equivalent yet, the new @@ -1217,6 +1220,240 @@ 1.22.0 was originally released on 23 January 2023. +1.22.1 + +The first 1.22 bug-fix release (1.22.1) was released on 04 March 2023. + +This release only contains bugfixes and it should be safe to update from +1.22.0. + +Highlighted bugfixes in 1.22.1 + +- audio channel-mix: allow up to 64 channels (instead of up to 63 + channels) +- avfvideosrc: Donât wait on main thread for permissions request +- avvidenc: avoid generating inaccurate output timestamps, especially + with variable framerate streams +- AV1 video codec caps signalling improvements in various elements +- codectimestamper: Fix timestamping on sequence update +- d3d11overlaycompositor: fix texture width and height +- d3d11videosink: Fix rendering on external handle +- dashdemux2: fix seek operation taking a log time to finish for some + streams +- nvencoder: Fix B-frame encoding on Linux and min buffers in auto GPU + mode +- playbin3: fixing buffering for live pipelines +- playbin: fix potential deadlock when stopping stream with subtitles + visible +- redenc: fix setting of extension ID for twcc +- rtspsrc: improved compatibility with more broken RTSP servers +- v4l2h264dec: Fix Raspberry Pi4 will not play video in application +- vtdec: fix jittery playback of H.264 Level 4.1 movies in macOS +- vtdec: Fix non-deterministic frame output after flushing seeks +- vtenc: fix handling of interlaced ProRes on Apple M1 hardware +- vtenc: donât advertise ARGB/RGBA64 input caps on M1 Pro/Max with + macOS <13 +- wasapi2src: Fix loopback capture on Windows 10 Anniversary Update +- tools: better handling of non-ASCII command line arguments on + Windows +- gst-libav: fix build against newer ffmpeg versions +- gst-python: Use arch-specific install dir for gi overrides +- cerbero: Fix setuptools site.py breakage in Python 3.11 +- macOS packages: Fix broken binaries on macos < 11.0 +- various bug fixes, memory leak fixes, and other stability and + reliability improvements + +gstreamer + +- buffer: fix copy meta reference debug log formatting +- bin: Donât unlock unlocked mutex in gst_bin_remove_func() +- pad: Donât leak user_data in gst_pad_start_task() +- aggregator: Always lock aggpad around update_time_level +- inputselector: Avoid potential deadlock when shutting down, + e.g. playbin with subtitles +- multiqueue: Handle use-interleave latency live pipelines, fixing + buffering for live pipelines in playbin3 +- GstBaseSrc: fix transfer annotation for fixate() virtual method +- GstBaseSrc, GstPushSrc: add nullable annotations to virtual methods +- tools: Make sure UTF-8 encoded command line arguments on Windows + +gst-plugins-base + +- alsasink: Fix stall when going from PLAYING to NULL (stucked at + PAUSED) with uac1 gadget +- appsrc: Donât chain up BaseSrc::negotiate() +- audio: channel-mix: Fix channel count limit to be able to equal 64 +- gldisplay: Mark gst_gl_display_create_context() other_context + parameter as nullable +- gldisplay: Remove unused code +- gstglwindow_x11.c: Fix colormap leak +- gl/cocoa: Return a strong ref to the parent GstGLContext +- rtspconnection: Annotate RTSP message and RTSP events parameters + correctly +- sdp, typefind: Fix some annotations +- sdp: gstmikey: gst_mikey_message_to_caps: extract ROC from first + crypto session +- subparse: Properly forward segment seqnum +- uridecodebin: Set source element to READY before querying it +- uritranscodebin: Fix unref of NULL +- gst-play-1.0: Donât force accurate seeking + +gst-plugins-good + +- adaptivedemux2: Fix buffering threshold initialization +- dashdemux2: the seek operation takes a log time to finish for some + streams +- glvideomixer: Keep a reference to the underlying pad +- qtdemux: Donât emit GstSegment correcting start time when in MSE + mode +- qtdemux: Handle moov atom length=0 case by reading until the end +- qtdemux, qtmux: Drop av1C version 0 parsing and implement version 1 + parsing/writing +- qtmux: Fix assertion on caps update +- redenc: fix setting of extension ID for twcc +- rtspsrc: Use the correct vfunc for the push-backchannel-sample + action signal +- rtpssrcdemux: set different stream-id on each src pad +- udpsrc: GstSocketTimestampMessage only for SCM_TIMESTAMPNS +- v4l2h264dec: Fix Raspberry Pi4 will not play video in application + +gst-plugins-bad + +- aom: Include stream-format and alignment in the AV1 caps +- av1parser, h265parser: Fix some code defects +- av1parser: Donât consider unknown metadata OBUs a bitstream error +- avfvideosrc: Donât wait on main thread for permissions request +- ccconverter: donât debug a potentially freed filter caps +- codectimestamper: Fix timestamping on sequence update +- codecparsers: {h264, h265}bitwriter: Remove redundant condition + checks +- codecs: decoders: fail early if no input caps have been provided for + all new decoder base classes +- closedcaption: Donât leak caps event +- curlhttpsrc: Add curl anyauth option +- d3d11overlaycompositor: fix texture width and height +- d3d11videosink: Fix rendering on external handle +- h265parse: Always set profile on src caps +- msdkav1enc: fix the category for msdkav1enc debug +- nvcodec: improve error reporting on plugin init +- nvencoder: Fix b-frame encoding on Linux +- nvencoder: Fix min buffers parameter of allocation query in auto GPU + mode +- nvvp9dec: Fix return value +- qsvav1enc, amfav1enc: Set stream-format on caps +- vtdec: Jittery playback of H.264 Level 4.1 movies in macOS (both + x86_64 and arm64) +- vtdec: Fix DPB size calculations not taking values from SPS into + account +- vtdec: Fix not waiting for async frames when flushing +- vtenc: Disable ARGB/RGBA64 caps on M1 Pro/Max with macOS <13 +- vtenc: Fix checking for certain CPU variants when running in VMs +- vtenc: Disable HW acceleration for interlaced ProRes +- va: Avoid the array index overflow when filling 8x8 scaling list. +- va: Fix some code defects +- vah265enc: Use helper to update properties. +- vulkan: memory: Flush non coherent memory after write. +- wasapi2src: Fix loopback capture on Windows 10 Anniversary Update +- webrtcbin: small stats improvements +- win32ipcutils: Add missing include +- wpe: Logging fixes for the WebExtension + +gst-plugins-ugly + +- mpegpsdemux: Ignore DTS if PTS < DTS + +gst-libav + +- avauddec, avviddec: Free packet side data after usage +- avviddec: change + AV_CODEC_CAP_AUTO_THREADS->AV_CODEC_CAP_OTHER_THREADS to fix build + against newer ffmpeg versions +- Memory leak in â av_packet_add_side_dataâ in + /lib/x86_64-linux-gnu/libavcodec.so reading the file + clock_odd_size_RLE_g1597902.avi +- avvidenc: Donât take ffmpeg timestamps verbatim but only use them to + calculate DTS + +gst-rtsp-server + +- No changes + +gstreamer-vaapi + +- vaapi: Skip plugin pc file for shared plugins + +gstreamer-sharp + +- No changes + +gst-omx + +- No changes + +gst-python + +- gst-python: Use arch-specific install dir for gi overrides + +gst-editing-services + +- No changes + +gst-validate + gst-integration-testsuites + +- validate:scenario: sink refs when building +- tests: Fix known issue definition location for unit tests and how we + handle them in validate launcher +- tests: mark elements_srtp.test_play test as flaky +- Fix gstreamer-validate-1.0 dependency name +- validate-scenario: fix g-i warning in annotation +- validate: Fix gst_validate_execute_action annotation + +gst-examples + +- webrtc examples: Use webrtc.gstreamer.net +- webrtc_sendrecv.py: Various fixes + +Development build environment + +- gst-env: Handle installing python modules to dist-packages +- meson: Allow sysdeps to be forced as fallback subprojects +- meson: Switch dav1d wrap to a tarball and update to dav1d 1.1.0 + +Cerbero build tool and packaging changes in 1.22.1 + +- macos: Fix broken binaries on macos < 11.0 +- orc: Update pthread_jit_write_protect fix for macOS/iOS +- dav1d: Update to 1.1.0 +- libsrtp: update to v2.5.0 +- rustup: Update to 1.25.2 +- rust: Update to 1.67; cargo-c to 0.9.16 +- cerbero: Donât error out if bindir already exists +- Fix setuptools site.py breakage in Python 3.11, bump + gobject-introspection, bump windows image +- cerbero: Retry if cargo update fails on macOS +- gst-plugins-rs: Build glib/gio bindings with 2.74 API support + +Contributors to 1.22.1 + +Alessandro Bono, Arun Raghavan, Bart Van Severen, Carlos Falgueras +GarcÃa, Célestin Marot, David Svensson Fors, Edward Hervey, Enrique +Ocaña González, Frank Dana, Guillaume Desmottes, He Junyan, James +Hilliard, Jan Alexander Steffens (heftig), Jan Schmidt, Jordan Petridis, +Mathieu Duponchelle, Matthew Waters, medithe, Mengkejiergeli Ba, Nicolas +Beland, Nirbheek Chauhan, Patricia Muscalu, Pawel Stawicki, Philippe +Normand, Piotr BrzeziÅski, Rajneesh Soni, Robert Rosengren, Sanchayan +Maity, Sebastian Dröge, Seungha Yang, Simon Himmelbauer, Thibault +Saunier, Tim-Philipp Müller, Tristan van Berkom, U. Artie Eoff, VÃctor +Manuel Jáquez Leal, Vivia Nikolaidou, Xuchen Yang, Yinhang Liu, + +⦠and many others who have contributed bug reports, translations, sent +suggestions or helped testing. Thank you all! + +List of merge requests and issues fixed in 1.22.1 + +- List of Merge Requests applied in 1.22.1 +- List of Issues fixed in 1.22.1 + Schedule for 1.24 Our next major feature release will be 1.24, and 1.23 will be the diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/RELEASE new/gstreamer-1.22.1/RELEASE --- old/gstreamer-1.22.0/RELEASE 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/RELEASE 2023-03-04 14:42:32.000000000 +0100 @@ -1,4 +1,4 @@ -This is GStreamer core 1.22.0. +This is GStreamer core 1.22.1. The GStreamer team is thrilled to announce a new major feature release of your favourite cross-platform multimedia framework! diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/gst/gstbin.c new/gstreamer-1.22.1/gst/gstbin.c --- old/gstreamer-1.22.0/gst/gstbin.c 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/gst/gstbin.c 2023-03-04 14:42:32.000000000 +0100 @@ -1567,8 +1567,10 @@ GST_OBJECT_LOCK (element); elem_name = g_strdup (GST_ELEMENT_NAME (element)); - if (GST_OBJECT_PARENT (element) != GST_OBJECT_CAST (bin)) + if (GST_OBJECT_PARENT (element) != GST_OBJECT_CAST (bin)) { + GST_OBJECT_UNLOCK (element); goto not_in_bin; + } /* remove the parent ref */ GST_OBJECT_PARENT (element) = NULL; @@ -1819,7 +1821,6 @@ /* ERROR handling */ not_in_bin: { - GST_OBJECT_UNLOCK (element); GST_OBJECT_UNLOCK (bin); GST_WARNING_OBJECT (bin, "Element '%s' is not in bin", elem_name); g_free (elem_name); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/gst/gstbuffer.c new/gstreamer-1.22.1/gst/gstbuffer.c --- old/gstreamer-1.22.0/gst/gstbuffer.c 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/gst/gstbuffer.c 2023-03-04 14:42:32.000000000 +0100 @@ -691,7 +691,8 @@ } else if (deep && gst_meta_api_type_has_tag (info->api, _gst_meta_tag_memory_reference)) { GST_CAT_DEBUG (GST_CAT_BUFFER, - "don't copy meta with memory references %" GST_PTR_FORMAT, meta); + "don't copy memory reference meta %p of API type %s", meta, + g_type_name (info->api)); } else if (info->transform_func) { GstMetaTransformCopy copy_data; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/gst/gstpad.c new/gstreamer-1.22.1/gst/gstpad.c --- old/gstreamer-1.22.0/gst/gstpad.c 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/gst/gstpad.c 2023-03-04 14:42:32.000000000 +0100 @@ -6324,6 +6324,7 @@ task = GST_PAD_TASK (pad); if (task == NULL) { task = gst_task_new (func, user_data, notify); + notify = NULL; gst_task_set_lock (task, GST_PAD_GET_STREAM_LOCK (pad)); gst_task_set_enter_callback (task, pad_enter_thread, pad, NULL); gst_task_set_leave_callback (task, pad_leave_thread, pad, NULL); @@ -6345,6 +6346,10 @@ res = gst_task_set_state (task, GST_TASK_STARTED); GST_OBJECT_UNLOCK (pad); + /* free user_data if it wasn't used for gst_task_new */ + if (notify) + notify (user_data); + return res; /* ERRORS */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/gst/gsttypefind.c new/gstreamer-1.22.1/gst/gsttypefind.c --- old/gstreamer-1.22.0/gst/gsttypefind.c 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/gst/gsttypefind.c 2023-03-04 14:42:32.000000000 +0100 @@ -115,7 +115,7 @@ * the stream. The returned memory is valid until the typefinding function * returns and must not be freed. * - * Returns: (transfer none) (array length=size) (nullable): the + * Returns: (transfer none) (nullable): the * requested data, or %NULL if that data is not available. */ const guint8 * diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/gstreamer.doap new/gstreamer-1.22.1/gstreamer.doap --- old/gstreamer-1.22.0/gstreamer.doap 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/gstreamer.doap 2023-03-04 14:42:32.000000000 +0100 @@ -40,6 +40,16 @@ <release> <Version> + <revision>1.22.1</revision> + <branch>1.22</branch> + <name></name> + <created>2023-03-04</created> + <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.22.1.tar.xz" /> + </Version> + </release> + + <release> + <Version> <revision>1.22.0</revision> <branch>main</branch> <name></name> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/libs/gst/base/gstaggregator.c new/gstreamer-1.22.1/libs/gst/base/gstaggregator.c --- old/gstreamer-1.22.0/libs/gst/base/gstaggregator.c 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/libs/gst/base/gstaggregator.c 2023-03-04 14:42:32.000000000 +0100 @@ -1636,7 +1636,7 @@ PAD_FLUSH_UNLOCK (aggpad); } -/* Must be called with the the PAD_LOCK held */ +/* Must be called with the PAD_LOCK and OBJECT_LOCK held */ static void update_time_level (GstAggregatorPad * aggpad, gboolean head) { @@ -3105,7 +3105,9 @@ else aggpad->priv->tail_position = timestamp; + GST_OBJECT_LOCK (aggpad); update_time_level (aggpad, head); + GST_OBJECT_UNLOCK (aggpad); } /* @@ -3198,7 +3200,7 @@ GST_WARNING_OBJECT (aggpad, "Ignoring request of selecting the first start time " "as the segment is a %s segment instead of a time segment", - gst_format_get_name (aggpad->segment.format)); + gst_format_get_name (aggpad->priv->head_segment.format)); } GST_OBJECT_UNLOCK (aggpad); break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/libs/gst/base/gstbasesrc.h new/gstreamer-1.22.1/libs/gst/base/gstbasesrc.h --- old/gstreamer-1.22.0/libs/gst/base/gstbasesrc.h 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/libs/gst/base/gstbasesrc.h 2023-03-04 14:42:32.000000000 +0100 @@ -184,6 +184,14 @@ /* decide on caps */ gboolean (*negotiate) (GstBaseSrc *src); /* called if, in negotiation, caps need fixating */ + /** + * GstBaseSrcClass::fixate: + * @caps: (transfer full): + * + * Called if, in negotiation, caps need fixating. + * + * Returns: (transfer full): the fixated caps + */ GstCaps * (*fixate) (GstBaseSrc *src, GstCaps *caps); /* notify the subclass of new caps */ gboolean (*set_caps) (GstBaseSrc *src, GstCaps *caps); @@ -241,7 +249,7 @@ /** * GstBaseSrcClass::create: - * @buf: (inout): + * @buf: (inout) (nullable): * * Ask the subclass to create a buffer with @offset and @size, the default * implementation will call alloc if no allocated @buf is provided and then call fill. @@ -250,7 +258,7 @@ GstBuffer **buf); /** * GstBaseSrcClass::alloc: - * @buf: (out): + * @buf: (out) (nullable): * * Ask the subclass to allocate an output buffer with @offset and @size, the default * implementation will use the negotiated allocator. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/libs/gst/base/gstpushsrc.h new/gstreamer-1.22.1/libs/gst/base/gstpushsrc.h --- old/gstreamer-1.22.0/libs/gst/base/gstpushsrc.h 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/libs/gst/base/gstpushsrc.h 2023-03-04 14:42:32.000000000 +0100 @@ -72,7 +72,7 @@ /** * GstPushSrcClass::create: - * @buf: (inout): + * @buf: (inout) (nullable): * * Ask the subclass to create a buffer, the default implementation will call alloc if * no allocated @buf is provided and then call fill. @@ -80,7 +80,7 @@ GstFlowReturn (*create) (GstPushSrc *src, GstBuffer **buf); /** * GstPushSrcClass::alloc: - * @buf: (out): + * @buf: (out) (nullable): * * Allocate memory for a buffer. */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/meson.build new/gstreamer-1.22.1/meson.build --- old/gstreamer-1.22.0/meson.build 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/meson.build 2023-03-04 14:42:32.000000000 +0100 @@ -1,5 +1,5 @@ project('gstreamer', 'c', - version : '1.22.0', + version : '1.22.1', meson_version : '>= 0.62', default_options : [ 'warning_level=1', 'buildtype=debugoptimized' ]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/plugins/elements/gstinputselector.c new/gstreamer-1.22.1/plugins/elements/gstinputselector.c --- old/gstreamer-1.22.0/plugins/elements/gstinputselector.c 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/plugins/elements/gstinputselector.c 2023-03-04 14:42:32.000000000 +0100 @@ -853,6 +853,13 @@ continue; } + if (!sel->playing) { + GST_DEBUG_OBJECT (selpad, "Waiting for playing"); + GST_INPUT_SELECTOR_WAIT (sel); + GST_DEBUG_OBJECT (selpad, "Done waiting"); + continue; + } + /* FIXME: If no upstream latency was queried yet, do one now */ clock_id = gst_clock_new_single_shot_id (clock, @@ -1432,6 +1439,7 @@ g_mutex_init (&sel->lock); g_cond_init (&sel->cond); sel->eos = FALSE; + sel->playing = FALSE; sel->upstream_latency = 0; sel->last_output_ts = GST_CLOCK_TIME_NONE; @@ -2029,6 +2037,12 @@ GST_INPUT_SELECTOR_BROADCAST (self); GST_INPUT_SELECTOR_UNLOCK (self); break; + case GST_STATE_CHANGE_PAUSED_TO_PLAYING:{ + GST_INPUT_SELECTOR_LOCK (self); + self->playing = TRUE; + GST_INPUT_SELECTOR_BROADCAST (self); + GST_INPUT_SELECTOR_UNLOCK (self); + } case GST_STATE_CHANGE_PLAYING_TO_PAUSED:{ GList *walk; @@ -2052,6 +2066,10 @@ case GST_STATE_CHANGE_PAUSED_TO_READY: gst_input_selector_reset (self); break; + case GST_STATE_CHANGE_PLAYING_TO_PAUSED: + GST_INPUT_SELECTOR_LOCK (self); + self->playing = FALSE; + GST_INPUT_SELECTOR_UNLOCK (self); default: break; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/plugins/elements/gstinputselector.h new/gstreamer-1.22.1/plugins/elements/gstinputselector.h --- old/gstreamer-1.22.0/plugins/elements/gstinputselector.h 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/plugins/elements/gstinputselector.h 2023-03-04 14:42:32.000000000 +0100 @@ -81,6 +81,7 @@ gboolean eos; gboolean eos_sent; gboolean flushing; + gboolean playing; GstClockTime upstream_latency; GstClockTime last_output_ts; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/plugins/elements/gstmultiqueue.c new/gstreamer-1.22.1/plugins/elements/gstmultiqueue.c --- old/gstreamer-1.22.0/plugins/elements/gstmultiqueue.c 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/plugins/elements/gstmultiqueue.c 2023-03-04 14:42:32.000000000 +0100 @@ -2964,6 +2964,34 @@ } switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_LATENCY: + { + GstClockTime latency = GST_CLOCK_TIME_NONE; + gst_event_parse_latency (event, &latency); + if (GST_CLOCK_TIME_IS_VALID (latency)) { + GST_MULTI_QUEUE_MUTEX_LOCK (mq); + if (latency > mq->min_interleave_time) { + /* Due to the dynamic nature of multiqueue, whe `use-interleave` is + * used we can't report a maximum tolerated latency (when queried) + * since it is calculated dynamically. + * + * When in such live pipelines, we need to make sure multiqueue can + * handle the lowest global latency (provided by this event). Failure + * to do that would result in not providing enough buffering for a + * realtime pipeline. + */ + GST_DEBUG_OBJECT (mq, + "Raising minimum interleave time to %" GST_TIME_FORMAT, + GST_TIME_ARGS (latency)); + mq->min_interleave_time = latency; + if (mq->use_interleave) + calculate_interleave (mq, NULL); + } + GST_MULTI_QUEUE_MUTEX_UNLOCK (mq); + } + ret = gst_pad_push_event (sinkpad, event); + } + break; case GST_EVENT_RECONFIGURE: GST_MULTI_QUEUE_MUTEX_LOCK (mq); if (sq->srcresult == GST_FLOW_NOT_LINKED) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/po/fur.po new/gstreamer-1.22.1/po/fur.po --- old/gstreamer-1.22.0/po/fur.po 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/po/fur.po 2023-03-04 14:42:32.000000000 +0100 @@ -1,22 +1,23 @@ # Friulian translation for gstreamer package of GStreamer project. # This file is put in the public domain. -# Fabio Tomat <f.t.pub...@gmail.com>, 2017. +# Fabio Tomat <f.t.pub...@gmail.com>, 2023. # msgid "" msgstr "" -"Project-Id-Version: gstreamer 1.10.0\n" +"Project-Id-Version: gstreamer 1.21.90\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-11 15:40+0000\n" -"PO-Revision-Date: 2017-03-19 15:41+0100\n" -"Last-Translator: Fabio Tomat <f.t.pub...@gmail.com>\n" +"POT-Creation-Date: 2023-02-22 11:51+0000\n" +"PO-Revision-Date: 2023-01-28 11:40+0100\n" +"Last-Translator: Fabio T. <f.t.pub...@gmail.com>\n" "Language-Team: Friulian <f.t.pub...@gmail.com>\n" "Language: fur\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 1.8.12\n" +"X-Bugs: Report translation errors to the Language-Team address.\n" +"X-Editor: HaiPO 1.4 beta\n" +"X-Generator: Poedit 3.2.2\n" msgid "Print the GStreamer version" msgstr "Stampe la version di GStreamer" @@ -25,11 +26,12 @@ msgstr "Fâs deventâ ducj i avertiments fatâi" msgid "Print available debug categories and exit" -msgstr "" +msgstr "Stampe lis categoriis di debug disponibilis e jes" msgid "" "Default debug level from 1 (only error) to 9 (anything) or 0 for no output" msgstr "" +"Nivel di debug predefinît di 1 (dome erôr) a 9 (dut) opûr 0 par no vê output" msgid "LEVEL" msgstr "NIVEL" @@ -38,26 +40,30 @@ "Comma-separated list of category_name:level pairs to set specific levels for " "the individual categories. Example: GST_AUTOPLUG:5,GST_ELEMENT_*:3" msgstr "" +"Liste separade di virgulis di cubiis non_categorie:nivel par stabilî i nivei " +"specifics pes categoriis individuâls. Esempli: GST_AUTOPLUG:5,GST_ELEMENT_*:3" msgid "LIST" msgstr "LISTE" msgid "Disable colored debugging output" -msgstr "" +msgstr "Disabilite la jessude di debug colorade" msgid "" "Changes coloring mode of the debug log. Possible modes: off, on, disable, " "auto, unix" msgstr "" +"Al cambie la modalitât di colorazion dal regjistri di debug. Lis modalitât " +"pussibilis: off, on, disable, auto, unix" msgid "Disable debugging" -msgstr "" +msgstr "Disabilite il debug" msgid "Enable verbose plugin loading diagnostics" -msgstr "" +msgstr "Abilite lis diagnostichis prolissis pal cjariament dai plugins" msgid "Colon-separated paths containing plugins" -msgstr "" +msgstr "Percors separâts di â:â che a contegnin i plugins" msgid "PATHS" msgstr "PERCORS" @@ -66,18 +72,24 @@ "Comma-separated list of plugins to preload in addition to the list stored in " "environment variable GST_PLUGIN_PATH" msgstr "" +"Liste separade di â:â di plugins di pre-cjariâ in zonte ae liste archividade " +"te variabile di ambient GST_PLUGIN_PATH" msgid "PLUGINS" msgstr "PLUGIN" msgid "Disable trapping of segmentation faults during plugin loading" msgstr "" +"Disabilite la cature di vuascj di segmentazion dilunc il cjariament dai " +"plugins" msgid "Disable updating the registry" -msgstr "" +msgstr "Disabilite l'inzornament dal regjistri" msgid "Disable spawning a helper process while scanning the registry" msgstr "" +"Disabilite la creazion di un procès aiutant intant che si analize il " +"regjistri" msgid "GStreamer Options" msgstr "Opzions GStreamer" @@ -90,69 +102,75 @@ msgstr "Opzion no cognossude" msgid "GStreamer encountered a general core library error." -msgstr "" +msgstr "GStreamer al à riscontrât un erôr gjenerâl de librarie cûr." msgid "" "GStreamer developers were too lazy to assign an error code to this error." msgstr "" +"I svilupadôrs di GStreamer a jerin masse pelandrons par assegnâ un codiç di " +"erôr a chest erôr." msgid "Internal GStreamer error: code not implemented." -msgstr "" +msgstr "Erôr interni di GStreamer: codiç no implementât." msgid "" "GStreamer error: state change failed and some element failed to post a " "proper error message with the reason for the failure." msgstr "" +"Erôr di GStreamer: il cambiament di stât al à falît e cualchi element nol è " +"rivât a publicâ un messaç di erôr adat cul motîf relatîf al faliment." msgid "Internal GStreamer error: pad problem." -msgstr "" +msgstr "Erôr interni di GStreamer: probleme di imbotidure." msgid "Internal GStreamer error: thread problem." -msgstr "" +msgstr "Erôr interni di GStreamer: probleme di thread." msgid "GStreamer error: negotiation problem." -msgstr "" +msgstr "Erôr di GStreamer: probleme di negoziazion." msgid "Internal GStreamer error: event problem." -msgstr "" +msgstr "Erôr interni di GStreamer: probleme di event." msgid "Internal GStreamer error: seek problem." -msgstr "" +msgstr "Erôr interni di GStreamer: probleme di ricercje." msgid "Internal GStreamer error: caps problem." -msgstr "" +msgstr "Erôr interni di GStreamer: probleme di sottitui." msgid "Internal GStreamer error: tag problem." -msgstr "" +msgstr "Erôr interni di GStreamer: probleme di etichete." msgid "Your GStreamer installation is missing a plug-in." -msgstr "" +msgstr "Ae tô instalazion di GStreamer e mancje un plug-in." msgid "GStreamer error: clock problem." -msgstr "" +msgstr "Erôr di GStreamer: probleme di orloi." msgid "" "This application is trying to use GStreamer functionality that has been " "disabled." msgstr "" +"Cheste aplicazion e sta cirint di doprâ une funzion di GStreamer che e je " +"stade disabilitade." msgid "GStreamer encountered a general supporting library error." -msgstr "" +msgstr "GStreamer al à riscontrât un erôr gjenerâl de librarie di supuart." msgid "Could not initialize supporting library." -msgstr "" +msgstr "Impussibil inizializâ la librarie di supuart." msgid "Could not close supporting library." -msgstr "" +msgstr "Impussibil sierâ la libarie di supuart." msgid "Could not configure supporting library." -msgstr "" +msgstr "Impussibil configurâ la librarie di supuart." msgid "Encoding error." msgstr "Erôr di codifiche." msgid "GStreamer encountered a general resource error." -msgstr "" +msgstr "GStreamer al à riscontrât un erôr gjenerâl des risorsis." msgid "Resource not found." msgstr "Risorse no cjatade." @@ -194,19 +212,22 @@ msgstr "No autorizât a acedi ae risorse." msgid "GStreamer encountered a general stream error." -msgstr "" +msgstr "GStreamer al à riscontrât un erôr gjenerâl di flus." msgid "Element doesn't implement handling of this stream. Please file a bug." msgstr "" +"L'element nol implemente la gjestion di chest flus. Par plasê, fâs une " +"segnalazion di erôr." msgid "Could not determine type of stream." msgstr "Impussibil determinâ il gjenar di flus." msgid "The stream is of a different type than handled by this element." -msgstr "" +msgstr "Il flus al è di un gjenar diferent di chel gjestît di chest element." msgid "There is no codec present that can handle the stream's type." msgstr "" +"Nol è presint nissun codificadôr che al pues gjestî chest gjenar di flus." msgid "Could not decode stream." msgstr "Impussibil decodificâ il flus." @@ -215,10 +236,10 @@ msgstr "Impussibil codificâ il flus." msgid "Could not demultiplex stream." -msgstr "" +msgstr "Impussibil demultiplexâ il flus." msgid "Could not multiplex stream." -msgstr "" +msgstr "Impussibil multiplexâ il flus." msgid "The stream is in the wrong format." msgstr "Il flus al è tal formât sbaliât." @@ -242,7 +263,7 @@ msgstr "Nissun messaç di erôr standard pal domini %s e codiç %d." msgid "Selected clock cannot be used in pipeline." -msgstr "" +msgstr "Nol è pussibil doprâ te pipeline l'orloi selezionât." #, c-format msgid "Error writing registry cache to %s: %s" @@ -319,13 +340,14 @@ msgstr "coment" msgid "free text commenting the data" -msgstr "" +msgstr "test libar che al comente i dâts" msgid "extended comment" -msgstr "" +msgstr "coment slargjât" msgid "free text commenting the data in key=value or key[en]=comment form" msgstr "" +"test libar che al comente i dâts te forme clâf=valôr o clâf[ing]=coment" msgid "track number" msgstr "numar dal toc" @@ -366,8 +388,8 @@ msgid "Homepage for this media (i.e. artist or movie homepage)" msgstr "" -"sît web par chest contignût multimediâl (p.e. il sît web dal artist o dal " -"film)" +"Sît web par chest contignût multimediâl (vâl a dî la pagjine web dal artist " +"o dal film)" msgid "description" msgstr "descrizion" @@ -507,16 +529,16 @@ msgstr "bitrate massim in bit/s" msgid "encoder" -msgstr "" +msgstr "codificadôr" msgid "encoder used to encode this stream" -msgstr "" +msgstr "codificadôr doprât par codificâ chest flus" msgid "encoder version" -msgstr "" +msgstr "version codificadôr" msgid "version of the encoder used to encode this stream" -msgstr "" +msgstr "version dal codfiicadôr doprât par codificâ chest flus" msgid "serial" msgstr "seriâl" @@ -552,7 +574,7 @@ msgstr "" msgid "reference level of track and album gain values" -msgstr "" +msgstr "nivel di riferiment dai valôrs di vuadagn de linie e dal album" msgid "language code" msgstr "codiç lenghe" @@ -604,6 +626,8 @@ "human readable descriptive location of where the media has been recorded or " "produced" msgstr "" +"ubicazion descritive par umans di dulà che l'element multimediâl al è stât " +"regjistrât o prodot" msgid "geo location latitude" msgstr "latitudin posizion gjeog." @@ -662,6 +686,8 @@ "a location within a city where the media has been produced or created (e.g. " "the neighborhood)" msgstr "" +"une posizion dentri di une citât dulà che l'element multimediâl al è stât " +"prodot o creât (p.e. borc)" msgid "geo location horizontal error" msgstr "" @@ -855,13 +881,13 @@ msgid "no property \"%s\" in element \"%s\"" msgstr "" -#, fuzzy, c-format +#, c-format msgid "Element \"%s\" is not a GstPreset" -msgstr "Il file \"%s\" al è un socket." +msgstr "L'element \"%s\" nol è un GstPreset" -#, fuzzy, c-format +#, c-format msgid "could not set preset \"%s\" in element \"%s\"" -msgstr "Impussibil creâ il file temporani \"%s\"." +msgstr "impussibil stabilî la pre-configurazion \"%s\" tal element \"%s\"" #, c-format msgid "no element \"%s\"" @@ -926,10 +952,10 @@ msgstr "" msgid "empty pipeline not allowed" -msgstr "" +msgstr "la pipeline vueide no je ametude" msgid "Pipeline construction is invalid, please add queues." -msgstr "" +msgstr "La costrusion de pipeline no je valide, zonte codis di riproduzion." msgid "A lot of buffers are being dropped." msgstr "" @@ -1035,9 +1061,9 @@ msgid "Stream contains no data." msgstr "Il flus nol conten dâts." -#, fuzzy, c-format +#, c-format msgid "%sImplemented Interfaces%s:\n" -msgstr "Interfacis implementadis:\n" +msgstr "%sInterfacis implementadis%s:\n" msgid "readable" msgstr "" @@ -1066,9 +1092,9 @@ msgid "Blacklisted files:" msgstr "File te liste nere:" -#, fuzzy, c-format +#, c-format msgid "%sTotal count%s: %s" -msgstr "Conte totâl: " +msgstr "%sConte totâl%s: %s" #, c-format msgid "%d blacklisted file" @@ -1146,10 +1172,10 @@ msgstr "" msgid "Setting pipeline to PLAYING ...\n" -msgstr "" +msgstr "Daûr a meti la pipeline a RIPRODUZION ...\n" msgid "ERROR: pipeline doesn't want to play.\n" -msgstr "" +msgstr "ERÃR: la pipeline no vûl riprodusi.\n" #, c-format msgid "Got message #%u from element \"%s\" (%s): " @@ -1172,7 +1198,7 @@ msgstr "" msgid "EOS received - stopping pipeline...\n" -msgstr "" +msgstr "Ricevût EOS - daûr a fermâ la pipeline...\n" #, c-format msgid "FOUND TAG : found by element \"%s\".\n" @@ -1205,10 +1231,12 @@ "INFO:\n" "%s\n" msgstr "" +"INFORMAZION:\n" +"%s\n" #, c-format msgid "WARNING: from element %s: %s\n" -msgstr "" +msgstr "ATENZION: dal element %s: %s\n" msgid "Pipeline is PREROLLED ...\n" msgstr "" @@ -1220,35 +1248,38 @@ msgstr "" msgid "buffering..." -msgstr "" +msgstr "daûr a jemplâ la memorie tampon..." msgid "Done buffering, setting pipeline to PLAYING ...\n" msgstr "" +"Terminât di jemplâ la memorie tampon, daûr a meti la pipeline a " +"RIPRODUZION ...\n" #. we were not buffering but PLAYING, PAUSE the pipeline. msgid "Buffering, setting pipeline to PAUSED ...\n" msgstr "" +"Daûr a jemplâ la memorie tampon, configurazion de pipeline a IN PAUSE ...\n" msgid "Redistribute latency...\n" msgstr "" #, c-format msgid "Setting state to %s as requested by %s...\n" -msgstr "" +msgstr "Daûr a meti il stât a %s come domandât di %s...\n" #. this application message is posted when we caught an interrupt and #. * we need to stop the pipeline. msgid "Interrupt: Stopping pipeline ...\n" -msgstr "" +msgstr "Interuzion: daûr a fermâ la pipeline ...\n" msgid "Interrupt while waiting for EOS - stopping pipeline...\n" -msgstr "" +msgstr "Interuzion dilunc la spiete pal EOS - daûr a fermâ la pipeline...\n" msgid "EOS on shutdown enabled -- Forcing EOS on the pipeline\n" -msgstr "" +msgstr "EOS al distudâ abilitât -- Daûr a sfuarçâ il EOS su la pipeline\n" msgid "Waiting for EOS...\n" -msgstr "" +msgstr "Daûr a spietâ il EOS...\n" #, c-format msgid "Progress: (%s) %s\n" @@ -1266,74 +1297,84 @@ msgstr "" msgid "An error happened while waiting for EOS\n" -msgstr "" +msgstr "Al è capitât un erôr intant che si spietave il EOS\n" #, c-format msgid "Use Windows high-resolution clock, precision: %u ms\n" msgstr "" +"Dopre l'orloi di sisteme di Windows a alte risoluzion, precision: %u ms\n" msgid "Output tags (also known as metadata)" -msgstr "" +msgstr "Etichetis di jessude (cognossudis ancje come metadâts)" msgid "Output TOC (chapters and editions)" -msgstr "" +msgstr "TOC di jessude (cjapitui e edizions)" msgid "Output status information and property notifications" -msgstr "" +msgstr "Informazions di stât di jessude e notifichis di proprietâts" msgid "Do not print any progress information" msgstr "No stâ stampâ nissune informazion di progrès" msgid "Output messages" -msgstr "" +msgstr "Messaçs di jessude" msgid "" "Do not output status information for the specified property if verbose " "output is enabled (can be used multiple times)" msgstr "" +"No sta mandâ fûr lis informazions di stât pe proprietât indicade se la " +"jessude prolisse e je abilitade (al è pussibil doprâle plui voltis)" msgid "PROPERTY-NAME" -msgstr "" +msgstr "NON-PROPRIETÃT" msgid "Do not install a fault handler" -msgstr "" +msgstr "No sta instalâ un gjestôr di erôrs" msgid "Force EOS on sources before shutting the pipeline down" -msgstr "" +msgstr "Sfuarce l'EOS su lis sorzints prime di distudâ la pipeline" msgid "Gather and print index statistics" -msgstr "" +msgstr "Recupere e stampe lis statistichis de tabele" msgid "" "Do not print current position of pipeline. If this option is unspecified, " "the position will be printed when stdout is a TTY. To enable printing " "position when stdout is not a TTY, use \"force-position\" option" msgstr "" +"No sta stampâ la posizion corinte de pipeline. Se cheste opzion no ven " +"specificade e se il stdout al è un TTY, la posizion e vignarà stampade. Par " +"abilitâ la stampe de posizion cuant che il stdout nol è un TTY, dopre la " +"opzion \"force-position\"" msgid "" "Allow printing current position of pipeline even if stdout is not a TTY. " "This option has no effect if the \"no-position\" option is specified" msgstr "" +"Permet di stampâ la posizion corinte de pipeline ancje se il stdout nol è un " +"TTY. Cheste opzion no à efiet se e je stade specificade la opzion âno-" +"positionâ" #, c-format msgid "ERROR: pipeline could not be constructed: %s.\n" -msgstr "" +msgstr "ERÃR: nol è stât pussibil costruî la pipeline: %s.\n" msgid "ERROR: pipeline could not be constructed.\n" -msgstr "" +msgstr "ERÃR: nol è stât pussibil costruî la pipeline.\n" #, c-format msgid "WARNING: erroneous pipeline: %s\n" -msgstr "" +msgstr "ATENZION: pipeline sbaliade: %s\n" msgid "ERROR: the 'pipeline' element wasn't found.\n" -msgstr "" +msgstr "ERÃR: nol è stât cjatât l'element 'pipeline'.\n" msgid "Setting pipeline to PAUSED ...\n" -msgstr "" +msgstr "Daûr a meti la pipeline a IN PAUSE ...\n" msgid "Failed to set pipeline to PAUSED.\n" -msgstr "" +msgstr "Impussibil meti la pipeline a IN PAUSE.\n" msgid "Pipeline is live and does not need PREROLL ...\n" msgstr "" @@ -1342,10 +1383,10 @@ msgstr "" msgid "Execution ended after %" -msgstr "" +msgstr "Esecuzion finide dopo %" msgid "Setting pipeline to NULL ...\n" -msgstr "" +msgstr "Daûr a meti la pipeline a NULE ...\n" msgid "Freeing pipeline ...\n" -msgstr "" +msgstr "Daûr a liberâ la pipeline ...\n" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/tools/gst-inspect.c new/gstreamer-1.22.1/tools/gst-inspect.c --- old/gstreamer-1.22.0/tools/gst-inspect.c 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/tools/gst-inspect.c 2023-03-04 14:42:32.000000000 +0100 @@ -2171,7 +2171,12 @@ ctx = g_option_context_new ("[ELEMENT-NAME | PLUGIN-NAME]"); g_option_context_add_main_entries (ctx, options, GETTEXT_PACKAGE); g_option_context_add_group (ctx, gst_init_get_option_group ()); - if (!g_option_context_parse (ctx, &argc, &argv, &err)) { +#if defined(G_OS_WIN32) && !defined(GST_CHECK_MAIN) + if (!g_option_context_parse_strv (ctx, &argv, &err)) +#else + if (!g_option_context_parse (ctx, &argc, &argv, &err)) +#endif + { g_printerr ("Error initializing: %s\n", err->message); g_clear_error (&err); g_option_context_free (ctx); @@ -2338,9 +2343,22 @@ int main (int argc, char *argv[]) { + int ret; + + /* gstinspect.c calls this function */ +#if defined(G_OS_WIN32) && !defined(GST_CHECK_MAIN) + argv = g_win32_get_command_line (); +#endif + #if defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE - return gst_macos_main ((GstMainFunc) real_main, argc, argv, NULL); + ret = gst_macos_main ((GstMainFunc) real_main, argc, argv, NULL); #else - return real_main (argc, argv); + ret = real_main (argc, argv); +#endif + +#if defined(G_OS_WIN32) && !defined(GST_CHECK_MAIN) + g_strfreev (argv); #endif + + return ret; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/tools/gst-launch.c new/gstreamer-1.22.1/tools/gst-launch.c --- old/gstreamer-1.22.0/tools/gst-launch.c 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/tools/gst-launch.c 2023-03-04 14:42:32.000000000 +0100 @@ -1159,7 +1159,12 @@ ctx = g_option_context_new ("PIPELINE-DESCRIPTION"); g_option_context_add_main_entries (ctx, options, GETTEXT_PACKAGE); g_option_context_add_group (ctx, gst_init_get_option_group ()); - if (!g_option_context_parse (ctx, &argc, &argv, &err)) { +#ifdef G_OS_WIN32 + if (!g_option_context_parse_strv (ctx, &argv, &err)) +#else + if (!g_option_context_parse (ctx, &argc, &argv, &err)) +#endif + { if (err) gst_printerr ("Error initializing: %s\n", GST_STR_NULL (err->message)); else @@ -1368,9 +1373,21 @@ int main (int argc, char *argv[]) { + int ret; + +#ifdef G_OS_WIN32 + argv = g_win32_get_command_line (); +#endif + #if defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE - return gst_macos_main ((GstMainFunc) real_main, argc, argv, NULL); + ret = gst_macos_main ((GstMainFunc) real_main, argc, argv, NULL); #else - return real_main (argc, argv); + ret = real_main (argc, argv); +#endif + +#ifdef G_OS_WIN32 + g_strfreev (argv); #endif + + return ret; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/tools/gst-stats.c new/gstreamer-1.22.1/tools/gst-stats.c --- old/gstreamer-1.22.0/tools/gst-stats.c 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/tools/gst-stats.c 2023-03-04 14:42:32.000000000 +0100 @@ -1283,10 +1283,19 @@ g_set_prgname ("gst-stats-" GST_API_VERSION); +#ifdef G_OS_WIN32 + argv = g_win32_get_command_line (); +#endif + ctx = g_option_context_new ("FILE"); g_option_context_add_main_entries (ctx, options, GETTEXT_PACKAGE); g_option_context_add_group (ctx, gst_init_get_option_group ()); - if (!g_option_context_parse (ctx, &argc, &argv, &err)) { +#ifdef G_OS_WIN32 + if (!g_option_context_parse_strv (ctx, &argv, &err)) +#else + if (!g_option_context_parse (ctx, &argc, &argv, &err)) +#endif + { g_print ("Error initializing: %s\n", GST_STR_NULL (err->message)); exit (1); } @@ -1312,5 +1321,10 @@ done (); g_strfreev (filenames); + +#ifdef G_OS_WIN23 + g_strfreev (argv); +#endif + return 0; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/gstreamer-1.22.0/tools/gst-typefind.c new/gstreamer-1.22.1/tools/gst-typefind.c --- old/gstreamer-1.22.0/tools/gst-typefind.c 2023-01-23 20:29:34.000000000 +0100 +++ new/gstreamer-1.22.1/tools/gst-typefind.c 2023-03-04 14:42:32.000000000 +0100 @@ -164,7 +164,12 @@ ctx = g_option_context_new ("FILES"); g_option_context_add_main_entries (ctx, options, GETTEXT_PACKAGE); g_option_context_add_group (ctx, gst_init_get_option_group ()); - if (!g_option_context_parse (ctx, &argc, &argv, &err)) { +#ifdef G_OS_WIN32 + if (!g_option_context_parse_strv (ctx, &argv, &err)) +#else + if (!g_option_context_parse (ctx, &argc, &argv, &err)) +#endif + { g_print ("Error initializing: %s\n", GST_STR_NULL (err->message)); g_clear_error (&err); g_option_context_free (ctx); @@ -193,9 +198,21 @@ int main (int argc, char *argv[]) { + int ret; + +#ifdef G_OS_WIN32 + argv = g_win32_get_command_line (); +#endif + #if defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE - return gst_macos_main ((GstMainFunc) real_main, argc, argv, NULL); + ret = gst_macos_main ((GstMainFunc) real_main, argc, argv, NULL); #else - return real_main (argc, argv); + ret = real_main (argc, argv); +#endif + +#ifdef G_OS_WIN32 + g_strfreev (argv); #endif + + return ret; } ++++++ gstreamer-rpm-prov.patch ++++++ --- /var/tmp/diff_new_pack.q84ZSa/_old 2023-03-12 16:22:27.524292542 +0100 +++ /var/tmp/diff_new_pack.q84ZSa/_new 2023-03-12 16:22:27.528292559 +0100 @@ -1,7 +1,7 @@ -Index: gstreamer-1.22.0/tools/gst-inspect.c +Index: gstreamer-1.22.1/tools/gst-inspect.c =================================================================== ---- gstreamer-1.22.0.orig/tools/gst-inspect.c -+++ gstreamer-1.22.0/tools/gst-inspect.c +--- gstreamer-1.22.1.orig/tools/gst-inspect.c ++++ gstreamer-1.22.1/tools/gst-inspect.c @@ -1869,7 +1869,224 @@ print_tracer_info (GstPluginFeature * fe * is meant for machines, not humans. */ @@ -344,7 +344,7 @@ {"plugin", '\0', 0, G_OPTION_ARG_NONE, &plugin_name, N_("List the plugin contents"), NULL}, {"types", 't', 0, G_OPTION_ARG_STRING, &types, -@@ -2284,7 +2527,7 @@ real_main (int argc, char *argv[]) +@@ -2289,7 +2532,7 @@ real_main (int argc, char *argv[]) /* if there is such a plugin, print out info */ if (plugin) { if (print_aii) { @@ -353,7 +353,7 @@ } else { print_plugin_info (plugin); print_plugin_features (plugin); -@@ -2297,13 +2540,17 @@ real_main (int argc, char *argv[]) +@@ -2302,13 +2545,17 @@ real_main (int argc, char *argv[]) if (plugin) { if (print_aii) { ++++++ reduce-required-meson.patch ++++++ --- /var/tmp/diff_new_pack.q84ZSa/_old 2023-03-12 16:22:27.560292700 +0100 +++ /var/tmp/diff_new_pack.q84ZSa/_new 2023-03-12 16:22:27.564292718 +0100 @@ -1,10 +1,10 @@ -Index: gstreamer-1.22.0/meson.build +Index: gstreamer-1.22.1/meson.build =================================================================== ---- gstreamer-1.22.0.orig/meson.build -+++ gstreamer-1.22.0/meson.build +--- gstreamer-1.22.1.orig/meson.build ++++ gstreamer-1.22.1/meson.build @@ -1,6 +1,6 @@ project('gstreamer', 'c', - version : '1.22.0', + version : '1.22.1', - meson_version : '>= 0.62', + meson_version : '>= 0.61', default_options : [ 'warning_level=1',