Buffering Forever
-
It plays well for some random time, and this starts happening and repeats for a while util Strawberry hangs and has to be killed.
0:04:25.483199208 369292 0x563cfab55e30 DEBUG bin gstbin.c:4119:bin_query_position_fold:<audiobin> got position 135980000000 0:04:25.483227435 369292 0x563cfab55e30 DEBUG bin gstbin.c:4137:bin_query_position_done:<abin> max position 135980000000 0:04:25.483256907 369292 0x563cfab55e30 DEBUG bin gstbin.c:4319:gst_bin_query:<abin> query 0x563cfbe67680 result 1 0:04:25.483284658 369292 0x563cfab55e30 DEBUG bin gstbin.c:4119:bin_query_position_fold:<abin> got position 135980000000 0:04:25.483322419 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<playsink> child audiotee is not sink 0:04:25.483355296 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<playsink> child streamsynchronizer0 is not sink 0:04:25.483383968 369292 0x563cfab55e30 DEBUG bin gstbin.c:4137:bin_query_position_done:<playsink> max position 135980000000 0:04:25.483425726 369292 0x563cfab55e30 DEBUG bin gstbin.c:4319:gst_bin_query:<playsink> query 0x563cfbe67680 result 1 0:04:25.483454043 369292 0x563cfab55e30 DEBUG bin gstbin.c:4119:bin_query_position_fold:<playsink> got position 135980000000 0:04:25.483484418 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<pipeline-1-pipeline> child uridecodebin3 is not sink 0:04:25.483513938 369292 0x563cfab55e30 DEBUG bin gstbin.c:4137:bin_query_position_done:<pipeline-1-pipeline> max position 135980000000 0:04:25.483543844 369292 0x563cfab55e30 DEBUG bin gstbin.c:4319:gst_bin_query:<pipeline-1-pipeline> query 0x563cfbe67680 result 1 0:04:25.682078892 369292 0x563cfab55e30 DEBUG query gstquery.c:680:gst_query_new_custom: creating new query 0x563cfab71060 position 0:04:25.682152244 369292 0x563cfab55e30 DEBUG GST_ELEMENT_PADS gstelement.c:2098:gst_element_query: send query on element pipeline-1-pipeline 0:04:25.682192464 369292 0x563cfab55e30 DEBUG bin gstbin.c:4296:gst_bin_query:<pipeline-1-pipeline> Sending query 0x563cfab71060 (type position) to sink children 0:04:25.682239420 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<pipeline-1-pipeline> child playsink is sink 0:04:25.682272328 369292 0x563cfab55e30 DEBUG GST_ELEMENT_PADS gstelement.c:2098:gst_element_query: send query on element playsink 0:04:25.682331504 369292 0x563cfab55e30 DEBUG bin gstbin.c:4296:gst_bin_query:<playsink> Sending query 0x563cfab71060 (type position) to sink children 0:04:25.682361296 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<playsink> child abin is sink 0:04:25.682430655 369292 0x563cfab55e30 DEBUG GST_ELEMENT_PADS gstelement.c:2098:gst_element_query: send query on element abin 0:04:25.682463501 369292 0x563cfab55e30 DEBUG bin gstbin.c:4296:gst_bin_query:<abin> Sending query 0x563cfab71060 (type position) to sink children 0:04:25.682499897 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<abin> child aconv is not sink 0:04:25.682530288 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<abin> child aqueue is not sink 0:04:25.682560215 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<abin> child audiobin is sink 0:04:25.682585115 369292 0x563cfab55e30 DEBUG GST_ELEMENT_PADS gstelement.c:2098:gst_element_query: send query on element audiobin 0:04:25.682614715 369292 0x563cfab55e30 DEBUG bin gstbin.c:4296:gst_bin_query:<audiobin> Sending query 0x563cfab71060 (type position) to sink children 0:04:25.682648701 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child capsfilter1 is not sink 0:04:25.682678037 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child capsfilter0 is not sink 0:04:25.682708415 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-ebur128_volume is not sink 0:04:25.682737319 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-equalizer_nbands is not sink 0:04:25.682767918 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-equalizer_preamp is not sink 0:04:25.682794287 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-volume_sw is not sink 0:04:25.682823139 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-audiosinkconverter is not sink 0:04:25.682855776 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-audioqueueconverter is not sink 0:04:25.682882301 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-audioqueue is not sink 0:04:25.682909878 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-openalsink is sink 0:04:25.682935370 369292 0x563cfab55e30 DEBUG GST_ELEMENT_PADS gstelement.c:2098:gst_element_query: send query on element pipeline-1-openalsink 0:04:25.682965503 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5426:default_element_query:<pipeline-1-openalsink> position query in format time 0:04:25.683000197 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5213:gst_base_sink_get_position:<pipeline-1-openalsink> in paused, using start time 0:02:15.980000000 0:04:25.683029067 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5253:gst_base_sink_get_position:<pipeline-1-openalsink> in PLAYING using last 0:02:16.202443873 0:04:25.683082919 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5332:gst_base_sink_get_position:<pipeline-1-openalsink> now 0:02:15.980000000 - base_time 0:00:00.000000000 - base 0:00:00.000000000 + time 0:00:00.000000000 last 0:02:16.202443873 0:04:25.683125044 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5348:gst_base_sink_get_position:<pipeline-1-openalsink> res: 1, POSITION: 0:02:15.980000000 0:04:25.683154346 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5545:default_element_query:<pipeline-1-openalsink> query position returns 1 0:04:25.683179840 369292 0x563cfab55e30 DEBUG bin gstbin.c:4119:bin_query_position_fold:<pipeline-1-openalsink> got position 135980000000 0:04:25.683207549 369292 0x563cfab55e30 DEBUG bin gstbin.c:4137:bin_query_position_done:<audiobin> max position 135980000000 0:04:25.683234250 369292 0x563cfab55e30 DEBUG bin gstbin.c:4319:gst_bin_query:<audiobin> query 0x563cfab71060 result 1 0:04:25.683259062 369292 0x563cfab55e30 DEBUG bin gstbin.c:4119:bin_query_position_fold:<audiobin> got position 135980000000 0:04:25.683282956 369292 0x563cfab55e30 DEBUG bin gstbin.c:4137:bin_query_position_done:<abin> max position 135980000000 0:04:25.683307162 369292 0x563cfab55e30 DEBUG bin gstbin.c:4319:gst_bin_query:<abin> query 0x563cfab71060 result 1 0:04:25.683330014 369292 0x563cfab55e30 DEBUG bin gstbin.c:4119:bin_query_position_fold:<abin> got position 135980000000 0:04:25.683357034 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<playsink> child audiotee is not sink 0:04:25.683383890 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<playsink> child streamsynchronizer0 is not sink 0:04:25.683429214 369292 0x563cfab55e30 DEBUG bin gstbin.c:4137:bin_query_position_done:<playsink> max position 135980000000 0:04:25.683454265 369292 0x563cfab55e30 DEBUG bin gstbin.c:4319:gst_bin_query:<playsink> query 0x563cfab71060 result 1 0:04:25.683480937 369292 0x563cfab55e30 DEBUG bin gstbin.c:4119:bin_query_position_fold:<playsink> got position 135980000000 0:04:25.683506599 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<pipeline-1-pipeline> child uridecodebin3 is not sink 0:04:25.683533747 369292 0x563cfab55e30 DEBUG bin gstbin.c:4137:bin_query_position_done:<pipeline-1-pipeline> max position 135980000000 0:04:25.683557886 369292 0x563cfab55e30 DEBUG bin gstbin.c:4319:gst_bin_query:<pipeline-1-pipeline> query 0x563cfab71060 result 1 0:04:25.782244131 369292 0x563cfab55e30 DEBUG query gstquery.c:680:gst_query_new_custom: creating new query 0x563cfbf885e0 position 0:04:25.782310006 369292 0x563cfab55e30 DEBUG GST_ELEMENT_PADS gstelement.c:2098:gst_element_query: send query on element pipeline-1-pipeline 0:04:25.782357530 369292 0x563cfab55e30 DEBUG bin gstbin.c:4296:gst_bin_query:<pipeline-1-pipeline> Sending query 0x563cfbf885e0 (type position) to sink children 0:04:25.782430917 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<pipeline-1-pipeline> child playsink is sink 0:04:25.782465209 369292 0x563cfab55e30 DEBUG GST_ELEMENT_PADS gstelement.c:2098:gst_element_query: send query on element playsink 0:04:25.782493782 369292 0x563cfab55e30 DEBUG bin gstbin.c:4296:gst_bin_query:<playsink> Sending query 0x563cfbf885e0 (type position) to sink children 0:04:25.782526908 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<playsink> child abin is sink 0:04:25.782556236 369292 0x563cfab55e30 DEBUG GST_ELEMENT_PADS gstelement.c:2098:gst_element_query: send query on element abin 0:04:25.782588658 369292 0x563cfab55e30 DEBUG bin gstbin.c:4296:gst_bin_query:<abin> Sending query 0x563cfbf885e0 (type position) to sink children 0:04:25.782618982 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<abin> child aconv is not sink 0:04:25.782653137 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<abin> child aqueue is not sink 0:04:25.782680154 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<abin> child audiobin is sink 0:04:25.782704307 369292 0x563cfab55e30 DEBUG GST_ELEMENT_PADS gstelement.c:2098:gst_element_query: send query on element audiobin 0:04:25.782738020 369292 0x563cfab55e30 DEBUG bin gstbin.c:4296:gst_bin_query:<audiobin> Sending query 0x563cfbf885e0 (type position) to sink children 0:04:25.782767169 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child capsfilter1 is not sink 0:04:25.782801203 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child capsfilter0 is not sink 0:04:25.782837791 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-ebur128_volume is not sink 0:04:25.782868357 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-equalizer_nbands is not sink 0:04:25.782897970 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-equalizer_preamp is not sink 0:04:25.782927456 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-volume_sw is not sink 0:04:25.782956787 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-audiosinkconverter is not sink 0:04:25.782986940 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-audioqueueconverter is not sink 0:04:25.783018055 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-audioqueue is not sink 0:04:25.783048058 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<audiobin> child pipeline-1-openalsink is sink 0:04:25.783076516 369292 0x563cfab55e30 DEBUG GST_ELEMENT_PADS gstelement.c:2098:gst_element_query: send query on element pipeline-1-openalsink 0:04:25.783109627 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5426:default_element_query:<pipeline-1-openalsink> position query in format time 0:04:25.783143917 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5213:gst_base_sink_get_position:<pipeline-1-openalsink> in paused, using start time 0:02:15.980000000 0:04:25.783176246 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5253:gst_base_sink_get_position:<pipeline-1-openalsink> in PLAYING using last 0:02:16.202443873 0:04:25.783225330 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5332:gst_base_sink_get_position:<pipeline-1-openalsink> now 0:02:15.980000000 - base_time 0:00:00.000000000 - base 0:00:00.000000000 + time 0:00:00.000000000 last 0:02:16.202443873 0:04:25.783264807 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5348:gst_base_sink_get_position:<pipeline-1-openalsink> res: 1, POSITION: 0:02:15.980000000 0:04:25.783296065 369292 0x563cfab55e30 DEBUG basesink gstbasesink.c:5545:default_element_query:<pipeline-1-openalsink> query position returns 1 0:04:25.783325542 369292 0x563cfab55e30 DEBUG bin gstbin.c:4119:bin_query_position_fold:<pipeline-1-openalsink> got position 135980000000 0:04:25.783356625 369292 0x563cfab55e30 DEBUG bin gstbin.c:4137:bin_query_position_done:<audiobin> max position 135980000000 0:04:25.783406850 369292 0x563cfab55e30 DEBUG bin gstbin.c:4319:gst_bin_query:<audiobin> query 0x563cfbf885e0 result 1 0:04:25.783435591 369292 0x563cfab55e30 DEBUG bin gstbin.c:4119:bin_query_position_fold:<audiobin> got position 135980000000 0:04:25.783463880 369292 0x563cfab55e30 DEBUG bin gstbin.c:4137:bin_query_position_done:<abin> max position 135980000000 0:04:25.783493796 369292 0x563cfab55e30 DEBUG bin gstbin.c:4319:gst_bin_query:<abin> query 0x563cfbf885e0 result 1 0:04:25.783521668 369292 0x563cfab55e30 DEBUG bin gstbin.c:4119:bin_query_position_fold:<abin> got position 135980000000 0:04:25.783553215 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<playsink> child audiotee is not sink 0:04:25.783583630 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<playsink> child streamsynchronizer0 is not sink 0:04:25.783611801 369292 0x563cfab55e30 DEBUG bin gstbin.c:4137:bin_query_position_done:<playsink> max position 135980000000 0:04:25.783640664 369292 0x563cfab55e30 DEBUG bin gstbin.c:4319:gst_bin_query:<playsink> query 0x563cfbf885e0 result 1 0:04:25.783667811 369292 0x563cfab55e30 DEBUG bin gstbin.c:4119:bin_query_position_fold:<playsink> got position 135980000000 0:04:25.783697270 369292 0x563cfab55e30 DEBUG GST_STATES gstbin.c:1957:bin_element_is_sink:<pipeline-1-pipeline> child uridecodebin3 is not sink 0:04:25.783727013 369292 0x563cfab55e30 DEBUG bin gstbin.c:4137:bin_query_position_done:<pipeline-1-pipeline> max position 135980000000 0:04:25.783755265 369292 0x563cfab55e30 DEBUG bin gstbin.c:4319:gst_bin_query:<pipeline-1-pipeline> query 0x563cfbf885e0 result 1
-
I can't reproduce this. What's the output and buffer settings under backend settings set to? Are any features such as audio normalization, equalizer or bs2b enabled? Are any of the fading features enabled?
Please run strawberry GST_DEBUG_FILE too and attach the entire log.GST_DEBUG=5 GST_DEBUG_FILE=/tmp/strawberry-gst-debug.log strawberry
-
This post is deleted! -
@jonas That did not take long. It only played one track before it stopped. How do I get the log attached? I tried to drag and drop but got a message that I lacked privileges.
-
@rlkeeney
Are the audio files stored on a local disk?
I don't think many users use OpenAL. Do you have the same issue with ALSA and PulseAudio?
Have you tried to decrease low and high watermark and increase buffer duration?
I suggest something like high watermark: 0,90 - 0,99 and low watermark: 0,10 and buffer duration 8000, that will buffer more data sooner, and stop buffering sooner too. -
@jonas said in Buffering Forever:
OpenAL
I was messing with the settings to see if anything changed.The files are on a local disk.
I will try all possible audio outputs to be sure I didn't skip anything.
I also changed the buffer settings to the one you suggested.
-
@jonas I tried all the listed outputs with these results:
OSS - Could not open audio device for playback. Virtual Audio Sync - No Sound Jack Server Resource not found - Plays - Hangs - Buffering 0% Wrapper Audio Sync - Plays - Hangs OSS v4 - Could not open audio device for playback. Pulse Audio - Plays - Hangs ALSA - Plays - Hangs - Buffering 0% - Killall strawberry a2dp sink - Failed to link audio sink converter to audio sink with filter for a2dpsink
When Strawberry hangs, the quit option only removes the GUI. Strawberry is still running in the background, and the process has to be killed.
I am running Fedora release 39 (Thirty Nine) & MATE Desktop.
-
@rlkeeney Cool, I am also running Fedora Mate (but the latest Fedora release 40):
I have the same situation: sporadic crashes when changing songs and also the “buffering forever” error described above sometimes occurs.
In my opinion, however, Strawberry is the best music player there is and I think that these errors will soon be fixed.
-
It might be an issue specific to Fedora, I'll try intalling Fedora in VirtualBox and see if I can reproduce this issue.
Are you using PulseAudio, pipwire or ALSA?Check with:
ps xua|grep pipewire
ps xua|grep pulse
-
Here is the output:
user@mybox:~$ ps xua|grep pipewire
user 1548 0.0 0.4 355116 36000 ? S<sl 09:10 0:34 /usr/bin/pipewire
user 1551 0.0 0.5 371872 42908 ? S<Lsl 09:10 0:43 /usr/bin/pipewire-pulse
user 6833 0.0 0.0 227772 2432 pts/0 S+ 22:01 0:00 grep --color=auto pipewire
user@mybox:~$ ps xua|grep pulse
user 1551 0.0 0.5 371872 42908 ? S<Lsl 09:10 0:43 /usr/bin/pipewire-pulse
user 6839 0.0 0.0 227772 2284 pts/0 S+ 22:02 0:00 grep --color=auto pulse
user@mybox:~$ -
I tested both Fedora 39 and 40 with the default gnome installation in VirtualBox. Strawberry keeps freezing both with PulseAudio and Pipewire output. I tried to disable pipewire with (sudo systemctl disable --global pipewire / systemctl --user disable --now pipewire.{socket,service}), but pipewire just keeps enabling itself again, finally deleted the pipewire binary to make it stop. Then I tested plain ALSA output, but get the same issue.
Then I tested a new openSUSE Tumbleweed with Gnome default installation in Virtualbox, both pipewire, pulseaudio and alsa output works, no freeze and no playback issues.
Maybe report this to Fedora? -
Thank you for your effort in installing Fedora and testing Strawberry in that environment!
Good to hear that the error also occurs in the standard Gnome environment.
I had a fear that it is related to Mate, but fortunately that's not the case.Not sure, if the error is in Fedora, because I have tested three other audio players (Amarok, Audacious and Parole).
Non of them causes errors when changings songs, even when I do it very quickly.Only Strawberry and Clementine seem to have the problem.
So I don't know what to report to Fedora. If I report the bug in Strawberry, they will surely refer me back to the developer of Strawberry ...
-
@lamusica80 said in Buffering Forever:
So I don't know what to report to Fedora. If I report the bug in Strawberry, they will surely refer me back to the developer of Strawberry ...
@jonas - Yes, we need to know what to tell them.
-
I tested a new installation of Fedora with KDE in VirtualBox, it does not seem to have the issue.
So I did some more testing on Fedora with Gnome too, and it seems like a deadlock issue when the pipeline is destroyed and gst_element_set_state is called, seems like a gstreamer bug to me. -
@jonas
Another strange thing: I have Fedora 40 Mate also installed on a AMD Ryzen 3 and tested Strawberry there without any issues. I changed the songs very fast and everything runs like a charm.
My other two Fedora 40 Mate installations running on a Lenovo Thinkcentre M58 Core2Quad and a Lenovo T470 with an i5-6300U processor are causing this issue. -
I built GStreamer 1.24.4 on Fedora 39 Gnome, the issue is then gone.
I also notice if I change strawberry to use the old playbin2 instead playbin3 the issue is also gone.
So there seem to be a bug in GStreamer 1.22 with playbin3, but for some reason it only appears to be an issue when using gnome.
In the meantime Fedora 40 have available GStreamer 1.24.4 in their repositories, so I've tested Fedora 40 with Gnome and the issue is resolved there too.
For Fedora 39 you can try this development build of strawberry: https://builds.strawberrymusicplayer.org/fedora/39/strawberry-1.0.23-2.179.g8a27c6a5.fc39.x86_64.rpm -
-
@jonas
Good news: today gstreamer1-1.24.4-1 was rolled out by the Fedora Team and everything works fine now on my good old Lenovo M58
So you were right: the error was in gstreamer and not in Strawberry!
Thank you for your excellent work!However, on my T470 I can't play any music with Strawberry and with Parole music player (both abend immediately). Audacious and Amarok have no issues.
But that's no problem, as I use my M58 with the 7.1 surround card for listening music.
-
Just informationally, I have this problem on windows. It's less common than the problem of constant spontaneous pausing, though.
-
@jonas I upgraded Fedors from 39 to 40 and it seems to be fixed.