When setting "mute=1" at the volume element, the stream stops after a very short time
Hello, I observed a strange behavior when using the volume element's mute attribute. First I was experiencing it with Sayonara and Strawberry music players.
Behavior
I broke it down to a simple pipeline. With playbin3
there were no issues
I tried with
- various file formats: mp3, wav, flac
-
pulsesink
,alsasink
,autoaudiosink
Same behavior.
Good behavior (everything as expected)
gst-launch-1.0 -v playbin uri=file:///tmp/test.mp3 mute=1
gst-launch-1.0 -v playbin3 uri=file:///tmp/test.mp3 mute=1
gst-launch-1.0 uridecodebin uri=file:///tmp/test.mp3 ! volume ! autoaudiosink
Bad behavior: Stream is cancelled after a short time seconds:
gst-launch-1.0 uridecodebin uri=file:///tmp/test.mp3 ! volume mute=1 ! autoaudiosink
Logs
export GST=DEBUG=4
0:00:00.043343654 624065 0x55f0be2b3f30 INFO GST_STATES gstelement.c:2716:_priv_gst_element_state_changed:<pipeline0> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
Redistribute latency...
0:00:00.043408073 624065 0x55f0be2b3f30 INFO GST_EVENT gstevent.c:1557:gst_event_new_latency: creating latency event 0:00:00.000000000
0:00:00.043430380 624065 0x55f0be2b3f30 INFO bin gstbin.c:2767:gst_bin_do_latency_func:<pipeline0> configured latency of 0:00:00.000000000
New clock: GstPulseSinkClock
0:00:00.047960665 624065 0x7f3550000d50 INFO task gsttask.c:368:gst_task_func:<wavparse0:sink> Task going to paused
Got EOS from element "pipeline0".
Execution ended after 0:00:00.005036797
Setting pipeline to NULL ...
0:00:00.048036162 624065 0x55f0be2b3f30 INFO GST_STATES gstbin.c:2480:gst_bin_element_set_state:<autoaudiosink0> current PLAYING pending VOID_PENDING, desired next PAUSED
Version
- OS: Manjaro Linux, Kernel 6.6.16-2-MANJARO
- Gstreamer and plugins from official repos
-
gst-plugins-base
1.22.10-1 -
gst-plugins-base-libs
1.22.10-1
Volume Element
$ gst-inspect-1.0 volume
Factory Details:
Rank none (0)
Long-name Volume
Klass Filter/Effect/Audio
Description Set volume on audio/raw streams
Author Andy Wingo <wingo@pobox.com>
Documentation https://gstreamer.freedesktop.org/documentation/volume/#volume-page
Plugin Details:
Name volume
Description plugin for controlling audio volume
Filename /usr/lib/gstreamer-1.0/libgstvolume.so
Version 1.22.10
License LGPL
Source module gst-plugins-base
Documentation https://gstreamer.freedesktop.org/documentation/volume/
Source release date 2024-02-13
Binary package Arch Linux gst-plugins-base 1.22.10-1
Origin URL https://www.archlinux.org/
Playbin3
gst-inspect-1.0 playbin3
Factory Details:
Rank none (0)
Long-name Player Bin 3
Klass Generic/Bin/Player
Description Autoplug and play media from an uri
Author Wim Taymans <wim.taymans@gmail.com>
Documentation https://gstreamer.freedesktop.org/documentation/playback/playbin3.html
Plugin Details:
Name playback
Description various playback elements
Filename /usr/lib/gstreamer-1.0/libgstplayback.so
Version 1.22.10
License LGPL
Source module gst-plugins-base
Documentation https://gstreamer.freedesktop.org/documentation/playback/
Source release date 2024-02-13
Binary package Arch Linux gst-plugins-base 1.22.10-1
Origin URL https://www.archlinux.org/