Banshee track slider shows total play time instead of position in current track

Bug #869301 reported by tr33m4n
30
This bug affects 6 people
Affects Status Importance Assigned to Milestone
Banshee
New
Medium
gstreamer plugins
Expired
Medium
banshee (Ubuntu)
Triaged
Undecided
Unassigned

Bug Description

Recently discovered a bug with Banshee. The track slider/skipper displays the correct time periods for the first track off an album, but then instead of sliding when the next track is played it stays static and the track time displayed below displays the total of the tracks played rather than per song.

I have attached a screenshot

Cheers

Description: Ubuntu oneiric (development branch)
Release: 11.10
banshee:
  Installed: 2.2.0-1ubuntu2
  Candidate: 2.2.0-1ubuntu2
  Version table:
 *** 2.2.0-1ubuntu2 0
        500 http://gb.archive.ubuntu.com/ubuntu/ oneiric/main amd64 Packages
        100 /var/lib/dpkg/status

Revision history for this message
tr33m4n (tr33m4n) wrote :
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in banshee (Ubuntu):
status: New → Confirmed
Revision history for this message
Robert Lange (rcl24) wrote :

I instrumented ConnectedSeekSlider.cs with debugging statements and found that the PlayerEngine is not resetting its Position attribute (the number of milliseconds into the track it is) when it rolls over to a new track. If the new track is shorter than the current "position" (the sum of previous positions) then the slider will show only the "position", not the time on the current track. If you move the slider, this forces the PlayerEngine to reset its Position and thus the slider behaves properly again, for a time.

I am currently looking into why the PlayerEngine is not resetting its position on track change.

Revision history for this message
Robert Lange (rcl24) wrote :

I have confirmed that gapless playback is responsible for this bug. Disabling gapless playback in the preferences will make the slider work correctly again. This will cause a brief (<1 sec) pause between tracks, so depending on your albums, this may be no big deal (modern music) or it may be very jarring (e.g., orchestral albums, Pink Floyd, etc.)

Revision history for this message
Chow Loong Jin (hyperair) wrote :

Thanks for looking into this. I've forwarded this to the upstream bug tracker (see the gnome-bugs link at the top of this page), so please subscribe yourself there and post your findings there. :-)

Changed in banshee (Ubuntu):
status: Confirmed → Triaged
Robert Lange (rcl24)
summary: - Banshee track slider displaying incorrectly, incorrect time
+ Banshee track slider shows total play time instead of position in
+ current track
Revision history for this message
Robert Lange (rcl24) wrote :

I have looked into it more and the problem does not appear when playing OGG Vorbis files, but does when playing FLAC files. GStreamer appears to have plugins to parse files to get things like padding. It has such a plugin for Vorbis, which I think, is why Banshee shows the correct track position for Vorbis files, even when in gapless mode. GStreamer has no plugin for parsing FLAC files (or at least, I did not see one) so I think that is why it has no way of knowing, in gapless mode, when one FLAC ends and another begins.

I have included a link to the upstream GStreamer bug report.

Changed in banshee:
importance: Unknown → Medium
status: Unknown → New
Changed in gst-plugins:
importance: Unknown → Medium
status: Unknown → New
Changed in gst-plugins:
status: New → Incomplete
Changed in gst-plugins:
status: Incomplete → New
Changed in gst-plugins:
status: New → Confirmed
Revision history for this message
Jason Kern (jaskerx) wrote :

As mentioned above turning off gapless playback fixes this

Changed in gst-plugins:
status: Confirmed → 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.