More Generic Audio Graph Sound Card idea
Mark Brown
broonie at kernel.org
Thu Oct 15 16:32:54 CEST 2020
On Tue, Oct 13, 2020 at 01:50:25PM +0900, Kuninori Morimoto wrote:
> > I'm thinking below style as new audio-graph-card2.
> > It is not tricky, thus connection judgement for normal vs DSP is easy.
> > Then, code can be more readable (= no guaranty :P) ?
> I have proposed DPCM connection idea for audio-card2 before,
> and proposed Multi-CPU/Codec connection idea later.
> I'm not yet implemented these, but I want to merge / reuse these
> idea to keep simple code.
> By this mail, I want to propose Codec2Codec idea.
> It is almost same idea with DPCM, Multi-CPU/Codec,
> and is last parts for missing feature.
> I think this idea can be generic and easy to update
> in the future (if needed).
> But, I want feedback, opinion.
> I wonder does it works for your use-case ?
> -- Image ---
>
> Codec2Codec
>
> Codec1 <--> Codec2
>
> -- DT Image --
>
> +--+
> => | |<--> Codec1
> | |<--> Codec2
> +--+
>
> -- DT Sample --
>
> sound {
> compatible = "audio-graph-card2";
>
> dais = <&codec2codec>;
> };
>
> CODEC2CODEC {
> compatible = "audio-graph-card2-codec2codec";
>
> ports {
> codec2codec: port at 0 { fe_ep: endpoint { remote-endpoint = <&codec1_ep>; }; };
> port at 1 { be_ep: endpoint { remote-endpoint = <&codec2_ep>; }; };
> };
> };
I'm a bit confused about the use of FE and BE here since the two CODECs
are peers rather than this being DPCM - I think that's just a bit
cut'n'paste rather than anything else though? The other examples look
sensible I think but this one feels odd.
> -- Image ---
>
> *******
> PCM0 <--> * * <--> DAI0: Codec Headset
> PCM1 <--> * * <--> DAI1: Codec Speakers
> PCM2 <--> * DSP * <--> DAI2: MODEM
> PCM3 <--> * * <--> DAI3: BT
> * * <--> DAI4: DMIC
> * * <--> DAI5: FM
> *******
> DSP {
> compatible = "audio-graph-card2-dsp";
>
> ports at 0 {
> /* Front-End is pcm0_ep, Back-End is dummy */
> dsp_fe0: port at 0 { dsp_fe0_ep: endpoint { remote-endpoint = <&pcm0_ep>; }; };
> port at 1 { };
> };
I'm not clear why we need to represent the dummy port here?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20201015/061236da/attachment.sig>
More information about the Alsa-devel
mailing list