MantisBT - MPfm
View Issue Details
0000084MPfmPlayerpublic2011-04-30 17:402012-04-21 09:54
ycastonguay 
ycastonguay 
urgentmajorN/A
resolvedfixed 
 
0.4.4.20.4.4.2 
0000084: Add support for gapless playback
Gapless playback is no delay between songs in a playlist, just like the original master on CD would play. Songs that have music that span over different songs have a little delay and it is very annoying.
No tags attached.
Issue History
2011-04-30 17:40ycastonguayNew Issue
2011-04-30 17:40ycastonguayStatusnew => assigned
2011-04-30 17:40ycastonguayAssigned To => ycastonguay
2011-05-08 07:11ycastonguayTarget Version0.4.4.4 => 0.4.4.2
2011-05-08 07:15ycastonguayNote Added: 0000018
2011-05-08 07:27ycastonguayNote Added: 0000019
2011-05-08 10:07ycastonguayNote Added: 0000020
2011-05-08 14:45ycastonguayNote Added: 0000021
2011-05-08 14:45ycastonguayStatusassigned => resolved
2011-05-08 14:45ycastonguayFixed in Version => 0.4.4.2
2011-05-08 14:45ycastonguayResolutionopen => fixed
2011-05-29 11:01ycastonguayCategoryGlobal => Gapless Playback
2012-04-17 19:11ycastonguayCategoryGapless Playback => Player - Gapless Playback
2012-04-21 09:54ycastonguayCategoryPlayer - Gapless Playback => Player

Notes
(0000018)
ycastonguay   
2011-05-08 07:15   
I have made progress on this item, but it's a lot more work than I thought.

It seems that using the technique of having only 2 subsounds at a time (for instance, the realtimestitching example that comes with FMOD) doesn't work when the sound length varies. In the example, the sound length is always the same.

Thus the sound list must have more than 2 items. Instead of adding the whole playlist to the sentence list, add only an album to the sentence list. If the songs come from a different album, just keep a short sentence list (would just one item work?)

Now... what happens when the end of the sentence list is met? Start a new PlayGaplessSequence?
(0000019)
ycastonguay   
2011-05-08 07:27   
When the sentence list is finished, it goes back to the first item if FMOD.MODE.LOOP_NORMAL. FMOD.MODE.LOOP_OFF finishes the playback. Warning: getposition crashes when the playback is finished.
(0000020)
ycastonguay   
2011-05-08 10:07   
I'm very much near finishing this. It works at 95%, with the previous / next song buttons and it loads the next set of sentences pretty well so far.
(0000021)
ycastonguay   
2011-05-08 14:45   
This is it. This is 98% complete. There are minor bugs which will be added to Mantis. Needs a lot of testing, but I'm pretty confident this will be the final solution to gapless playback!