连续签到天数:1天 | 签到总天数:166天 | 签到总奖励:969金币 |
|
楼主 |
发表于 2021-5-24 15:40:05
|
显示全部楼层
static void appKymeraCreateOutputVolumeChain(uint32 rate, unsigned kick_period,
unsigned buffer_size,uint8 volume)
{
kymeraTaskData *theKymera = appGetKymera();
#ifdef USE_I2S_OUTPUT
theKymera->chainu.output_vol_handle = ChainCreate(&chain_output_volume_iir_config);
#else
theKymera->chainu.output_vol_handle = ChainCreate(&chain_output_volume_config);
#endif
#ifdef USE_I2S_OUTPUT
appKymeraConfigureOutputChainOperators(theKymera->chainu.output_vol_handle, appConfigI2SOutputSampleRate, kick_period, buffer_size, volume);
Operator sync_op;
/* override the source sync op setting: as this op is before the resampler, it needs to be configured at 'rate' */
if (GET_OP_FROM_CHAIN(sync_op, theKymera->chainu.output_vol_handle, OPR_SOURCE_SYNC))
{
/* SourceSync is optional in chains. */
appKymeraConfigureSourceSync(sync_op, rate, kick_period);
}
Operator resampler_op;
resampler_op = PanicZero(ChainGetOperatorByRole(theKymera->chainu.output_vol_handle, OPR_IIR_RESAMPLER));
OperatorsResamplerSetConversionRate(resampler_op, rate, appConfigI2SOutputSampleRate);
#else
appKymeraConfigureOutputChainOperators(theKymera->chainu.output_vol_handle, rate, kick_period, buffer_size, volume);
#endif
ChainConnect(theKymera->chainu.output_vol_handle);
}是加在这里吗,这样好像没效果 |
|