Tools: Topology: Add Micsel module to MFCC capture pipeline#10800
Open
singalsu wants to merge 2 commits into
Open
Tools: Topology: Add Micsel module to MFCC capture pipeline#10800singalsu wants to merge 2 commits into
singalsu wants to merge 2 commits into
Conversation
This patch adds build of blob downmix_stereo_to_mono.conf. It is useful for processing mono input for MFCC. The sum of left and right multiplied by 0.5 is passed to both left and right sink channels. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch adds the Micsel (or Selector) module with a configuration blob for stereo to double mono to source of MFCC. The Micsel module has better input select capabilities than bare MFCC module. The sum of L+R provides a slightly better SNR than the single (left) channel pick with MFCC for it's mono processing. It will reduce a bit noise in the audio features and possibly improve speech recognition quality. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This pull request adds a Mic Selector (micsel) stage to the SoundWire (SDW) MFCC “audio features” capture pipelines, along with a new selector configuration blob and an updated blob-generation script.
Changes:
- Switch SDW Jack and SDW DMIC “audio feature” capture pipelines to a new
host-gateway-src-micsel-mfcc-capturepipeline and add a micsel bytes control using a new “stereo → dual-mono” selector blob. - Add a new reusable topology2 pipeline class
host-gateway-src-micsel-mfcc-capture. - Add/extend selector blob generation to produce
downmix_stereo_to_doublemonoand include it in topology2.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tools/topology/topology2/platform/intel/sdw-jack-audio-feature.conf | Switches Jack audio-features capture pipeline to the new micsel+mfcc pipeline and adds micsel bytes control. |
| tools/topology/topology2/platform/intel/sdw-dmic-audio-feature.conf | Switches DMIC audio-features capture pipeline to the new micsel+mfcc pipeline and adds micsel bytes control. |
| tools/topology/topology2/include/pipelines/cavs/host-gateway-src-micsel-mfcc-capture.conf | Introduces the new pipeline class that routes SRC → micsel → MFCC for capture. |
| tools/topology/topology2/include/components/micsel/downmix_stereo_to_doublemono.conf | Adds a new selector_config blob for stereo → dual-mono downmix. |
| tools/topology/topology2/cavs-sdw.conf | Includes the new pipeline class in the cavs-sdw topology include set. |
| src/audio/selector/tune/sof_selector_blobs.m | Adds dual-mono channel config and emits the new downmix blob. |
| { | ||
| out_bit_depth 32 | ||
| out_valid_bit_depth 32 | ||
| out_rate 16000 |
| @@ -0,0 +1,26 @@ | |||
| # Exported with script sof_selector_blobs.m 21-May-2026 | |||
| # cd tools/tune/selector; octave sof_selector_blobs.m | |||
| sel.coeffs(1, 2) = 0.7071; | ||
| stereo_to_mono_pack8 = write_blob(sel, "downmix_stereo_to_mono"); | ||
|
|
||
| % Stereo to mono downmix |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.