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! 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
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.
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 ).
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
what are the benefits?
If you want to watch HEVC on a Jolla1, here you go.
If you want to watch AV1 video on a XA2, also.
Want to hear a mms:// stream, that is what you need.
Or hear AAC audio without a device with gstreamer1.0-droid
No versionitis…
Thanks for explanation! These are good reasons. But MP3 is 70% of web radio, podcasts, most of lossy coded portable audio files. We cannot lose it. Please, make the dependency to (lib)mpg123 more precise, so that package managers would automatically install a version compatible with your gstreamer build.
There are several gstreamer packages in OpenRepos and it is hard to understand the ups and downs of installing them for a common man.
this was not intented
should be fixed now with 1.18.5-4 releases (+other fixes in changelog)
works now with mpg123>=1.25.10
To me that is exactly that: Versionitis!
New versions will have new features, fixed bugs and new bugs.
Always (no matter how the details vary)!
It is Jolla’s job to offer new versions of the packages their Linux distribution (SailfishOS) is comprised of (per new SailfishOS releases).
Plus SailfishOS (especially its update mechanisms) is quite fragile, hence one better avoids exchanging extant packages from Jolla by third party ones. Installing third party RPMs, which replace Jolla’s original RPMs, regularly results in the upgrade horrors this thread depicts so nicely. And this will continue until Jolla offers the mechanisms modern Linux distributions provide to handle this: “Repository pinning (vendor repos)” and / or at least “repository priorities” (currently SailfishOS’ SSU knows only prio “99”).
no, you can have all those features with my gstreamer1.16 builds but not with jollas 1.18 ones, it’s called build options…
This update time I was also affected by update problems , the half of the apps didn’t work and by trying to repair it went only worse.
To end this update limbo, I took the SD-Card with all my data out of the phone (and also the SIM-Card) and reflashed it.
Now it runs really fine except few apps (unfortunately Advanced Cam, too).