# # Pipeline definitions # # PCM0 ---> gain ----> Mixin ----> Mixout ----> gain ----> EQ IIR ----> DTS ----> SSP0 # PCM1 ---> gain ----> Mixin ----> Mixout ----> gain ----> EQ IIR ----> DTS ----> SSP1 # Pipeline ID:1 PCM ID: 0 Object.Pipeline { # playback pipelines host-copier-gain-mixin-playback [ { index 1 Object.Widget.host-copier.1 { stream_name '$HEADSET_PLAYBACK_PCM_STREAM_NAME' pcm_id $HEADSET_PCM_ID } Object.Widget.gain.1 { Object.Control.mixer.1 { name 'Pre Mixer $HEADSET_PCM_NAME Playback Volume' } } } { index 3 Object.Widget.host-copier.1 { stream_name '$SPEAKER_PLAYBACK_PCM_STREAM_NAME' pcm_id $SPEAKER_PCM_ID } Object.Widget.gain.1 { Object.Control.mixer.1 { name 'Pre Mixer $SPEAKER_PCM_NAME Playback Volume' } } } ] mixout-gain-eqiir-dts-dai-copier-playback [ { index 2 Object.Widget.dai-copier.1 { dai_index $HEADSET_SSP_DAI_INDEX dai_type "SSP" copier_type "SSP" stream_name "$HEADSET_CODEC_NAME" node_type $I2S_LINK_OUTPUT_CLASS IncludeByKey.SSP_HS_FMT_24 { "true" { Object.Base.output_audio_format [ { out_bit_depth 32 out_valid_bit_depth 24 out_sample_type $SAMPLE_TYPE_LSB_INTEGER out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } ] } "false" { Object.Base.output_audio_format [ { out_bit_depth 32 out_valid_bit_depth 32 } ] } } } Object.Widget.gain.1 { Object.Control.mixer.1 { name 'Post Mixer $HEADSET_PCM_NAME Playback Volume' } } Object.Widget.eqiir.1 { Object.Control.bytes."1" { name 'EQIIR2.0 eqiir_coef_2' } } Object.Widget.dts.1 { Object.Control.bytes."1" { max 2048 name 'CODEC_ADAPTER2.0 DTS Codec Setup 2' } } } { index 4 Object.Widget.dai-copier.1 { dai_index $SPEAKER_SSP_DAI_INDEX dai_type "SSP" copier_type "SSP" stream_name "$SPEAKER_CODEC_NAME" node_type $I2S_LINK_OUTPUT_CLASS IncludeByKey.SSP_SPK_FMT_24 { "true" { Object.Base.output_audio_format [ { out_bit_depth 32 out_valid_bit_depth 24 out_sample_type $SAMPLE_TYPE_LSB_INTEGER out_fmt_cfg "$[($out_channels | ($out_valid_bit_depth * 256))]" } ] } "false" { Object.Base.output_audio_format [ { out_bit_depth 32 out_valid_bit_depth 32 } ] } } } Object.Widget.gain.1 { Object.Control.mixer.1 { name 'Post Mixer $SPEAKER_PCM_NAME Playback Volume' } } Object.Widget.eqiir.1 { Object.Control.bytes."1" { name 'EQIIR1.0 eqiir_coef_1' } } Object.Widget.dts.1 { Object.Control.bytes."1" { max 2048 name 'CODEC_ADAPTER1.0 DTS Codec Setup 1' } } } ] } Object.Base.route [ { source "gain.2.1" sink "eqiir.2.1" } { source "dts.2.1" sink "dai-copier.SSP.$HEADSET_CODEC_NAME.playback" } { source "mixin.1.1" sink "mixout.2.1" } { source "gain.4.1" sink "eqiir.4.1" } { source "dts.4.1" sink "dai-copier.SSP.$SPEAKER_CODEC_NAME.playback" } { source "mixin.3.1" sink "mixout.4.1" } ]