[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <248f7bef-c3d4-2d2e-ffa4-0d372879c8ae@linux.intel.com>
Date: Mon, 22 Jun 2020 08:22:00 -0500
From: Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>
To: Vinod Koul <vkoul@...nel.org>
Cc: linux-kernel@...r.kernel.org, alsa-devel@...a-project.org,
Charles Keepax <ckeepax@...nsource.cirrus.com>,
Takashi Iwai <tiwai@...e.com>
Subject: Re: [PATCH 2/3] ALSA: compress: document the compress gapless audio
state machine
On 6/22/20 12:34 AM, Vinod Koul wrote:
> On 19-06-20, 09:27, Pierre-Louis Bossart wrote:
>>
>>> +For Gapless, we move from running state to partial drain and back, along
>>> +with setting of meta_data and signalling for next track ::
>>> +
>>> +
>>> + +----------+
>>> + compr_drain_notify() | |
>>> + +------------------------>| RUNNING |
>>> + | | |
>>> + | +----------+
>>> + | |
>>> + | |
>>> + | | compr_next_track()
>>> + | |
>>> + | V
>>> + | +----------+
>>> + | | |
>>> + | |NEXT_TRACK|
>>> + | | |
>>> + | +----------+
>>> + | |
>>> + | |
>>> + | | compr_partial_drain()
>>> + | |
>>> + | V
>>> + | +----------+
>>> + | | |
>>> + +------------------------ | PARTIAL_ |
>>> + | DRAIN |
>>> + +----------+
>>
>> May I suggest having a single state machine, not a big one and an additional
>> partial one. It would help explain why in one case compr_drain_notify()
>> triggers a transition to RUNNING while in the other one it goes to SETUP.
>>
>> I realize it's more complicated to edit but it'd be easier on
>> reviewers/users.
>
> Ell adding stop and transitions would really make it complicated and
> gapless is a bit different handling and it looks cleaner this way IMO,
> so lets stick to this. Feel free to create one if you are up for it.
if you don't want to change the visuals then please add a paragraph
explaining the different uses of compr_drain_notify().
Powered by blists - more mailing lists