lkml.org 
[lkml]   [2003]   [Aug]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectLinux 2.6 doesn't like Rhythmbox
Hi people,

I'm running Linux 2.6.0-test2 now and found our "itunes clone" Rhythmbox (see
http://rhythmbox.org) to have choppy playback. Simpler command-line players
like madplay did not have this problem. (The heavily threaded gst-player had
this problem, however.) I don't remember having choppy playback with Linux
2.4.21-preempt either.

Reproducing this is simple if you run Gnome 2 and the snail-fast gnome-terminal:
Get Rhythmbox (I used the 0.4.99.2 prerelease from the website), play some
sound with it and get your CPU to 100% with a fairly high-prio app (I like to
switch tabs in gnome-terminal). Sound then starts having hickups.

More or less by accident I was looking at the output of top and found out that
the audio playback thread had a worse priority than normal (top reported
between 20 and 25). I then reniced the playback thread to -10 upon thread
creation and was given problemless playback (top still reported the priority
going up to 15 again).

Let me explain how threads in Rhythmbox work: The main thread is used for the
GUI, other threads (mostly idle) take care of the library - reading out
artist/title/... tags and monitoring file changes so the playlists gets updated
automagically - and then there is a playback thread. This thread is spawned
when playback of a file starts (a new one for each file). It starts by
inspecting the file and constructing a pipeline depending on the file type (ogg
decoder vs mp3 decoder vs ...). This takes half a second, maybe less. After
that it proceeds to do read - decode - output to soundcard looping until the
song is done playing.
The priority according to top starts becoming worse from the beginning of
playback and gets worse during playback.


My question now is simple: Who shall I blame for this?


Cheers,

Benjamin
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:47    [W:0.045 / U:0.124 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site