+ Highlighted bugfixes:
- Various security fixes and playback fixes
- aggregator base class fixes to not produce buffers too early
in live mode
- AWS translate element improvements
- D3D12 video decoder workarounds for crashes on NVIDIA cards
on resolution changes
- dav1d AV1-decoder performance improvements
- fmp4mux: tfdt and composition time offset fixes, plus AC-3 /
EAC-3 audio support
- GStreamer editing services fixes for sources with non-1:1
aspect ratios
- MIDI parser improvements for tempo changes
- MP4 demuxer atom parsing improvements and security fixes
- New skia-based video compositor element
- Subtitle parser security fixes
- Subtitle rendering and seeking fixes
- Playbin3 and uridecodebin3 stability fixes
- GstPlay stream selection improvements
- WAV playback regression fix
- GTK4 paintable sink colorimetry support and other
improvements
- WebRTC: allow webrtcsrc to wait for a webrtcsink producer to
initiate the connection
- WebRTC: new Janus Video Room WebRTC source element
- vah264enc profile decision making logic fixes
- Python bindings gained support for handling mini object
writability (buffers, caps, etc.)
- Various bug fixes, build fixes, memory leak fixes, and other
stability and reliability improvements
+ gstreamer:
- aggregator: Various state related fixes
- element: ref-sink the correct pad template when replacing an
existing one
- pipeline: Store the actual latency even if no static latency
was configured
- structure: Add gst_structure_is_writable() API to allow
python bindings to be able to handle writability of
MiniObjects
- tracerutils: Do not warn on empty string as tracername
- tracerutils: Fix leak in gst_tracer_utils_create_tracer()
- Ensure properties are freed before (re)setting with
g_value_dup_object() or g_value_dup_boxed() and during
cleanup
- Fix new warnings on Fedora 42, various meson warnings, and
other small meson build/wrap fixes
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=247
+ Highlighted bugfixes:
- awstranslate and speechmatics plugin improvements
- decodebin3 fixes and urisourcebin/playbin3 stability
improvements
- Closed captions: CEA-708 generation and muxing fixes, and
H.264/H.265 caption extractor fixes
- dav1d AV1 decoder: RGB support, plus colorimetry,
renegotiation and buffer pool handling fixes
- Fix regression when rendering VP9 with alpha
- H.265 decoder base class and caption inserter SPS/PPS
handling fixes
- hlssink3 and hlsmultivariantsink feature enhancements
- Matroska v4 support in muxer, seeking fixes in demuxer
- macOS: framerate guessing for cameras or capture devices
where the OS reports silly framerates
- MP4 demuxer uncompressed video handling improvements and
sample table handling fixes
- oggdemux: seeking improvements in streaming mode
- unixfdsrc: fix gst_memory_resize warnings
- Plugin loader fixes, especially for Windows
- QML6 GL source renegotiation fixes
- RTP and RTSP stability fixes
- Thread-safety improvements for the Media Source Extension
(MSE) library
- v4l2videodec: fix A/V sync issues after decoding errors
- Various improvements and fixes for the fragmented and
non-fragmented MP4 muxers
- Video encoder base class segment and buffer timestamp
handling fixes
- Video time code support for 119.88 fps and
drop-frames-related conversion fixes
- WebRTC: Retransmission entry creation fixes and better audio
level header extension compatibility
- YUV4MPEG encoder improvments
- dots-viewer: make work locally without network access
- gst-python: fix compatibility with PyGObject >= 3.52.0
- Cerbero: recipe updates, compatibility fixes for Python <
3.10; Windows Android cross-build improvements
- Various bug fixes, build fixes, memory leak fixes, and other
stability and reliability improvements
+ gstreamer:
- Correctly handle whitespace paths when executing
gst-plugin-scanner
- Ensure properties are freed before (re)setting with
g_value_dup_string() and during cleanup
- cmake: Fix PKG_CONFIG_PATH formatting for Windows
cross-builds
- macos: Move macos function documentation to the .h so the
introspection has the information
- meson.build: test for and link against libatomic if it exists
- pluginloader-win32: Fix helper executable path under devenv
- pluginloader: fix pending_plugins Glist use-after-free issue
- unixfdsrc: Complains about resize of memory area
- tracers: dots: fix debug log
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=245
- Update to version 1.26.0:
+ Highlights
- H.266 Versatile Video Coding (VVC) codec support
- Low Complexity Enhancement Video Coding (LCEVC) support
- Closed captions: H.264/H.265 extractor/inserter,
cea708overlay, cea708mux, tttocea708 and more
- New hlscmafsink, hlssink3, and hlsmultivariantsink; HLS/DASH
client and dashsink improvements
- New AWS and Speechmatics transcription, translation and TTS
services elements, plus translationbin
- Splitmux lazy loading and dynamic fragment addition support
- Matroska: H.266 video and rotation tag support, defined
latency muxing
- MPEG-TS: support for H.266, JPEG XS, AV1, VP9 codecs and
SMPTE ST-2038 and ID3 meta; mpegtslivesrc
- ISO MP4: support for H.266, Hap, Lagarith lossless codecs;
raw video support; rotation tags
- SMPTE 2038 ancillary data streams support
- JPEG XS image codec support
- Analytics: New TensorMeta; N-to-N relationships; Mtd to carry
segmentation masks
- ONVIF metadata extractor and conversion to/from relation
metas
- New originalbuffer element that can restore buffers again
after transformation steps for analytics
- Improved Python bindings for analytics API
- Lots of Vulkan integration and Vulkan Video decoder/encoder
improvements
- OpenGL integration improvements, esp. in glcolorconvert,
gldownload, glupload
OBS-URL: https://build.opensuse.org/request/show/1252383
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=242
+ Highlighted bugfixes:
- d3d12: Fix shaders failing to compile with newer dxc versions
- decklinkvideosink: Fix handling of caps framerate in auto
mode; also a decklinkaudiosink fix
- devicemonitor: Fix potential crash macOS when a device is
unplugged
- gst-libav: Fix crash in audio encoders like avenc_ac3 if
input data has insufficient alignment
- gst-libav: Fix build against FFmpeg 4.2 as in Ubuntu 20.04
- gst-editing-services: Fix Python library name fetching on
Windows
- netclientclock: Don't store failed internal clocks in the
cache, so applications can re-try later
- oggdemux: Seeking and duration fixes
- osxaudiosrc: Fixes for failing init/no output on recent iOS
versions
- qtdemux: Use mvhd transform matrix and support for flipping
- rtpvp9pay: Fix profile parsing
- splitmuxsrc: Fix use with decodebin3 which would occasionally
fail with an assertion when seeking
- tsdemux: Fix backwards PTS wraparound detection with
ignore-pcr=true
- video-overlay-composition: Declare the video/size/orientation
tags for the meta and implement scale transformations
- vtdec: Fix seeks occasionally hanging on macOS due to a race
condition when draining
- webrtc: Fix duplicate payload types with RTX and multiple
video codecs
- win32-pluginoader: Make sure not to create any windows when
inspecting plugins
- wpe: Various fixes for re-negotiation, latency reporting,
progress messages on startup
- x264enc: Add missing data to AvcDecoderConfigurationRecord in
codec_data for high profile variants
- cerbero: Support using ccache with cmake if enabled
- Various bug fixes, build fixes, memory leak fixes, and other
stability and reliability improvements
+ gstreamer:
- device: Fix racy nullptr deref on macOS when a device is
unplugged
- iterator: Added error handling to filtered iterators
- netclientclock: Don't ever store failed internal clocks in
the cache
- netclock-replay: use gst_c_args when building, fixing build
failure on Solaris
- pluginloader-win32: create no window
- pluginloader-win32: fix use after free in
find_helper_bin_location
- sparsefile: ensure error is set when read_buffer() returns 0
- basetransform: fix incorrect logging inside
gst_base_transform_query_caps
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=240
+ Highlighted bugfixes:
- playback: Fix SSA/ASS subtitles with embedded fonts
- decklink: add missing video modes and fix 8K video modes
- matroskamux: spec compliance fixes for audio-only files
- onnx: disable onnxruntime telemetry
- qtdemux: Fix base offset update when doing segment seeks
- srtpdec: Fix a use-after-free issue
- (uri)decodebin3: Fix stream change scenarios, possible
deadlock on shutdown
- video: fix missing alpha flag in AV12 format description
- avcodecmap: Add some more channel position mappings
- cerbero bootstrap fixes for Windows 11
- Various bug fixes, build fixes, memory leak fixes, and other
stability and reliability improvements
+ gstreamer:
- No changes.
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=238
+ Highlighted bugfixes:
- More than 40 security fixes across a wide range of elements
following an audit by the GitHub Security Lab, including the
MP4, Matroska, Ogg and WAV demuxers, subtitle parsers, image
decoders, audio decoders and the id3v2 tag parser.
- avviddec: Fix regression that could trigger assertions about
width/height mismatches.
- appsink and appsrc fixes.
- closed caption handling fixes.
- decodebin3 and urisourcebin fixes.
- glupload: dmabuf: Fix emulated tiled import.
- level: fix LevelMeta values outside of the stated range.
- mpegtsmux, flvmux: fix potential busy looping with high cpu
usage in live mode.
- pipeline dot file graph generation improvements.
- qt(6): fix criticals with multiple qml(6)gl{src,sink}.
- rtspsrc: Optionally timestamp RTP packets with their receive
times in TCP/HTTP mode to enable clock drift handling.
- splitmuxsrc: reduce number of file descriptors used.
- systemclock: locking order fixes.
- v4l2: fix possible v4l2videodec deadlock on shutdown; 8-bit
bayer format fixes.
- x265: Fix build with libx265 version >= 4.1 after
masteringDisplayColorVolume API change.
- macOS: fix rendering artifacts in retina displays, plus ptp
clock fixes.
- cargo: Default to thin lto for the release profile (for
faster builds with lower memory requirements).
- Various bug fixes, build fixes, memory leak fixes, and other
stability and reliability improvements.
- Updated translations.
+ gstreamer:
- allocator: Avoid integer overflow when allocating sysmem and
avoid integer overflow in qtdemux theora extension parsing.
- deviceprovider: fix leaking hidden providers.
- gstreamer: prefix debug dot node names to prevent splitting.
- pad: Never push sticky events in response to a FLUSH_STOP.
- systemclock: Fix lock order violation and some cleanup.
- utils: improve gst_util_ceil_log2().
- ptp: use ip_mreq instead of ip_mreqn for macos.
- tracers: unlock leaks tracer if already tracking.
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=232
+ Highlighted bugfixes:
- gst-rtsp-server security fix
- GstAggregator start time selection and latency query fixes
for force-live mode
- audioconvert: fix dynamic handling of mix matrix, and accept
custom upstream event for setting one
- encodebin: fix parser selection for encoders that support
multiple codecs
- flvmux improvments for pipelines where timestamps don't start
at 0
- glcontext: egl: Unrestrict the support base DRM formats
- kms: Add IMX-DCSS auto-detection in sink and fix stride with
planar formats in allocator
- macOS main application event loop fixes
- mpegtsdemux: Handle PTS/DTS wraparound with ignore-pcr=true
- playbin3, decodebin3, parsebin, urisourcebin: fix races, and
improve stability and stream-collection handling
- rtpmanager: fix early RTCP SR generation for sparse streams
like metadata
- qml6glsrc: Reduce capture delay
- qtdemux: fix parsing of rotation matrix with 180 degree
rotation
- rtpav1depay: added wait-for-keyframe and request-keyframe
properties
- srt: make work with newer libsrt versions and don't
re-connect on authentication failure
- v4l2 fixes and improvement
- webrtcsink, webrtcbin and whepsrc fixes
- cerbero: fix Python 3.13 compatibility, g-i with newer
setuptools, bootstrap on Arch Linux; iOS build fixes
- Ship qroverlay plugin in binary packages
- Various bug fixes, memory leak fixes, and other stability and
reliability improvements
+ Gstreamer:
- aggregator:
. Fix start time selection first with force-live
. Fix live query when force-live is TRUE
- parse-launch: Make sure children are bins before recursing in
- macos: Fix race conditions in cocoa/application main event
loop
- multiqueue: Do not unref the query we get in pad->query
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=230
+ Highlighted bugfixes:
- decodebin3: collection handling fixes
- encodebin: Fix pad removal (and smart rendering in
gst-editing-services)
- glimagesink: Fix cannot resize viewport when video size
changed in caps
- matroskamux, webmmux: fix firefox compatibility issue with
Opus audio streams
- mpegtsmux: Wait for data on all pads before deciding on a
best pad unless timing out
- splitmuxsink: Override LATENCY query to pretend to downstream
that we're not live
- video: QoS event handling improvements
- voamrwbenc: fix list of bitrates
- vtenc: Restart encoding session when certain errors are
detected
- wayland: Fix ABI break in WL context type name
- webrtcbin: Prevent crash when attempting to set answer on
invalid SDP
- cerbero: ship vp8/vp9 software encoders again, which went
missing in 1.24.7; ship transcode plugin
- Various bug fixes, memory leak fixes, and other stability and
reliability improvements
+ gstreamer:
- clock: Fix unchecked overflows in linear regression code
- meta: Add missing include of gststructure.h
- pad: Check data NULL-ness when probes are stopped
- aggregator: Immediately return NONE from
simple_get_next_time() on non-TIME segments
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=228
+ Highlighted bugfixes:
- Fix APE and Musepack audio file and GIF playback with FFmpeg
7.0
- playbin3: Fix potential deadlock with multiple playbin3s with
glimagesink used in parallel
- qt6: various qmlgl6src and qmlgl6sink fixes and improvements
- rtspsrc: expose property to force usage of non-compliant
setup URLs for RTSP servers where the automatic fallback
doesn't work
- urisourcebin: gapless playback and program switching fixes
- v4l2: various fixes
- va: Fix potential deadlock with multiple va elements used in
parallel
- meson: option to disable gst-full for static-library build
configurations that do not need this
- Various bug fixes, memory leak fixes, and other stability and
reliability improvements
+ gstreamer:
- bin: Don't keep the object lock while setting a GstContext
when handling NEED_CONTEXT
- core: Log pad name, not just the pointer
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=226
- Update to version 1.24.0:
* Highlights
- New Discourse forum and Matrix chat space
- New Analytics and Machine Learning abstractions and elements
- Playbin3 and decodebin3 are now stable and the default in
gst-play-1.0, GstPlay/GstPlayer
- The va plugin is now preferred over gst-vaapi and has higher
ranks
- GstMeta serialization/deserialization and other GstMeta
improvements
- New GstMeta for SMPTE ST-291M HANC/VANC Ancillary Data
- New unixfd plugin for efficient 1:N inter-process
communication on Linux
- cudaipc source and sink for zero-copy CUDA memory sharing
between processes
- New intersink and intersrc elements for 1:N pipeline
decoupling within the same process
- Qt5 + Qt6 QML integration improvements including qml6glsrc,
qml6glmixer, qml6gloverlay, and qml6d3d11sink elements
- DRM Modifier Support for dmabufs on Linux
- OpenGL, Vulkan and CUDA integration enhancements
- Vulkan H.264 and H.265 video decoders
- RTP stack improvements including new RFC7273 modes and more
correct header extension handling in depayloaders
- WebRTC improvements such as support for ICE consent
freshness, and a new webrtcsrc element to complement
webrtcsink
- WebRTC signallers and webrtcsink implementations for LiveKit
and AWS Kinesis Video Streams
- WHIP server source and client sink, and a WHEP source
OBS-URL: https://build.opensuse.org/request/show/1155049
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=214
- Update to version 1.22.9:
+ Highlighted bugfixes in 1.22.8
- More Security fixes for the AV1 video codec parser
- va: fixes for Mesa Gallium drivers in Mesa versions older
than v23.2
- v4l2src: Consider framerate during caps selection
- v4l2codec: decoder fixes
- rtspsrc: multicast fixes
- camerabin viewfinder fixes
- various bug fixes, build fixes, memory leak fixes, and other
stability and reliability improvements
+ gstreamer
- aggregator: fix use-after-free in queries processing
- multiqueue: Ignore queue fullness for most events
- Rebase reduce-required-meson.patch
OBS-URL: https://build.opensuse.org/request/show/1143305
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=211
- Update to version 1.22.8:
+ Highlighted bugfixes in 1.22.8
- Security fixes for the AV1 video codec parser
- avdec video decoder: fix another possible deadlock with
FFmpeg 6.1
- qtdemux: reverse playback and seeking fixes for files with
raw audio streams
- v4l2: fix "newly allocated buffer ... is not free" warning
log flood
- GstPlay + GstPlayer library fixes
- dtls: Fix build failure on Windows when compiling against
OpenSSL 3.2.0
- d3d11screencapturesrc: Fix wrong color with HDR enabled
- Cerbero build tool: More python 3.12 string escape warning
fixes; make sure to bundle build tools as well
- various bug fixes, build fixes, memory leak fixes, and other
stability and reliability improvements
+ gstreamer
- buffer: Unref memories before metas
- pad: Recheck pads when linking after temporary unlock
- baseparse: Fixes to buffers extracted from adapter
- Rebase reduce-required-meson.patch
OBS-URL: https://build.opensuse.org/request/show/1136705
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=209
- Update to version 1.22.7:
+ Highlighted bugfixes:
- Security fixes for the MXF demuxer and AV1 codec parser
- glfilter: Memory leak fix for OpenGL filter elements
- d3d11videosink: Fix toggling between fullscreen and maximized, and window switching in fullscreen mode
- DASH / HLS adaptive streaming fixes
- Decklink card device provider device name string handling fixes
- interaudiosrc: handle non-interleaved audio properly
- openh264: Fail gracefully if openh264 encoder/decoder creation fails
- rtspsrc: improved whitespace handling in response headers by certain cameras
- v4l2codecs: avoid wrap-around after 1000000 frames; tiled formats handling fixes
- video-scaler, audio-resampler: downgraded "Can't find exact taps" debug log messages
- wasapi2: Don't use global volume control object
- Rust plugins: various improvements in aws, fmp4mux, hlssink3, livesync, ndisrc, rtpav1depay, rsfilesink, s3sink, sccparse
- WebRTC: various webrtchttp, webrtcsrc, and webrtcsink improvements and fixes
- Cerbero build tools: recognise Windows 11; restrict parallelism of gst-plugins-rs build on small systems
- Packages: ca-certificates update; fix gio module loading and TLS support on macOS
+ gstreamer:
- debugutils: provide gst_debug_bin_to_dot_data() implementation even if debug system is disabled
- Rebase reduce-required-meson.patch
OBS-URL: https://build.opensuse.org/request/show/1126714
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=207
- Update to version 1.22.5:
+ Highlighted bugfixes:
- Security fixes for the RealMedia demuxer
- vaapi decoders, postproc: Disable DMAbuf from caps
negotiation to fix garbled video in some cases
- decodebin3, playbin3, parsebin fixes, especially for stream
reconfiguration
- hlsdemux2: fix early seeking; don't pass referer when
updating playlists; webvtt fixes
- gtk: Fix critical caused by pointer movement when stream is
getting ready
- qt6: Set sampler filtering method, fixes bad quality with
qml6glsink and gstqt6d3d11
- v4l2src: handle resolution change when buffers are copied
- videoflip: update orientation tag in auto mode
- video timecode: Add support for framerates lower than 1fps
and accept 119.88 (120/1.001) fps
- webrtcsink: fixes for x264enc and NVIDIA encoders
- cerbero: Pull ninja from system if possible, avoid spurious
bootstrap of cmake
- packages: Recipe updates for ffmpeg, libsoup, orc
- various bug fixes, memory leak fixes, and other stability and
reliability improvements
+ gstreamer:
- taglist, plugins: fix compiler warnings with GLib >= 2.76
- tracerutils: allow casting parameter types
- inputselector: fix playing variable is never set
- Rebase patch.
OBS-URL: https://build.opensuse.org/request/show/1100599
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=203
- Update to version 1.22.4:
+ Highlighted bugfixes:
- Security fixes for flacparse, dvdspu, and subparse.
- d3d11videosink: Fix error on pause and play.
- decklink: Correctly handle SDK strings on macOS and free
strings after usage on Linux.
- filesink: Fix buffered mode writing of buffer lists and
buffers with multiple memories.
- gldownload: handle passthrough without a critical.
- h265parse: Fix framerate handling regression.
- oggdemux: vp8 fixes.
- mp4mux, qtmux, qtdemux: Opus audio mapping fixes.
- pngdec: Fix wrong colours output from 16bit RGB images.
- ptp clock: Work around ptpd bug in default configuration.
- srtpdec: fix critical warnings on shutdown.
- v4l2src: fix support for bayer format.
- v4l2videoenc: support force-keyframe event in v4l2 encoder.
- vtenc: apply DTS offset to ensure DTS <= PTS.
- gst-python: allow more functions to be called before
gst_init().
- various bug fixes, memory leak fixes, and other stability and
reliability improvements.
+ gstreamer:
- filesink: Fix buffered mode writing of buffer lists and
buffers with multiple memories.
- basesink: Clear EOS flag on STREAM-START event.
- typefindhelper: downgrade bogus error level debug log
message.
- ptp:
. Correctly parse clock ID from the commandline parameters in
the helper.
. Work around bug in ptpd in default configuration.
- Rebase reduce-required-meson.patch.
OBS-URL: https://build.opensuse.org/request/show/1095466
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=201
- Update to version 1.22.3:
+ Highlighted bugfixes:
- avdec: fix occasional video decoder deadlock on seeking with
FFmpeg 6.0.
- decodebin3: fix regression handling input streams without
CAPS or TIME segment such as e.g. udpsrc or `pushfilesrc.
- bluez: a2dpsink: fix Bluetooth SIG Certification test
failures.
- osxvideosink: fix deadlock upon closing output window.
- qtdemux: fix edit list handling regression and AV1 codec box
parsing.
- qtmux: fix extraction of CEA608 closed caption data from
S334-1A packets.
- rtspsrc: Fix handling of * control path.
- splitmux: timestamp handling improvements.
- v4l2videodec: Rework dynamic resolution change handling
(needed for IMX6 mainline codec).
- videoflip: fix regression with automatically rotating video
based on tags.
- d3d11: many d3d11videosink and d3d11compositor fixes.
- webrtc, rtp: numerous data race fixes and stability fixes.
- various bug fixes, memory leak fixes, and other stability and
reliability improvements.
+ gstreamer:
- tracing: Initialize tracing infrastructure even if the debug
system is not compiled in.
- parse-launch: fix missing unref of looked-up child element.
- gstutils: Add category and object to most logging messages.
- Rebase reduce-required-meson.patch.
OBS-URL: https://build.opensuse.org/request/show/1088874
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer?expand=0&rev=199