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

    gstreamer sink issue with .ogg files on freeBSD

    Scheduled Pinned Locked Moved
    Technical Help
    3
    9
    487
    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.
    • S
      skyenosaur
      last edited by skyenosaur

      Hello! I’m sorry but I don’t want to waste hours and hours trying to find a solution when there are probably people around here who know how to debug this.

      I’m on FreeBSD (yeah, don’t ask) and strawberry works largely fine, which I am very happy about. I installed the gstreamer1-plugins-all meta package and the vorbis package is definitely installed. And yet, ogg files don’t play. Instead I get this nonsense:

      The stream is in the wrong format.
      
      ../gst-libs/gst/audio/gstaudiobasesink.c(1193): gst_audio_base_sink_preroll (): /GstPlayBin3:pipeline-10-pipeline/GstPlaySink:playsink/GstBin:abin/GstBin:audiobin/GstAutoAudioSink:pipeline-10-autoaudiosink/GstSndioSink:pipeline-10-autoaudiosink-actual-sink-sndio: sink not negotiated.
      

      I don’t understand why it has trouble figuring out its sink only in this specific file format. I don’t know if I’m doing something wrong, or if something is wrong with the FreeBSD package, or if this is an honest bug. How do I find out?

      Edit: I just had the genius idea to try playing the same files in vlc, and that works fine. So, is this a bug in strawberry?

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

        @skyenosaur
        The .ogg files, are you sure those are Ogg Vorbis? In that case you need the gstreamer ogg and vorbis plugins, check that you have the files: libgstogg.so and libgstvorbis.so, these should be in a directory called gstreamer-1.0, usually under the systems lib directory.
        Close strawberry and delete the plugin cache ~/.cache/gstreamer-1.0/*.bin.
        You can check that the plugins are correctly detected using the gst-inspect-1.0 utility.:

        gst-inspect-1.0 ogg
        gst-inspect-1.0 vorbis
        
        jonasJ 1 Reply Last reply Reply Quote 2
        • jonasJ
          jonas @jonas
          last edited by

          I suggest also to check the files with file utility to double-check that the files are actually Ogg Vorbis, there is also Opus and FLAC which could use the same extension.

          file <filename>
          

          Should return Ogg data, Vorbis audio

          S 1 Reply Last reply Reply Quote 1
          • S
            skyenosaur @jonas
            last edited by

            @jonas hi, thank you for your reply! i deleted the cache file and checked all the things you recommended. the libraries are present, gst-inspect looks pretty satisfied with them, the files are definitely vorbis. i am a little stumped

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

              @skyenosaur
              What format are the audio files in, are they 44.1Khz / 16 bit or something else?
              If you enable the equalizer or the replay gain, do they play then?

              Does it play using gst-play-1.0?

              gst-play-1.0 --use-playbin3 file:///filepath
              
              jonasJ 1 Reply Last reply Reply Quote 1
              • jonasJ
                jonas @jonas
                last edited by

                I now notice from the debug message that you are using sndio, that's a 3rdparty unsupported plugin not part of gstreamer. I suggest to report this issue to FreeBSD.

                S A 2 Replies Last reply Reply Quote 1
                • S
                  skyenosaur @jonas
                  last edited by skyenosaur

                  @jonas thanks a lot!! yeah gst-play does indeed not play them. i’m gonna find the right people to report this issue to. thank you very much, you saved me a bunch of headaches here 🙂

                  also i made it work by simply removing the sndio package, that was a very helpful hint.

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

                    @jonas
                    In FreeBSD 14.0, following the instructions given in this post, my case is the same, strawberry only works if I remove the sndio package. It turns out that sndio is necessary to open the ungoogled-chromium browser, because without it the browser doesn't work!

                    Other programs like smplayer, and ogg itself play ogg, possibly because they don't use this gst.

                    In other words, that gst is a problem!

                    Is there anything you can do to use strawberry? Because you can't choose between strawberry and Ungoogle Chromium. I need both working! Any ideas?

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

                      @apprentice
                      Like I already said, report it to FreeBSD.
                      Someone from the BSD community needs to maintain the sndio plugin for GStreamer.

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