Bug 516939 - rhythmbox stops playing and uses too much CPU
Summary: rhythmbox stops playing and uses too much CPU
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Fedora
Classification: Fedora
Component: rhythmbox
Version: 11
Hardware: x86_64
OS: Linux
low
high
Target Milestone: ---
Assignee: Bastien Nocera
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-08-11 23:13 UTC by Andre Costa
Modified: 2009-10-05 11:46 UTC (History)
1 user (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2009-10-05 11:46:21 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Andre Costa 2009-08-11 23:13:09 UTC
Description of problem: Rhythmbox doesn't play any song, and uses 80-100% CPU. Songs are MP3 files, and the progress slider just stays put. The UI is responsive, the application is not frozen, it just doesn't play anything. I can skip songs using Next/Prev, but none of them plays either.


Version-Release number of selected component (if applicable): 0.12.3-1


How reproducible: sometimes


Steps to Reproduce:
1. try to play MP3 songs with rhythmbox
2.
3.
  
Actual results: song doesn't play, rhythmbox seems to do nothing but uses a lot of CPU


Expected results: song would play, CPU usage should be low


Additional info: While rhythmbox is stuck, the "Applications" tab on the Sound Preferences dialog shows two applications (rhythmbox and another icon that resembles a movie player), and the slider for the other app keeps flickering. PulseAudio also uses a lot of CPU when rhythmbox is stuck.

I ran strace -p PID -c for both rhyhtmbox and pulseaudio, and this is what I got:

rhythmbox
====
% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
100.00    0.162358          53      3091       294 futex
  0.00    0.000000           0         8           madvise
------ ----------- ----------- --------- --------- ----------------
100.00    0.162358                  3099       294 total

pulseaudio
====
% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
 45.75    0.012656           1     17137           poll
 30.72    0.008498           0     37030           sendto
 13.92    0.003852           0     16491           write
  8.87    0.002454           0     22363           recvmsg
  0.32    0.000088           0       491           open
  0.22    0.000062           0       491           mmap
  0.08    0.000023           0       491           fstat
  0.08    0.000022           0       808           read
  0.04    0.000010           0       491           close
  0.00    0.000000           0       479           munmap
  0.00    0.000000           0       243       102 futex
  0.00    0.000000           0         1           restart_syscall
------ ----------- ----------- --------- --------- ----------------
100.00    0.027665                 96516       102 total

Also, I was using rhythmbox just fine, and last time this occurred was after I played a MOV file from Apple trailers site using gecko-mediaplayer (not sure it's related, but...).

Applications running: Firefox, pidgin, skype

Comment 1 Bastien Nocera 2009-08-12 10:01:13 UTC
Looks like any of the other apps could be the culprit. Questions are:
- Which version of pulseaudio do you have installed?
- Is alsa-plugins-pulseaudio installed (and which version)
- Do you get any error messages related to pulseaudio in /var/log/messages?
- Does the problem happen if pidgin/skype aren't running, or if firefox isn't running the "gecko-mediaplayer"?

Comment 2 Andre Costa 2009-08-13 16:10:03 UTC
Hi Bastien,

things are more weird now: rhythmbox stopped playing at all. But only for my account (I created a new local account for testing and rhythmbox works there just fine).

PulseAudio versions are:

pulseaudio-module-bluetooth-0.9.15-14.fc11.x86_64
pulseaudio-module-gconf-0.9.15-14.fc11.x86_64
pulseaudio-utils-0.9.15-14.fc11.x86_64
pulseaudio-libs-0.9.15-14.fc11.x86_64
pulseaudio-libs-glib2-0.9.15-14.fc11.x86_64
pulseaudio-module-x11-0.9.15-14.fc11.x86_64
alsa-plugins-pulseaudio-1.0.20-2.fc11.x86_64
pulseaudio-0.9.15-14.fc11.x86_64

There's nothing on /var/log/messages AFAICS. I removed Skype and Pidgin from my startup programs list, but problem still persists (even when Firefox is not running at all).

One thing that looks suspicious is the fact that on my account the "Output" tab on the sound preferences dialog shows two devices ("Internal Audio" and "Simultaneous output to internal audio"), and sound doesn't work with neither of them. The other local account (where rhythmbox is working) only shows "Internal Audio".

I am still trying to figure out what's different between these two accounts. My session starts these additional apps:

- workrave
- compiz
- dropbox

Could any of these be messing with pulseaudio/rhythmbox?

Comment 3 Andre Costa 2009-08-13 18:18:50 UTC
Found it: it is rhythmbox indeed (or, at least, one of its plugins). The culprit was crossfade backend (I had enabled it recently). Turning it off brought rhythmbox back again on the game; turning it on makes it dumb again.

So, should I open a new bug report?

Comment 4 Bastien Nocera 2009-10-05 11:46:21 UTC
File a bug upstream quoting the type of file you're trying to play when the problem occurs.

If it's a WMA file, then the problem is known upstream, the ASF demuxer is a bit broken, and rhythmbox's cross-fading backend doesn't like it.


Note You need to log in before you can comment on or make changes to this bug.