- Update to version 1.22.5:
+ appsink: add missing make_writable call
+ audioaggregator: Do not post message before being constructed
+ decodebin3:
- Prevent a critical warning when reassigning output slots
- Fix slot input linking when the associated stream has changed
- Remove spurious input locking during parsebin reconfiguration
+ urisourcebin: Set source element to READY before querying it
+ gl/viv-fb: meson build updates
+ plugins: fix compiler warnings with GLib >= 2.76
+ subtitleoverlay: fix mutex error if sink caps is not video
+ video:
- timecode: Add support for framerates lower than 1fps
- accept timecode of 119.88 (120/1.001) FPS
- cannot attach time code meta when frame rate is 119.88
(120000/1001)
+ videodecoder: fix copying buffer metas
- Rebase reduce-required-meson.patch.
OBS-URL: https://build.opensuse.org/request/show/1100600
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=200
- Update to version 1.22.4:
+ alsasink: Fix stall for transition from PAUSED to READY with
USB speakerphone.
+ appsink: unref buffer in prev sample early so buffers from v4l2
can be released properly.
+ basetextoverlay: Fix typo in "text-y" property description.
+ gldownload: handle passthrough without a critical.
+ glfilter: add parent meta to output buffer for input buffer.
+ oggdemux: vp8: Push headers downstream and detect keyframe
packets.
+ opus: Fix potential crash when getting unexpected channel
position.
+ streamsynchronizer: reset eos on STREAM_START.
+ subparse: Look for the closing > of a tag after the opening <.
+ video: convertframe: Add D3D11 specific conversion path.
+ videometa: Only validate the alignment only when it contains
some info.
+ video-blend: Fix linking error with C++.
- Rebase reduce-required-meson.patch.
OBS-URL: https://build.opensuse.org/request/show/1095467
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=198
- Update to version 1.22.3:
+ allocators: Fix fdmem unit test with recent GLib versions.
+ audiotestsrc: Initialize all samples in wave=ticks mode.
+ decodebin3:
- Handle input streams without CAPS or TIME segment such as
e.g. udpsrc or pushfilesrc.
- Fix regression handling streams without caps.
- Fix random hang when remove failing stream.
+ uridecodebin3: Ensure atomic urisourcebin state change.
+ glvideoflip: fix leaked caps.
+ glcontext_wgl: fix missing unref.
+ playsink: Fix volume leak.
- Rebase reduce-required-meson.patch.
OBS-URL: https://build.opensuse.org/request/show/1088868
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=196
- Update to version 1.22.2:
+ alsasink: Fix for being stuck in stop_streaming_threads state
+ decodebin3: fix hang when removing a failing stream
+ gl: wayland: cleanup on close
+ parsebin: Improve elementary stream handling
+ playbin: fix deadlock when stopping stream with subtitles
visible even more
+ sdp: Skip source-specific caps fields when creating an SDP
media from caps
+ urisourcebin:
- Propagate sticky events from parsebin
- Activate pad before transferring sticky events
+ typefinding: fix failure to recognize application/dash+xml in
some cases
- Rebase patches with quilt.
OBS-URL: https://build.opensuse.org/request/show/1078783
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=194
- Add patch to reduce the required meson version to 0.61.0 since
that's what we have in SLE 15:
* reduce-required-meson.patch
- Probably because of a problem in SLE's meson, the generated
pkgconfig files are missing some variables that are needed by
rpm to generate the pkgconfig(...) provides correctly. In order
to fix this, we now check for those variables and insert them
in the pc files before installation if they're missing.
OBS-URL: https://build.opensuse.org/request/show/1061506
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=190
- Update to version 1.20.5:
+ audioconvert, audioresample, audiofilter: fix divide by 0 for
input buffer without caps
+ cdparanoia: Ignore compiler warning coming from the cdparanoia
header
+ oggdemux, parsebin: More leak fixes
+ opengl:
- Fix automatic dispmanx detection for rpi4
- Fix usage of eglCreate/DestroyImage
- Fix static linking on macOS
+ Bump core requirement in 1.20 branch to 1.20.4
+ oggdemux: Don't leak incoming EOS event
+ opusdec: Various channel-related fixes
+ subparse: Fix non-closed tag handling.
+ textrender:
- Don't blindly forward all events and don't blindly forward
all events
- Negotiate caps on a GAP event if none were negotiated yet
+ timeoverlay: fix pad leak
+ videodecoder: Only post latency message if it changed
+ videoscale: buffer meta handling fixes (NULL-terminate array of
valid meta tags)
+ videosink: Don't return unknown end-time from get_times()
OBS-URL: https://build.opensuse.org/request/show/1045075
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=187
- Update to version 1.20.4:
+ decodebin3:
- Fix mutex leaks
- Fix memory issues with active selection list
- uridecodebin3, urisourcebin: Event handling fixes
- Fix EOS event sequence
+ parsebin:
- Avoid crash with unknown streams
- SIGSEGV during HLS stream using souphttpsrc
+ glimagesink:
- Only allow setting the GL display/context if it is a valid
value
- Segfault on android devices
+ gstgl: Fix several memory leaks in macOS
+ opusenc: improve inband-fec property documentation
+ playsink: Hold a reference to the soft volume element
+ pbutils: descriptions: fix
gst_pb_utils_get_caps_description_flags()
+ rtspurl: Use gst_uri_join_strings() in
gst_rtsp_url_get_request_uri_with_control() instead of a
hand-crafted, wrong version
+ rtspconnection: protect cancellable by a mutex
+ sdpmessage: Don't set SDP medias from caps without
media/payload/clock-rate fields
+ samiparse: fix handling of self-closing tags
+ ssaparse: include required system headers for isspace() and
sscanf() functions
+ subparse: fix crash when parsing invalid timestamps in mpl2
+ subparse fixes
+ textoverlay: Don't miscalculate text running times
+ videoaggregator: always convert when user provides
converter-config
+ video: Fix scaling in 4x horizontal co-sited chroma (Y41B,
YUV9, YVU9 and IYU9)
+ xmptag: register musicbrainz tags during init to fix critical
in jpegparse
+ xvimagesink: fix image leaks in error code path
+ tests: skip unit tests for dependency-less elements that have
been disabled
OBS-URL: https://build.opensuse.org/request/show/1030508
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=185
- Update to version 1.20.3:
+ typefindfunctions: Fix WebVTT format detection for very short
files
+ gldisplay: Reorder GST_GL_WINDOW check for egl-device
+ rtpbasepayload: Copy all buffer metadata instead of just
GstMetas for the input meta buffer
+ codec-utils: Avoid out-of-bounds error
+ navigation: Fix Since markers for mouse scroll events
+ videoaggregator: Fix for unhandled negative rate
+ videoaggregator: Use floor() to calculate current position
+ video-color: Fix for missing clipping in PQ EOTF function
+ gst-play-1.0: Fix trick-mode handling in keyboard shortcut
+ audiovisualizer: shader: Fix out of bound write
OBS-URL: https://build.opensuse.org/request/show/984437
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=183
- Update to version 1.20.1:
+ typefindfunctions: Fix WebVTT format detection for very short
files
+ gldisplay: Reorder GST_GL_WINDOW check for egl-device
+ rtpbasepayload: Copy all buffer metadata instead of just
GstMetas for the input meta buffer
+ codec-utils: Avoid out-of-bounds error
+ navigation: Fix Since markers for mouse scroll events
+ videoaggregator: Fix for unhandled negative rate
+ videoaggregator: Use floor() to calculate current position
+ video-color: Fix for missing clipping in PQ EOTF function
+ gst-play-1.0: Fix trick-mode handling in keyboard shortcut
+ audiovisualizer: shader: Fix out of bound write
- Update to version 1.20.0:
+ Development in GitLab was switched to a single git repository
containing all the modules
+ GstPlay: new high-level playback library, replaces GstPlayer
+ WebM Alpha decoding support
+ Encoding profiles can now be tweaked with additional
application-specified element properties
+ Compositor: multi-threaded video conversion and mixing
+ RTP header extensions: unified support in RTP depayloader and
payloader base classes
+ SMPTE 2022-1 2-D Forward Error Correction support
+ Smart encoding (pass through) support for VP8, VP9, H.265 in
encodebin and transcodebin
+ Runtime compatibility support for libsoup2 and libsoup3
(libsoup3 support experimental)
+ Video decoder subframe support
+ Video decoder automatic packet-loss, data corruption, and
keyframe request handling for RTP / WebRTC / RTSP
+ mp4 and Matroska muxers now support profile/level/resolution
changes for H.264/H.265 input streams (i.e. codec data changing
on the fly)
+ mp4 muxing mode that initially creates a fragmented mp4 which
is converted to a regular mp4 on EOS
+ Audio support for the WebKit Port for Embedded (WPE) web page
source element
+ CUDA based video color space convert and rescale elements and
upload/download elements
+ NVIDIA memory:NVMM support for OpenGL glupload and gldownload
elements
+ Many WebRTC improvements
+ The new VA-API plugin implementation fleshed out with more
decoders and new postproc elements
+ AppSink API to retrieve events in addition to buffers and
buffer lists
+ AppSrc gained more configuration options for the internal queue
(leakiness, limits in buffers and time, getters to read current
levels)
+ Updated Rust bindings and many new Rust plugins
+ Improved support for custom minimal GStreamer builds
+ Support build against FFmpeg 5.0
+ Linux Stateless CODEC support gained MPEG-2 and VP9
+ Windows Direct3D11/DXVA decoder gained AV1 and MPEG-2 support
+ Lots of new plugins, features, performance improvements and bug
fixes
- Rebase add_wayland_dep_to_tests.patch.
- Drop gstreamer-plugins-base-gl-deps.patch: Fixed upstream
- Stop using service due to upstreams new mono-repo, just use
tarballs for now.
OBS-URL: https://build.opensuse.org/request/show/963061
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=177
- Update to version 1.18.5:
+ tagdemux: Fix crash when presented with malformed files
(security fix)
+ videoencoder: make sure the buffer is writable before modifying
metadata
+ video-converter: Fix for broken gamma remap with high bitdepth
YUV output
+ sdpmessage: fix mapping single char fmtp params
+ oggdemux: fix a race in push mode when performing the duration
seek
+ uridecodebin: Fix critical warnings
+ audio-converter: Fix resampling when there's nothing to output
+ tcp: fix build on Solaris
+ uridecodebin3: Nullify current item after all play items are
freed.
+ audio-resampler: Fix segfault when we can't output any frames
+ urisourcebin: Handle sources with dynamic pads and pads already
present
+ playbin2/3: autoplug/caps: don't expand caps to ANY
+ uridecodebin3/urisourcebin: Reusability fixes
+ rtspconnection: Only reset timeout when socket is unused
+ gstvideoaggregator.c: fix build with gcc 4.8
- Drop service, use source url, upstream changes in git.
OBS-URL: https://build.opensuse.org/request/show/951656
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=175
- Update to version 1.18.5:
+ appsrc: Don't leak buffer list while wrongly unreffing buffer
on EOS/flushing
+ audioaggregator:
- Don't overwrite already written samples
- Resync on the next buffer when dropping a buffer on discont
resyncing
+ audiobasesink: Fix of double lock release
+ audiobasesrc: Fix divide by zero assertion
+ clockoverlay: Fix broken string formatting by strftime() on
Windows
+ compositor: Fix NV12 blend operation
+ giosrc: Don't leak scheme string in gst_gio_src_query()
+ giobasesink: Handle incomplete writes in
gst_gio_base_sink_render()
+ gl/wayland:
- Use consistent wl_display when creating work queue for proxy
wrapper
- Provide a dummy global_remove function
+ gl: Fix build when Meson >= 0.58.0rc1
+ playbin2: fix base_time selection when flush seeking live (such
as with RTSP)
+ rtspconnection:
- Add IPv6 support for tunneled mode
- Consistently translate GIOError to GstRTSPResult (for
rtspsrc)
+ rawbaseparse: check destination format correctly
+ uridecodebin: Don't force floating reference for future
reusable decodebin
+ parsebin: Put stream flags in GstStream
+ splitmuxsink: always use factory property when set
+ video-converter: Set up matrix tables only once.
+ videoscale: Performance degradation from 1.16.2 -> 1.18.4
+ videotestsrc: Fix a leak when computing alpha caps
+ audio/video-converter: Plug some minor leaks
+ audio,video-format: Make generate_raw_formats idempotent for
assertions
+ Don't use volatile to mean atomic (fixes compiler warnings with
gcc 11)
+ Fix build issue on MinGW64
- Drop 90903917.patch: Fixed upstream.
OBS-URL: https://build.opensuse.org/request/show/919111
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=170
- Update to version 1.18.4:
+ tag: id3v2: fix frame size check and potential invalid reads
+ audio: Fix gst_audio_buffer_truncate() meta handling for non-interleaved audio
+ audioresample: respect buffer layout when draining
+ audioaggregator: fix input_buffer ownership
+ decodebin3: change stream selection message owner, so that the app sends the stream-selection event to the right element
+ rtspconnection: correct data_size when tunneled mode
+ uridecodebin3: make caps property work
+ video-converter: Don't upsample invalid lines
+ videodecoder: Fix racy critical when pool negotiation occurs during flush
+ video: Convert gst_video_info_to_caps() to take self as const ptr
+ examples: added qt core dependency for qt overlay example
OBS-URL: https://build.opensuse.org/request/show/882301
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=165
- Update to version 1.18.2:
+ gl/eagl: internal view resize fixes for glimagesink
+ video-converter: increase the number of cache lines for
resampling, fixes significant color issues and artefacts with
"special" resizing parameters in compositor
+ compositor: Don't crash in prepare_frame() if the pad was just
removed
+ decodebin3: Properly handle caps query with no filter
+ videoaggregator:
- Guarantee that the output format is supported
- Fix locking around vagg->info
- Fix renegotiation when using convert pad
- document and fix locking in convert pad
+ gluploadelement:
- Avoid race condition of base class' context
- Avoid race condition of inside upload creation
+ gl: Fix prototype of glGetSynciv()
+ tcpserversink: Don't assume g_socket_get_remote_address()
succeeds
+ audiodecoder, videodecoder: Don't reset max-errors property
value in reset()
+ audioencoder: Fix incorrect GST_LOG_OBJECT usage
+ pbutils: Fix segfault when using invalid encoding profile
+ g-i: videometa: gir annotate the size of plane array in new API
+ examples/gl/gtk: Add missing dependency on gstgl
+ video: fix doc warning.
- Fix the _service file and spec to really use the tarball
generated by service.
OBS-URL: https://build.opensuse.org/request/show/854482
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=161
- Update to version 1.16.0:
+ Highlights
- GStreamer WebRTC stack gained support for data channels for
peer-to-peer communication based on SCTP, BUNDLE support, as
well as support for multiple TURN servers.
- AV1 video codec support for Matroska and QuickTime/MP4
containers and more configuration options and supported
input formats for the AOMedia AV1 encoder
- Support for Closed Captions and other Ancillary Data in video
- Support for planar (non-interleaved) raw audio
- GstVideoAggregator, compositor and OpenGL mixer elements are
now in -base
- New alternate fields interlace mode where each buffer carries
a single field
- WebM and Matroska ContentEncryption support in the Matroska
demuxer
- new WebKit WPE-based web browser source element
- Video4Linux: HEVC encoding and decoding, JPEG encoding, and
improved dmabuf import/export
- Hardware-accelerated Nvidia video decoder gained support for
VP8/VP9 decoding, whilst the encoder gained support for
H.265/HEVC encoding.
- Many improvements to the Intel Media SDK based
hardware-accelerated video decoder and encoder plugin (msdk):
dmabuf import/export for zero-copy integration with other
components; VP9 decoding; 10-bit HEVC encoding; video
post-processing (vpp) support including deinterlacing; and
the video decoder now handles dynamic resolution changes.
- The ASS/SSA subtitle overlay renderer can now handle multiple
subtitles that overlap in time and will show them on screen
OBS-URL: https://build.opensuse.org/request/show/710671
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/gstreamer-plugins-base?expand=0&rev=132