
On Wed, Feb 06, 2013 at 03:11:02PM +0100, Takashi Iwai wrote:
At Tue, 5 Feb 2013 06:21:25 -0800, Vinod Koul wrote:
From: Jeeja KP jeeja.kp@intel.com
this add new API for sound compress to support gapless playback. As noted in Documentation change, we add API to send metadata of encoder and padding delay to DSP. Also add API for indicating EOF and switching to subsequent track
I can understand that the metadata is somehow handled in DSP for seamless switching,
yes for stripping the encoder delay and encoder padding.
but the operation with partial drain is a bit unclear. How is the operation flow? Does it drain until which point?
Right, we want to move from one track to another. And while at this DSP needs to exhaust the buffers from first track and then we should start writing second track. When userspace has finsihed wirting first track it sends partial_drain and DSP decods finsihed off and returns when it is ready to accept second track data. The userland sends the metadata for this followed by data write.
In your patch, the runtime state is changed to SETUP after the partial drain, so the app is requested to give START again?
Ah, thats a mistake, it should be in running state, no START again :)
-- ~Vinod