Re: [PATCH 2/3] ALSA: compress: document the compress gapless audio state machine

Pierre-Louis Bossart
2020-06-19T16:19:01Z

> +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.