// 延迟时间(微秒)= (数据大小(字节)* 8 * 1000000) / 比特率(bps)
// 当比特率更高时,延迟时间更短
// 公式:延迟(微秒)= (size * 8 * 1000000) / bit_rate
- uint32_t delay_us = (uint32_t)((uint64_t)(size-(size/10*7)) * 8 * 1000000ULL / g_tts_audio_bit_rate);
+ uint32_t delay_us = (uint32_t)((uint64_t)(size-(size/10*6)) * 8 * 1000000ULL / g_tts_audio_bit_rate);
#ifdef TIME_TICKS_TEST
printf("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx delay_ms %d\r\n",(uint32_t)((uint64_t)(size) * 8 * 1000000ULL / g_tts_audio_bit_rate)/1000);
usleep(delay_us-20);
if (ret != 0) {
retry_count++;
- MEDIA_ERR_LOG("Failed to write audio data to output stream, ret=%d, retry %d/%d", ret, retry_count, MAX_RETRY_COUNT);
+ // MEDIA_ERR_LOG("Failed to write audio data to output stream, ret=%d, retry %d/%d size=%d", ret, retry_count, MAX_RETRY_COUNT, size);
usleep(delay_us*retry_count/10*5);
goto AI_WRITE;
}
// 立即暂停和清空输出流
// PauseAudioStreams();
- ClearAudioStreams();
+ // ClearAudioStreams();
// 立即恢复输出流
// ResetAudioStreams();