• Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Strawberry crashes on song change

    Scheduled Pinned Locked Moved
    Technical Help
    3
    12
    1.1k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      azino
      last edited by

      Hello,

      I am running the flatpak version 1.0.23 of Strawbery on Pop!_OS 22.04 jammy (Ubuntu)
      I feel like I am having this exact problem mentioned here:
      https://forum.strawberrymusicplayer.org/topic/195/strawberry-crashing-since-last-update

      The program will go into a buffering state when trying to load a next song (can happen on second song or later) and when I click on anything while it is "buffering", strawberry freezes completely. Killing the process and restarting the program works, but the problem always re-occurs.

      I thought it was caused by my collection being stored on HDD, but I moved it to SSD and it still occurs.

      Let me know if it is a known problem with the flatpak version. 🙂

      jonasJ 1 Reply Last reply Reply Quote 0
      • jonasJ
        jonas @azino
        last edited by

        @azino
        What GStreamer version do you have in flatpak?
        GStreamer versions 1.22.9 and 1.22.10 are buggy, so if it's one of those it could be related to this issue: https://github.com/strawberrymusicplayer/strawberry/issues/1376

        A 1 Reply Last reply Reply Quote 0
        • A
          azino @jonas
          last edited by azino

          @jonas I have GStreamer 1.22.11 installed in the flatpak. I'll look into installing the working 1.22.8, but for now I'm using VLC as the Engine and it seems to have fixed the problem. 🙂 Thank you for the fast response!

          Edit:

          I looked into it. the flatpak's last commit is this:

          ID: org.strawberrymusicplayer.strawberry
                 Ref: app/org.strawberrymusicplayer.strawberry/x86_64/stable
                Arch: x86_64
              Branch: stable
          Collection: org.flathub.Stable
            Download: 84.2 MB
           Installed: 248.4 MB
             Runtime: org.kde.Platform/x86_64/6.6
                 Sdk: org.kde.Sdk/x86_64/6.6
          
              Commit: 7b5e244fc2f038aa0d865e303683a19538da1898bdaf6deee45a802093cb6532
              Parent: 92eab1ea728f2b1379727fddf7d20fe2c06b4b43a93495c395d9b0462af048e1
             Subject: Update strawberry-1.0.22.tar.xz to 1.0.23 (74b13794)
                Date: 2024-01-12 06:55:07 +0000
          

          which is before version 1.22.9 came out according to GStreamer's website
          https://gstreamer.freedesktop.org/releases/1.22/

          I also see no version specification in the flatpak's manifest

          {
            "id" : "org.strawberrymusicplayer.strawberry",
            "runtime" : "org.kde.Platform",
            "runtime-version" : "6.6",
            "runtime-commit" : "23107550082daf3b2892a4a0db2543838578ca882340a756b988bc5c1614540c",
            "sdk" : "org.kde.Sdk",
            "sdk-commit" : "9a11133e9e3c4eace8edb4c930e8c69264d4dc50e0df43b4a941a845e36baaf0",
            "command" : "start-strawberry",
            "modules" : [
              {
                "name" : "boost",
                "buildsystem" : "simple",
                "sources" : [
                  {
                    "url" : "https://boostorg.jfrog.io/artifactory/main/release/1.84.0/source/boost_1_84_0.tar.gz",
                    "sha256" : "a5800f405508f5df8114558ca9855d2640a2de8f0445f051fa1c7c3383045724",
                    "x-checker-data" : {
                      "type" : "anitya",
                      "project-id" : 6845,
                      "url-template" : "https://boostorg.jfrog.io/artifactory/main/release/$version/source/boost_${version0}_${version1}_$version2.tar.gz"
                    },
                    "type" : "archive"
                  }
                ],
                "build-commands" : [
                  "./bootstrap.sh  --prefix=\"${FLATPAK_DEST}\"",
                  "./b2 --without-mpi --without-graph_parallel -j ${FLATPAK_BUILDER_N_JOBS}",
                  "./b2 --without-mpi --without-graph_parallel -j ${FLATPAK_BUILDER_N_JOBS} headers",
                  "./b2 --without-mpi --without-graph_parallel install"
                ]
              },
              {
                "name" : "chromaprint",
                "buildsystem" : "cmake-ninja",
                "config-opts" : [
                  "-DCMAKE_BUILD_TYPE=Release"
                ],
                "sources" : [
                  {
                    "url" : "https://github.com/acoustid/chromaprint/releases/download/v1.5.1/chromaprint-1.5.1.tar.gz",
                    "sha256" : "a1aad8fa3b8b18b78d3755b3767faff9abb67242e01b478ec9a64e190f335e1c",
                    "x-checker-data" : {
                      "type" : "anitya",
                      "project-id" : 286,
                      "url-template" : "https://github.com/acoustid/chromaprint/releases/download/v$version/chromaprint-$version.tar.gz"
                    },
                    "type" : "archive"
                  }
                ]
              },
              {
                "name" : "protobuf",
                "sources" : [
                  {
                    "url" : "https://github.com/protocolbuffers/protobuf/releases/download/v21.8/protobuf-cpp-3.21.8.tar.gz",
                    "sha256" : "f6251f2d00aad41b34c1dfa3d752713cb1bb1b7020108168a4deaa206ba8ed42",
                    "type" : "archive"
                  }
                ],
                "cleanup" : [
                  "/bin/protoc"
                ]
              },
              {
                "name" : "taglib",
                "buildsystem" : "cmake-ninja",
                "config-opts" : [
                  "-DCMAKE_BUILD_TYPE=Release",
                  "-DBUILD_SHARED_LIBS=ON",
                  "-DCMAKE_POSITION_INDEPENDENT_CODE=ON",
                  "-DWITH_MP4=ON",
                  "-DWITH_ASF=ON"
                ],
                "sources" : [
                  {
                    "url" : "https://github.com/taglib/taglib/releases/download/v1.12/taglib-1.12.tar.gz",
                    "sha256" : "7fccd07669a523b07a15bd24c8da1bbb92206cb19e9366c3692af3d79253b703",
                    "type" : "archive"
                  }
                ],
                "cleanup" : [
                  "/bin"
                ]
              },
              {
                "name" : "libebur128",
                "buildsystem" : "cmake-ninja",
                "config-opts" : [
                  "-DCMAKE_BUILD_TYPE=Release"
                ],
                "sources" : [
                  {
                    "url" : "https://github.com/jiixyj/libebur128.git",
                    "commit" : "67b33abe1558160ed76ada1322329b0e9e058b02",
                    "x-checker-data" : {
                      "type" : "git",
                      "tag-pattern" : "v([\\d]\\.[\\d]\\.[\\d])"
                    },
                    "type" : "git"
                  }
                ]
              },
              {
                "name" : "libcdio",
                "config-opts" : [
                  "--without-cd-drive",
                  "--without-cd-info",
                  "--without-cdda-player",
                  "--without-cd-read",
                  "--without-iso-info",
                  "--without-iso-read",
                  "--with-pic",
                  "--disable-static"
                ],
                "sources" : [
                  {
                    "url" : "https://ftp.gnu.org/gnu/libcdio/libcdio-2.1.0.tar.bz2",
                    "sha256" : "8550e9589dbd594bfac93b81ecf129b1dc9d0d51e90f9696f1b2f9b2af32712b",
                    "x-checker-data" : {
                      "type" : "anitya",
                      "project-id" : 1573,
                      "stable-only" : true,
                      "url-template" : "https://ftp.gnu.org/gnu/libcdio/libcdio-$version.tar.bz2"
                    },
                    "type" : "archive"
                  }
                ],
                "cleanup" : [
                  "/bin"
                ]
              },
              {
                "name" : "libusb",
                "config-opts" : [
                  "--disable-static"
                ],
                "sources" : [
                  {
                    "url" : "https://github.com/libusb/libusb/releases/download/v1.0.26/libusb-1.0.26.tar.bz2",
                    "sha256" : "12ce7a61fc9854d1d2a1ffe095f7b5fac19ddba095c259e6067a46500381b5a5",
                    "type" : "archive"
                  }
                ],
                "cleanup" : [
                  "/lib/*.la",
                  "/lib/pkgconfig",
                  "/include"
                ],
                "post-install" : [
                  "install -Dm644 COPYING ${FLATPAK_DEST}/share/licenses/libusb/COPYING"
                ]
              },
              {
                "name" : "libmtp",
                "config-opts" : [
                  "--disable-static",
                  "--with-udev=/app/lib/udev"
                ],
                "sources" : [
                  {
                    "url" : "https://github.com/libmtp/libmtp/releases/download/v1.1.21/libmtp-1.1.21.tar.gz",
                    "sha256" : "f4c1ceb3df020a6cb851110f620c14fe399518c494ed252039cbfb4e34335135",
                    "x-checker-data" : {
                      "type" : "anitya",
                      "project-id" : 10017,
                      "url-template" : "https://github.com/libmtp/libmtp/releases/download/v$version/libmtp-$version.tar.gz"
                    },
                    "type" : "archive"
                  }
                ],
                "cleanup" : [
                  "/bin",
                  "/share"
                ]
              },
              {
                "name" : "vlc",
                "config-opts" : [
                  "BUILDCC=/usr/bin/gcc -std=gnu99",
                  "--disable-debug",
                  "--disable-ncurses",
                  "--disable-a52",
                  "--disable-qt",
                  "--disable-lua",
                  "--disable-vlc",
                  "--prefix=/app"
                ],
                "sources" : [
                  {
                    "url" : "https://download.videolan.org/videolan/vlc/3.0.20/vlc-3.0.20.tar.xz",
                    "sha256" : "adc7285b4d2721cddf40eb5270cada2aaa10a334cb546fd55a06353447ba29b5",
                    "x-checker-data" : {
                      "type" : "anitya",
                      "project-id" : 6504,
                      "versions" : {
                        ">=" : "3",
                        "<" : "4"
                      },
                      "url-template" : "https://download.videolan.org/videolan/vlc/$version/vlc-$version.tar.xz"
                    },
                    "type" : "archive"
                  }
                ],
                "cleanup" : [
                  "/share",
                  "/bin"
                ]
              },
              {
                "name" : "strawberry",
                "buildsystem" : "cmake-ninja",
                "config-opts" : [
                  "-DCMAKE_BUILD_TYPE=Release"
                ],
                "sources" : [
                  {
                    "url" : "https://github.com/strawberrymusicplayer/strawberry/releases/download/1.0.23/strawberry-1.0.23.tar.xz",
                    "sha256" : "24f63064caf62c72330e9fa0808a1ca938339831d0a4e8385986280601a54f10",
                    "x-checker-data" : {
                      "type" : "json",
                      "url" : "https://api.github.com/repos/strawberrymusicplayer/strawberry/releases/latest",
                      "version-query" : ".tag_name",
                      "url-query" : ".assets[] | select(.name==\"strawberry-\"+ $version +\".tar.xz\") | .browser_download_url"
                    },
                    "type" : "archive"
                  },
                  {
                    "commands" : [
                      "export TMPDIR=$XDG_RUNTIME_DIR/app/$FLATPAK_ID",
                      "/app/bin/strawberry \"$@\""
                    ],
                    "dest-filename" : "start-strawberry.sh",
                    "type" : "script"
                  }
                ],
                "post-install" : [
                  "install -Dm755 start-strawberry.sh /app/bin/start-strawberry"
                ]
              }
            ],
            "cleanup" : [
              "/include",
              "/lib/cmake",
              "/lib/pkgconfig",
              "/share/info",
              "/share/man",
              "/share/tagparser",
              "/share/c++utilities",
              "/bin/mmc-tool"
            ],
            "finish-args" : [
              "--share=ipc",
              "--socket=fallback-x11",
              "--socket=wayland",
              "--socket=pulseaudio",
              "--device=all",
              "--share=network",
              "--filesystem=xdg-music",
              "--filesystem=/mnt",
              "--filesystem=/media",
              "--filesystem=/run/media",
              "--system-talk-name=org.freedesktop.Avahi",
              "--talk-name=org.freedesktop.Notifications",
              "--system-talk-name=org.freedesktop.UDisks2",
              "--talk-name=org.gnome.SettingsDaemon.MediaKeys",
              "--talk-name=org.wiimotedev.deviceEvents",
              "--talk-name=org.mpris.MediaPlayer2.Player",
              "--own-name=org.mpris.MediaPlayer2.strawberry",
              "--talk-name=org.kde.StatusNotifierWatcher",
              "--talk-name=org.kde.kglobalaccel"
            ],
            "rename-icon" : "strawberry",
            "source-date-epoch" : 1705041004
          }
          

          I don't know enough about flatpak myself, but I guess it must be possible to manually add an entry for GStreamer's version though.

          jonasJ 1 Reply Last reply Reply Quote 0
          • jonasJ
            jonas @azino
            last edited by

            @azino

            1.22.11 is not affected by that bug so then I guess the issue is something else.
            Are you using pulseaudio, pipewire or alsa directly?
            What output is set in the backend settings of strawberry, and have you specifically selected the device?

            A 1 Reply Last reply Reply Quote 0
            • A
              azino @jonas
              last edited by azino

              @jonas I'm using the default pipewire that comes with Ubuntu based Pop!_OS, but I think pulseaudio controls the sources because the OS runs an older version of GNOME. Not familiar with how it works though.

              I often change the output, so I had it set to "Wrapper audio sink for automatically detected audio sink" when using GStreamer. I will test now with "Plays audio to a PulseAudio server" selected, I just noticed that there was a subsequent source selection afterwards.

              1 Reply Last reply Reply Quote 0
              • lamusica80L
                lamusica80
                last edited by

                Same situation here: I have a new Fedora 40 installation. GStreamer version is 1.22.12.
                Sometimes 20 songs can be played and then the crash occurs, sometimes after only three songs.

                1 Reply Last reply Reply Quote 0
                • lamusica80L
                  lamusica80
                  last edited by

                  Just to add - I ran strawberry now with

                  GST_DEBUG=5 strawberry

                  And got this output (last 5 lines) before the crash:

                  0:00:19.293589446 3814 0x5575328a0b50 INFO GST_ELEMENT_PADS gstelement.c:1016:gst_element_get_static_pad: found pad pipeline-2-audioqueueconverter:src
                  0:00:19.293605247 3814 0x5575328a0b50 DEBUG GST_PADS gstpad.c:1379:cleanup_hook:pipeline-2-audioqueueconverter:src cleaning up hook 2 with flags 00030101
                  0:00:19.293622700 3814 0x5575328a0b50 DEBUG GST_BUS gstelement.c:3543:gst_element_get_bus:<pipeline-2-pipeline> got bus <bus15>
                  0:00:19.293645470 3814 0x5575328a0b50 DEBUG GST_BUS gstbus.c:846:gst_bus_source_dispose:<bus15> disposing source 0x55753543f950
                  0:00:19.293663901 3814 0x5575328a0b50 DEBUG GST_STATES gstelement.c:2967:gst_element_set_state_func:<pipeline-2-pipeline> set_state to NULL

                  jonasJ 1 Reply Last reply Reply Quote 0
                  • jonasJ
                    jonas @lamusica80
                    last edited by jonas

                    Are any of the fading features enabled in the backend settings? What's the buffer setting set to?

                    Please run strawberry with GST_DEBUG_FILE too, compress and attach the entire log.

                    GST_DEBUG=5 GST_DEBUG_FILE=/tmp/strawberry-gst-debug.log strawberry
                    
                    lamusica80L 1 Reply Last reply Reply Quote 0
                    • lamusica80L
                      lamusica80 @jonas
                      last edited by

                      @jonas the Strawberry default values have not been changed. The error occurs on two different PC's one Lenovo laptop with an internal Intel sound card and one Thinkcentre with an USB 7.1 soundcard (Logilink). On both PC's is Fedora 40 with Strawberry 1.0.23 running.

                      Question: how can I upload the file? There's no option to attach a file. Or alternatively: where can I upload the file and add a link to it here?

                      jonasJ 1 Reply Last reply Reply Quote 0
                      • jonasJ
                        jonas @lamusica80
                        last edited by

                        @lamusica80
                        You can use any file sharing service such as dropbox and paste the link here.

                        jonasJ 1 Reply Last reply Reply Quote 0
                        • jonasJ
                          jonas @jonas
                          last edited by jonas

                          I think this might be related to the same bug as https://forum.strawberrymusicplayer.org/topic/1506/buffering-forever/24

                          If you have GStreamer 1.22, and GStreamer 1.24 is not available, try a development build of strawberry from https://builds.strawberrymusicplayer.org/ from today's date which switches back to playbin2 if GStreamer 1.22 or lower is in use.

                          lamusica80L 1 Reply Last reply Reply Quote 0
                          • lamusica80L
                            lamusica80 @jonas
                            last edited by

                            @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!

                            1 Reply Last reply Reply Quote 1
                            • First post
                              Last post
                            Powered by NodeBB | Contributors