sometimes stop playing when using crossfading and searching

Bug #253570 reported by A. Bram Neijt
This bug affects 1 person
Affects Status Importance Assigned to Milestone
rhythmbox (Ubuntu)
Ubuntu Desktop Bugs

Bug Description

Binary package hint: rhythmbox

There seems to be some kind of race condition that, given the right timing, will stop the current song from playing if search results are empty.

To reproduce:
1) Use an automatic playlist (not sure this is needed)
2) Play a song from the playlist
3) Looking at the playlist while playing the song, try searching for something you don't have
4) Repeatedly change the search results by changing the search box values just after the search has been done. One example would be: type "asdf", wait for some result and quickly do backspace and add some other letteres. Repeat this a couple of times.

Once in a while, it seems to be something with timing and also with empty search results, the current song will stop playing.

Expected result:
The current song should not be influenced at all by the kind or number of search results I get.

Notes: it seems to be some kind of race condition and may or may not be related to the automatic playlist. Rhythmbox 0.11.5, amd64, Hardy.

ProblemType: Bug
Architecture: amd64
Date: Thu Jul 31 10:35:09 2008
DistroRelease: Ubuntu 8.04
ExecutablePath: /usr/bin/rhythmbox
Package: rhythmbox 0.11.5-0ubuntu8
PackageArchitecture: amd64
SourcePackage: rhythmbox
Uname: Linux 2.6.24-19-generic x86_64

Tags: apport-bug
Revision history for this message
A. Bram Neijt (bneijt) wrote :
Revision history for this message
Pedro Villavicencio (pedro) wrote :

thanks for your report, however i cannot reproduce this issue? with automatic playlist are you referring to the "My Top Rated", "Recently Added", etc? is this reproducible everytime? does the same happens with a new user? thanks.

Changed in rhythmbox:
assignee: nobody → desktop-bugs
importance: Undecided → Low
status: New → Incomplete
Revision history for this message
A. Bram Neijt (bneijt) wrote :

Yes, it happens with the "My Top Rated" list. Trying it out a bit, I also had the following result, which is generally the same. It does seem to be some kind of timing issue, so it might help to have more numbers in your automatic list (you can also just create one which includes all your music).

My automatic playlist contains about 4000 numbers and searches take about 500ms (less then a second, but notacable).

I also found another way to reprocude the problem:
- Create the automatic playlist with enough numbers to make searching a bit slower then instantanious
- Star playing a song from that list (any song with enough minutes to test the next steps will do)
- Type in one letter, and at the moment you think the results are going to show up add another letter. Keep doing this till the result set is empty.

When it hits that empty list, any playing music is stopped.

I've got both shuffle and repeat on, and sometimes I saw it skip to another song, so I think the result is that it search the search result as an update of the automatic list and then chooses a new number from the list. If the list is empty, it just stops.

I might be able to make a screencast, but I can't see how this would help if you can't reproduce the problem. Hope the above steps will work.

Revision history for this message
A. Bram Neijt (bneijt) wrote :

I've made a screencast of what happens. It's terrible quality, but I think it shows the point.

Searching in the automatic playlist (as shown in the movie) will skip to other songs and eventually completely stop when the result list is empty.

If I type something that doesn't result in any songs quickly, then the current song will simply stay running.

One of these behaviors is a bug: either an empty search should stop the song (always) or it should never influence the playing song (which I prefer ;) ).

Changed in rhythmbox:
status: Incomplete → New
Revision history for this message
Sebastien Bacher (seb128) wrote :

could you run rhythmbox --debug and look if there is any error in the log when it stops playing? could you try if you get the issue when playing something in the library?

Changed in rhythmbox:
status: New → Incomplete
Revision history for this message
A. Bram Neijt (bneijt) wrote :

I ran that, but that log also included a complete listing of my library of songs and information about my file system layout. So I would have to read that log and remove the lines out of it before I'm going to post that here. I don't have time for that now, so please consider asking for a more specific debug or just ask me again and I will find the time to clean up the log. You can also send me a personal request because I am willing to send it to you personally via mail.

I'm currently on intrepid with rhythmbox 0.11.6.

It seems I can only reproduce the problem with cross-fade enabled and in an automatic listing. Because it is very probably a timing issue, I suggest placing your system under load when testing for this. (disk IO may help).

So here are some steps again:
1. Create an automatic playlist
2. Make sure cross-fading is enabled in the preferences
3. If possible, use Vorbis VBR files
4. Make sure there is some load on the system. Although this is not really needed, it may help in enlarging the window of opportunity.
5. While playing a song, type something in the search bar. Try different key strokes with different delays, use backspace if needed.

It may very well be that this bug:
is related to this problem, as it seems to do with song end signals and time problems when the crossfading is enabled.

Revision history for this message
Sebastien Bacher (seb128) wrote :

there is no need to send the whole log, could you just look if there is an error around the time you get the bug?

Revision history for this message
A. Bram Neijt (bneijt) wrote :

Here is the last part, which should contain the problem. I'm not sure what I should be looking for, but I have seen this:

(16:29:51) [0xb41500] [rb_shell_player_get_playing_song_duration] rb-shell-player.c:3385: Did not get playing entry : return -1 as length

Attached is the last part of the log (after the whole database was mentioned).

Revision history for this message
Sebastien Bacher (seb128) wrote :

Thank you for the detailled comment, I've sent the bug on now

Changed in rhythmbox:
status: Incomplete → Triaged
Changed in rhythmbox:
status: Unknown → New
Changed in rhythmbox:
importance: Unknown → Medium
Changed in rhythmbox:
status: New → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.