MPEG-1 Layer3 (mp3) not supported (after v4.1>v4.2 upgrade)

well, the mpg123-version doesn’t matter pretty much in terms of “Does it work in principle”

if it is installed, it works no matter if 1.25, 1.28 or 1.29

so the next thing is to go one step further: gstreamer1.0
which version of gstreamer1.0-plugins-bad is installed for example?

Thanks for the help :slight_smile:
]# pkcon search gstreamer

farstream-0.2.9+git1-1.4.2.jolla.armv7hl (installed)  Libraries for video conferencing applications
gstreamer1.0-1.18.5-3.armv7hl (installed) GStreamer streaming media framework runtime
gstreamer1.0-droid-0.20210518.1-1.armv7hl (installed) GStreamer droid plug-in contains elements using the Android HAL
gstreamer1.0-droid-tools-0.20210518.1-1.armv7hl (installed)     Tools for gst-droid
gstreamer1.0-libav-1.18.4+git1-1.6.1.jolla.armv7hl (installed)  GStreamer Streaming-media framework plug-in using libav (FFmpeg).
gstreamer1.0-plugins-bad-1.18.5-3.armv7hl (installed)           GStreamer streaming media framework "bad" plug-ins
nemo-gstreamer1.0-interfaces-0.20200911.0-1.3.2.jolla.armv7hl (installed)       gstreamer interface used for video rendering
nemo-qtmultimedia-plugins-gstvideotexturebackend-0.1.2-1.5.1.jolla.armv7hl (installed)      QtMultimedia QML VideoOutput backend for GStreamer NemoVideoTexture interface
qt5-qtmultimedia-gsttools-5.6.2+git26.1-1.11.1.jolla.armv7hl (installed)        Qt Multimedia - Utility library for GStreamer media services
qt5-qtmultimedia-plugin-mediaservice-gstcamerabin-5.6.2+git26.1-1.11.1.jolla.armv7hl (installed)    Qt Multimedia - GStreamer camerabin video capture media service
qt5-qtmultimedia-plugin-mediaservice-gstmediacapture-5.6.2+git26.1-1.11.1.jolla.armv7hl (installed) Qt Multimedia - GStreamer video4linux2 video capture media service
qt5-qtmultimedia-plugin-mediaservice-gstmediaplayer-5.6.2+git26.1-1.11.1.jolla.armv7hl (installed)  Qt Multimedia - GStreamer playback media service
telepathy-qt5-farstream-0.9.8+git2-1.7.1.jolla.armv7hl (installed)      Qt 5 Telepathy/Farstream integration

So it’s:

gstreamer1.0-plugins-bad-1.18.5-3.armv7hl

I’m NOT using any Android on my SFOS so those “…-droid-…” things are maybe unnecessary?

you need the droid-packages for mp4/aac/camera support, they are neccesary. But it seem you lack gstreamer1.0-plugins-base and gstreamer1.0-plugins-good

2 Likes

I was very happy to read about this, because I hoped “this could be it” !
Sadly it seems I just missed to copy those to the list above, from a 200+ “available / installed” lines.
So they are both installed:

[root@Sailfish nemo]# pkcon install  gstreamer1.0-plugins-base
Fatal error: gstreamer1.0-plugins-base-1.18.5-3.armv7hl is already installed

[root@Sailfish nemo]# pkcon install  gstreamer1.0-plugins-good
Fatal error: gstreamer1.0-plugins-good-1.18.5-3.armv7hl is already installed

Any other idea what to check?
Thanks in forward!

yes, I would suggest installing the mpg123 program (should be exactly the same version as libmpg123 installed) Then you can try to play a mp3 file with it: mpg123 [file.mp3]

I’m trying to find out, how to do that?

  • Jolla’s store does not show any mpg123 for search
  • Storeman shows only yours (1.29.1)

not in the store, it is in the normal jolla repo like libmpg123

ok, success.

Here is the result:

[root@Sailfish nemo]# mpg123 /home/nemo/Music/bird_SMS.mp3
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
        version 1.25.10; written and copyright by Michael Hipp and others
        free software (LGPL) without any warranty but with best wishes
[src/libout123/modules/oss.c:174] error: Can't open default sound device!
[src/libout123/libout123.c:455] error: Found no driver out of [pulse,oss] working with device <default>.
main: [src/mpg123.c:309] error: out123 error 3: failure loading driver module

The strange thing is:

  • it can play jolla’s default ringtones
  • if I install an other sound-player, it can play MP3s

Also I can not play any videos.

that seems to be the problem, pulseaudio does not seem to work correctly

OK, but How do I fix it?
What else should I check?
How to find out what’s “default sound device” ?

[root@Sailfish nemo]# pkcon search pulseaudio
Searching by details
Starting
Refreshing software list
Querying
Finished
Available       alsa-plugins-pulseaudio-1.2.2+git1-1.6.1.jolla.armv7hl (jolla)  Alsa to PulseAudio backend
Available       alsa-plugins-pulseaudio-1.2.2+git1-1.2.1.jolla.armv7hl (openrepos-lpr)  Alsa to PulseAudio backend
Available       cava-0.6.1-1.armv7hl (openrepos-Kabouik)                        Console-based Audio Visualizer for Alsa
Available       cmus-2.8.0.24-2.armv7hl (openrepos-Kabouik)                     Small, fast and powerful console music player for Unix-Like operating systems
Available       cmus-2.8.0.24-1.armv7hl (openrepos-Kabouik)                     Small, fast and powerful console music player for Unix-Like operating systems
Installed       droid-config-vince-pulseaudio-settings-1-202109220609.armv7hl (installed)       PulseAudio settings for vince hw
Installed       pulseaudio-14.2+git4-1.8.1.jolla.armv7hl (installed)            General purpose sound server
Available       pulseaudio-debuginfo-14.2+git4-1.8.1.jolla.armv7hl (jolla)      Debug information for package pulseaudio
Available       pulseaudio-debugsource-14.2+git4-1.8.1.jolla.armv7hl (jolla)    Debug sources for package pulseaudio
Available       pulseaudio-devel-14.2+git4-1.8.1.jolla.armv7hl (jolla)          PulseAudio Development headers and libraries
Available       pulseaudio-doc-14.2+git4-1.8.1.jolla.armv7hl (jolla)            Documentation for pulseaudio
Installed       pulseaudio-module-keepalive-1.0.1-1.6.1.jolla.armv7hl (installed)       PulseAudio keepalive module
Available       pulseaudio-module-keepalive-debuginfo-1.0.1-1.6.1.jolla.armv7hl (jolla) Debug information for package pulseaudio-module-keepalive
Available       pulseaudio-module-keepalive-debugsource-1.0.1-1.6.1.jolla.armv7hl (jolla)       Debug sources for package pulseaudio-module-keepalive
Available       pulseaudio-modules-bluez4-1.1-1.5.1.jolla.armv7hl (jolla)       Legacy BlueZ4 modules for PulseAudio
Available       pulseaudio-modules-bluez4-debuginfo-1.1-1.5.1.jolla.armv7hl (jolla)     Debug information for package pulseaudio-modules-bluez4
Available       pulseaudio-modules-bluez4-debugsource-1.1-1.5.1.jolla.armv7hl (jolla)   Debug sources for package pulseaudio-modules-bluez4
Installed       pulseaudio-modules-droid-14.2.92-1.armv7hl (installed)          PulseAudio Droid HAL modules
Installed       pulseaudio-modules-droid-common-14.2.92-1.armv7hl (installed)   Common libs for the PulseAudio droid modules
Available       pulseaudio-modules-droid-devel-14.2.92-1.armv7hl (adaptation0)  Development files for PulseAudio droid modules
Available       pulseaudio-modules-droid-devel-14.2.92-1.armv7hl (sfos-test)    Development files for PulseAudio droid modules
Installed       pulseaudio-modules-droid-hidl-1.3.1-1.armv7hl (installed)       PulseAudio Droid HIDL module
Installed       pulseaudio-modules-nemo-common-14.2.30-1.5.1.jolla.armv7hl (installed)  Common libs for the Nemo PulseAudio modules
Available       pulseaudio-modules-nemo-debuginfo-14.2.30-1.5.1.jolla.armv7hl (jolla)   Debug information for package pulseaudio-modules-nemo
Available       pulseaudio-modules-nemo-debugsource-14.2.30-1.5.1.jolla.armv7hl (jolla) Debug sources for package pulseaudio-modules-nemo
Available       pulseaudio-modules-nemo-devel-14.2.30-1.5.1.jolla.armv7hl (jolla)       Development files for modules.
Installed       pulseaudio-modules-nemo-mainvolume-14.2.30-1.5.1.jolla.armv7hl (installed)      Mainvolume module for PulseAudio
Available       pulseaudio-modules-nemo-music-14.2.30-1.5.1.jolla.armv7hl (jolla)       Music module for PulseAudio
Installed       pulseaudio-modules-nemo-parameters-14.2.30-1.5.1.jolla.armv7hl (installed)      Algorithm parameter manager module for PulseAudio
Available       pulseaudio-modules-nemo-record-14.2.30-1.5.1.jolla.armv7hl (jolla)      Cmtspeech module for PulseAudio
Available       pulseaudio-modules-nemo-sidetone-14.2.30-1.5.1.jolla.armv7hl (jolla)    Sidetone module for PulseAudio
Installed       pulseaudio-modules-nemo-stream-restore-14.2.30-1.5.1.jolla.armv7hl (installed)  Modified version of the original stream-restore module for PulseAudio
Available       pulseaudio-modules-nemo-test-14.2.30-1.5.1.jolla.armv7hl (jolla)        Test module for PulseAudio
Available       pulseaudio-modules-nemo-voice-14.2.30-1.5.1.jolla.armv7hl (jolla)       Voice module for PulseAudio
Installed       pulseaudio-policy-enforcement-14.2.44-1.5.1.jolla.armv7hl (installed)   Pulseaudio module for enforcing policy decisions in the audio domain
Available       pulseaudio-policy-enforcement-debuginfo-14.2.44-1.5.1.jolla.armv7hl (jolla)     Debug information for package pulseaudio-policy-enforcement
Available       pulseaudio-policy-enforcement-debugsource-14.2.44-1.5.1.jolla.armv7hl (jolla)   Debug sources for package pulseaudio-policy-enforcement
Installed       qt5-qtmultimedia-plugin-audio-pulseaudio-5.6.2+git26.1-1.11.1.jolla.armv7hl (installed) Qt Multimedia - Pulse Audio plugin

first: try gst-inspect-1.0 pulseaudio

default audio device is pulse. In my build of mpg123 and in jollas’ too

[root@Sailfish nemo]# gst-inspect-1.0 pulseaudio
bash: gst-inspect-1.0: not found

then you need gstreamer1.0-tools or gstreamer1.0-plugins-base-apps . I don’t know exactly now in which… (and you should run those tools gst-inspect-1.0, mpg123 … not as root)

Thank you all for the hints! :grinning: I hit that bug in SFOS 4.3 at Jolla C and managed to fix it.

The solution that worked was to remove all gstreamer1.18.5- (obviously broken) packages with zypper and install gstreamer1.18.4-*.*
All fiddling with mpg123 and libmpg123 was useless unntil I downgraded gstreamer. The “version --dup” command does nothing in this case. The “gst-inspect-1.0 pulseaudio” shows the root of this problem.

BEFORE:

[root@Sailfish nemo]# gst-inspect-1.0 pulseaudio

(gst-plugin-scanner:9832): GStreamer-WARNING **: 13:11:58.017: Failed to load plugin '/usr/lib/gstreamer-1.0/libgstfaac.so': libfaac.so.0: cannot open shared object file: No such file or directory

(gst-plugin-scanner:9832): GStreamer-WARNING **: 13:11:58.027: Failed to load plugin '/usr/lib/gstreamer-1.0/libgstde265.so': libde265.so.0: cannot open shared object file: No such file or directory

(gst-plugin-scanner:9832): GStreamer-WARNING **: 13:11:58.248: Failed to load plugin '/usr/lib/gstreamer-1.0/libgstmpg123.so': /usr/lib/gstreamer-1.0/libgstmpg123.so: undefined symbol: mpg123_param2

(gst-plugin-scanner:9832): GStreamer-WARNING **: 13:11:58.278: Failed to load plugin '/usr/lib/gstreamer-1.0/libgstfdkaac.so': libfdk-aac.so.2: cannot open shared object file: No such file or directory

(gst-plugin-scanner:9832): GStreamer-WARNING **: 13:11:58.538: Failed to load plugin '/usr/lib/gstreamer-1.0/libgstx265.so': libx265.so.199: cannot open shared object file: No such file or directory

(gst-plugin-scanner:9832): GStreamer-WARNING **: 13:11:59.837: Failed to load plugin '/usr/lib/gstreamer-1.0/libgstmms.so': libmms.so.0: cannot open shared object file: No such file or directory

(gst-plugin-scanner:9832): GStreamer-WARNING **: 13:11:59.842: Failed to load plugin '/usr/lib/gstreamer-1.0/libgstmplex.so': libmjpegutils-2.1.so.0: cannot open shared object file: No such file or directory

(gst-plugin-scanner:9832): GStreamer-WARNING **: 13:11:59.972: Failed to load plugin '/usr/lib/gstreamer-1.0/libgstmpeg2enc.so': libmjpegutils-2.1.so.0: cannot open shared object file: No such file or directory
Plugin Details:
  Name                     pulseaudio
  Description              PulseAudio plugin library
  Filename                 /usr/lib/gstreamer-1.0/libgstpulseaudio.so
  Version                  1.18.5
  License                  LGPL
  Source module            gst-plugins-good
  Source release date      2021-09-08
  Binary package           SailfishOS GStreamer package plugins (good set) for JollaPhone and X and XA2
  Origin URL               https://openrepos.net/content/lpr/gstreamer-1185-jollaphone-x-xa2

  pulsedeviceprovider: PulseAudio Device Provider
  pulsesrc: PulseAudio Audio Source
  pulsesink: PulseAudio Audio Sink

  3 features:
  +-- 2 elements
  +-- 1 device providers

AFTER:

# gst-inspect-1.0 pulseaudio
Plugin Details:
  Name                     pulseaudio
  Description              PulseAudio plugin library
  Filename                 /usr/lib/gstreamer-1.0/libgstpulseaudio.so
  Version                  1.18.4
  License                  LGPL
  Source module            gst-plugins-good
  Source release date      2021-03-15
  Binary package           SailfishOS GStreamer package plugins (good set)
  Origin URL               http://sailfishos.org/

  pulsedeviceprovider: PulseAudio Device Provider
  pulsesrc: PulseAudio Audio Source
  pulsesink: PulseAudio Audio Sink

  3 features:
  +-- 2 elements
  +-- 1 device providers

The exact commands I used were:

# zypper refresh
# zypper install gstreamer1.0-tools
    (choose 1 to downgrade of gstreamer1.0-1.18.5-3.armv7hl to gstreamer1.0-1.18.4+git1-1.5.3.jolla.armv7hl )
# zypper install  gstreamer1.0-plugins-base-apps
    (choose 1 to downgrade of gstreamer1.0-plugins-base-1.18.5-3.armv7hl to gstreamer1.0-plugins-base-1.18.4+git2-1.6.1.jolla.armv7hl)
# gst-inspect-1.0 pulseaudio  (to see that mp3 plugin is not available)
# zypper install --oldpackage  gstreamer1.0-plugins-good-1.18.4+git1-1.5.1.jolla.armv7hl
# zypper install --oldpackage  gstreamer1.0-plugins-bad-1.18.4+git1-1.5.1.jolla.armv7hl
# zypper install gstreamer1.0-droid-tools (optional, I think)
# gst-inspect-1.0 pulseaudio  (now all should be fine)
# reboot
1 Like

The /usr/lib/gstreamer-1.0/libgstmpg123.so: undefined symbol: mpg123_param2 problem might be a fixable repo dependency problem, but it seems to be safer to ignore the repos with gstreamer-1.18.5 for now. :face_with_monocle:
What are the benefits of installing gstreamer-1.18.5 from openrepos? What apps could pull it? I don’t remember installing it directly.

What Type of phone do you have exactly?

Jolla C.

All Xperias lack replaceable battery, which means that they will freeze and die every winter and I cannot use them while touring away from the electric grid.

Carrying a slightly higher version number (to satisfy versionitis, which is futile, because soon there will be a newer version :wink:).

What apps could pull it?

E.g., having one of lpr’s repositories at Openrepos (lpr, lpr_A7, lpr_next; for gstreamer the lpr one) enabled during a (former) SailfishOS upgrade (as denoted before), but there are some other actions (installing something with a dependency on gstreamer), which may trigger that, too.

Solved: Xiaomi Redmi 5 Plus :

ssu dr openrepos_lpr   
  //... this will disable the lpr package
 
zypper refresh

zypper install gstreamer1.0-tools  
  // (choose 1 to downgrade of gstreamer1.0-1.18.5-3.armv7hl to gstreamer1.0-1.18.4+git1-1.5.3.jolla.armv7hl )

zypper install  gstreamer1.0-plugins-base-apps  
  // (choose 1 to downgrade of gstreamer1.0-plugins-base-1.18.5-3.armv7hl to gstreamer1.0-plugins-base-1.18.4+git2-1.6.1.jolla.armv7hl)

gst-inspect-1.0 pulseaudio  
  // (to see that mp3 plugin is not available)

zypper install --oldpackage gstreamer1.0-plugins-good-1.18.4+git1-1.6.1.jolla.armv7hl
zypper install --oldpackage  gstreamer1.0-plugins-bad-1.18.4+git1-1.4.1.jolla.armv7hl

reboot

:slight_smile:

to check the available packages use:

pkcon search gstreamer