Comment 23 for bug 1024621

Revision history for this message
Daniel Schürmann (daschuer) wrote :

Hi RJ,

thank you for your patch, it includes the ideas that where missing in my patch. It really looks like that we are now able to fix the whole track change procedure.

I have modified you patch a little bit to iron out some remaining issues.
* CueControl::trackLoaded emits seekAbs in any case to overwrite the position from the previous track
* m_iTrackLoading is set to 0 not before all EngineControls are setup with the new track. This ensures that the track is properly seeked when the new buffer is processed.
* m_pTrackSamples has to be set to 0 in EgineBuffer::slotLoadTrack because of the other changes
* the m_pause.lock() in EgineBuffer::slotLoadTrack ensures that the buffer is not processed when starting to change the track

See attached.