Skip to content

Conversation

@bardliao
Copy link
Collaborator

The PR is to implement a topology for synchronize playback. We use demux to duplicate audio data for two DAIs. I need people's input for the two HACK commits.

@slawblauciak Could you check the "set alh channel = 2 by default" commit?

Copy link

@juimonen juimonen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so you could just create a new m4 file with different coeffs...? I think you are not doing anything bad with this as probably no one is using this atm, but the correct way would be just to create new m4 with new coeffs (just pipeline ids changed).

@slawblauciak slawblauciak requested a review from bkokoszx March 11, 2020 10:52
@slawblauciak
Copy link
Collaborator

@bkokoszx the hack in question seems to involve the PCM params mechanism, which you introduced. I'm not sure how exactly that is supposed to work, does it look alright to you?

@bardliao
Copy link
Collaborator Author

so you could just create a new m4 file with different coeffs...? I think you are not doing anything bad with this as probably no one is using this atm, but the correct way would be just to create new m4 with new coeffs (just pipeline ids changed).

Yes, I could create a new m4 with different coeffs. But can we define a macro or something to use demux_coef_default.m4 with correct pipeline ids? So we don't need to maintain one more demux_coef m4 with the same coeffs.

@juimonen
Copy link

@bardliao creating binary hex blobs with m4 could be hairy.... but maybe doable. I would create a tool for the demux to generate the blobs. Like we have for eq's in matlab/octave scripts. This could be python or C. Just changing the pipeline id's in existing blob sounds like a hack. Actually I don't know why pipelineID's need to be defined explicitly for demux conncetions (isn't this embedded in the graph anyway?)

To avoid it is reset to 0 when second alh is registered to the same
stream.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
This is basically the same as pipe-dai-playback.m4, but use SCHED_COMP
instead of N_DAI_OUT.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
So we can set scheduling component when adding a DAI.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
This will create a basic pipeline with a buffer only. Note that
we don't implement a SectionGraph to connect the buffer to its
starting component, we should define it manually.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
So the volume control will apply to both pipelines.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
We presume demux will connect to pipeline with id 1 and 5, but
in our case, it is 3 and 4. We have to figure out a way to configure
it.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Now kernel expots one PCM with two CPU dais. So use demux to play
with two DAIs.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
@bardliao
Copy link
Collaborator Author

Actually I don't know why pipelineID's need to be defined explicitly for demux conncetions (isn't this embedded in the graph anyway?)

I have the same question. But I don't know if FW can get the graph or not.

@bardliao bardliao force-pushed the synchronize-playback branch from e272a21 to 175d8f3 Compare March 12, 2020 01:06
@lgirdwood
Copy link
Member

lgirdwood commented Mar 12, 2020

@bardliao can you split this into several PR's once you are happy with it. i.e. we need a separate discussion/PRs for the HACK patches.

@bardliao
Copy link
Collaborator Author

@bardliao can you split this into several PR's once you are happy with it. i.e. we need a separate discussion/PRs for the HACK patches.

Yes, split it to #2539 #2540 #2541 and #2542

@bardliao bardliao closed this Mar 13, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants