Amarok not playing anything

I have reinstalled my Leap 42.1 without formatting the home partition, so everything is intact as user preferences etc.

Today I wanted to test if Amarok works but it seems it can’t play anything - neither any online stream, nor a local mp3 file. Pressing the play button simply does nothing.

I tried starting it from console to hopefully see some info as feedback but all I got was:

#amarok
libpng warning: iCCP: known incorrect sRGB profile
QWidget::insertAction: Attempt to insert null action
********************************************************************************************** 
** AMAROK WAS STARTED IN NORMAL MODE. IF YOU WANT TO SEE DEBUGGING INFORMATION, PLEASE USE: ** 
** amarok --debug                                                                           ** 
********************************************************************************************** 
me@i7:~> "<?xml version="1.0" encoding="UTF-8" ?>
<lfm status="failed"><error code="6">User not found</error>
</lfm>
" 
Calling appendChild() on a null node does nothing.
Trying to set an invalid MediaSource -> ignoring.
Could not parse stylesheet of widget 0x2d86450
Calling appendChild() on a null node does nothing.    

I even tried running ‘amarok --debug’, here is what it outputs when I click Play:


amarok: BEGIN: void EngineController::playPause() 
amarok:   [EngineController] PlayPause: EngineController state  Phonon::StoppedState  
amarok:   BEGIN: void EngineController::play() 
amarok:     BEGIN: void Playlist::Actions::play() 
amarok:       BEGIN: void Playlist::Actions::play(quint64, bool) 
amarok:         BEGIN: void EngineController::play(Meta::TrackPtr, uint, bool) 
amarok:           BEGIN: void EngineController::stop(bool, bool) 
amarok:           END__: void EngineController::stop(bool, bool) [Took: 0s] 
amarok:           [EngineController] play: bounded is  QObject(0x0)  current "schmidt" 
amarok:           [EngineController] Just a normal, boring track... :-P 
amarok:           BEGIN: void EngineController::playUrl(const KUrl&, uint, bool) 
amarok:             [EngineController] URL:  KUrl("") "" 
amarok:             [EngineController] Offset:  0 
Trying to set an invalid MediaSource -> ignoring.
amarok:           END__: void EngineController::playUrl(const KUrl&, uint, bool) [Took: 0s] 
amarok:         END__: void EngineController::play(Meta::TrackPtr, uint, bool) [Took: 0s] 
amarok:       END__: void Playlist::Actions::play(quint64, bool) [Took: 0s] 
amarok:     END__: void Playlist::Actions::play() [Took: 0s] 
amarok:   END__: void EngineController::play() [Took: 0s] 
amarok: END__: void EngineController::playPause() [Took: 0s] 
amarok: BEGIN: LongMessageWidget::LongMessageWidget(QWidget*, const QString&, Amarok::Logger::MessageType) 
amarok: END__: LongMessageWidget::LongMessageWidget(QWidget*, const QString&, Amarok::Logger::MessageType) [Took: 0.002s] 
amarok: BEGIN: LongMessageWidget::LongMessageWidget(QWidget*, const QString&, Amarok::Logger::MessageType) 
amarok: END__: LongMessageWidget::LongMessageWidget(QWidget*, const QString&, Amarok::Logger::MessageType) [Took: 0.002s] 
amarok: BEGIN: virtual PopupWidget::~PopupWidget() 
amarok: END__: virtual PopupWidget::~PopupWidget() [Took: 0s] 
amarok: BEGIN: virtual PopupWidget::~PopupWidget() 
amarok: END__: virtual PopupWidget::~PopupWidget() [Took: 0s] 

Other applications play normally but not Amarok.

How can I find the problem and possibly fix it?

Have you done a vendor change to packman??

No. Should I?

On my earlier Leap 42.1 I didn’t do vendor change either and everything worked.

No it did not LOL

Vendor change has to happen to play proprietary formats. openSUSE being open source only does not ship proprietary codecs you MUST get from packman. Doing a vendor change assures you get ALL the codecs from packman

Yes, it did.

Vendor change has to happen to play proprietary formats. openSUSE being open source only does not ship proprietary codecs you MUST get from packman. Doing a vendor change assures you get ALL the codecs from packman

I was able to play the exact same files and streams before reinstalling Leap. So I don’t quite understand why a vendor change is needed although I understand what is a proprietary codec.

Could you explain why I should change vendor for Amarok in order to be able to play a simple MP3 file just like I was able to do before with the same program version?

I assure you it did not!!! Proprietary codecs are NOT shipped thus no app will play them with out getting them from packman that is simply the way it is. . Not sure how I can be clearer NO proprietary codecs are included in the default install of any openSUSE versions. They must come from packman. There are several ways to get the codecs but the easiest and less error prone is to do a vendor change. A simple mp3 is not open source it is a proprietary (ie encumbered by patents or other IP) format

zypper lr

note the number of packman repo say it is #

then

zypper dup --from #

where # is the number of packman. This will install all codecs and multimedia programs from packman and mark them that in future they should come from packman. Thus vendor change

Hm. Maybe you are right. I tried to play one of the OGG files in /usr/share/sounds and it was a success.

So which packages exactly should I change vendor for?

BTW in case vendor change is really necessary, this means the YaST description of Amarok is wrong and misleading:

“Amarok is a media player for all kinds of media. This includes MP3, Ogg Vorbis, audio CDs, podcasts and streams. Play lists can be stored in .m3u or .pls files.”

Switched vendor for:

amarok
amarok-lang
gstreamer
gstreamer-lang
gstreamer-plugins-base
gstreamer-plugins-base-lang

Now even the OGG file doesn’t play any more.

BTW I also see this one is installed (from Main repo):

gstreamer-0_10-fluendo-mp3 - GStreamer plug-in from Fluendo for MP3 support

This package contains the fully licensed MP3 decoder binary as available from http://shop.fluendo.com free of charge.

which makes my confusion of MP3 not playing even bigger.

Hi
Version numbers… gstreamer == 1.0 what you see is the old version gstreamer 0.10 for mp3 you need installed gstreamer-fluendo-mp3

Look at the output from;


zypper if pullin-fluendo-mp3

This is what Leap installed during the normal installation process. I didn’t add any of these manually. But as it is suggested that mp3 shouldn’t play because of it being proprietary, then how come there is a package for it in the main repo? And regardless of that - isn’t it supposed to work? If not - why is it there claiming mp3 support at all. I hope you understand my confusion.

smplayer installed from main repo plays everything…

Look at the output from;

zypper if pullin-fluendo-mp3

# zypper if pullin-fluendo-mp3
Loading repository data...
Reading installed packages...




Information for package pullin-fluendo-mp3:
-------------------------------------------
Repository: Main Update Repository
Name: pullin-fluendo-mp3
Version: 13.2-4.1
Arch: noarch
Vendor: openSUSE
Installed: No
Status: not installed
Installed Size: 317 B
Summary: Placeholder for Fluendo MP3 Plugin
Description: 
  The installation of this package triggers online update of
  gstreamer-0_10-fluendo-mp3 and gstreamer-fluendo-mp3.

I installed pullin-fluendo-mp3 and Amarok still plays nothing - neither OGG, nor MP3, nor online radio.

Hi
Have no idea about amorak, the confusion is all down to a) repos and b) gstreamer versions which affects c) applications and what they were built with and from where.

Follow the multimedia guide and should all sort it out;
https://forums.opensuse.org/entry.php/165-openSUSE-Leap-42-1-Multimedia-Guide

Else install the $$ fluendo codec bundle and be done.

At present the packman folks are trying to clean things up from their end to get versions/builds back to something sane.

Why get all balled up I gave you a general way of going it all with 2 commands. trying to sort it out pakage by package is a waste of time.

As I mentioned I already did that but it didn’t help:


# zypper if pullin-fluendo-mp3
Loading repository data...
Reading installed packages...




Information for package pullin-fluendo-mp3:
-------------------------------------------
Repository: Main Update Repository
Name: pullin-fluendo-mp3
Version: 13.2-4.1
Arch: noarch
Vendor: openSUSE
Installed: Yes
Status: up-to-date
Installed Size: 317 B
Summary: Placeholder for Fluendo MP3 Plugin
Description: 
  The installation of this package triggers online update of
  gstreamer-0_10-fluendo-mp3 and gstreamer-fluendo-mp3.

Ok, I did that. Nothing changed. The only result from all changes proposed in this thread is that Amarok now can’t play even OGG (which it previously could).

What’s next?

Can anyone help please?

Update:

After reboot everything plays.

Investing further I switched packages back to main repo and rebooted again - not playing.

Installed only these 2 packages (from main repo):

gstreamer-fluendo-mp3
pullin-fluendo-mp3

And everything plays again.

So it seems the whole thing has nothing to do with Packman.

Thank you “heyjoe” you made my day. The package gstreamer-fluendo-mp3 helped although Packman is disabled at this moment.

Sounds great!