| | |
| | | } |
| | | |
| | | #define CHANNEL_OF(c) (2*((c)&(codec->slot_num-1))+ (c)/codec->slot_num) |
| | | #define OFFSET(j) (j<codec->channel_num?CHANNEL_OF(j): CHANNEL_OF(j-codec->channel_num+codec->slot_num)) |
| | | /* |
| | | * sec 排列方式: 0,16,1,17,2,18,...,15,31 |
| | | */ |
| | |
| | | if(codec->enable_sec){ |
| | | for(u32 j = 0; channel < mInputNum && j < codec->channel_num*2 ;j ++,channel++) { |
| | | if(mRxChannel[channel] != NULL) |
| | | floatData(mRxChannel[channel], dataPtr + CHANNEL_OF(j),codec->slot_num*2, SAMPLE_NUM); |
| | | floatData(mRxChannel[channel], dataPtr + OFFSET(j),codec->slot_num*2, SAMPLE_NUM); |
| | | } |
| | | } |
| | | else{ |
| | |
| | | if(codec->enable_sec){ |
| | | for(u32 j = 0; channel < mOutputNum && j < codec->channel_num*2 ;j ++,channel++) { |
| | | if(mTxChannel[channel] != NULL) |
| | | fixData(dataPtr + CHANNEL_OF(j), mTxChannel[channel], codec->slot_num*2, SAMPLE_NUM); |
| | | fixData(dataPtr +OFFSET(j), mTxChannel[channel], codec->slot_num*2, SAMPLE_NUM); |
| | | } |
| | | } |
| | | else{ |