ex3d cold boot starvation
This commit is contained in:
@@ -135,6 +135,7 @@ void UserBufferManagementInit(unsigned sampFreq)
|
||||
#if USE_EX3D == 1
|
||||
memset(ubm_ingress, 0, sizeof(ubm_ingress));
|
||||
memset(ubm_egress, 0, sizeof(ubm_egress));
|
||||
frame_index = 0;
|
||||
|
||||
assert(uc_ex3d_to_ubm);
|
||||
while( !m_hThread ){}
|
||||
@@ -145,6 +146,12 @@ void UserBufferManagementInit(unsigned sampFreq)
|
||||
} else {
|
||||
debug_printf("audio_ex3d_change_parameter() success\n\r");
|
||||
}
|
||||
// ② 预热:推一个零帧穿过 ex3d,触发所有 worker 加载 + 首次同步
|
||||
chan_out_buf_word(uc_ex3d_to_ubm, (const uint32_t *)ubm_egress,
|
||||
UBM_TO_EX3D_CHANS * DSP_BLOCK_LENGTH);
|
||||
chan_in_buf_word (uc_ex3d_to_ubm, (uint32_t *)ubm_ingress,
|
||||
EX3D_TO_UBM_CHANS * DSP_BLOCK_LENGTH);
|
||||
memset(ubm_ingress, 0, sizeof(ubm_ingress)); // 清掉哑帧输出
|
||||
#endif
|
||||
}
|
||||
float fLevel[NUM_USB_CHAN_OUT] = {0,};
|
||||
|
||||
Reference in New Issue
Block a user