Page 1 of 1

关于TTS语音合成的问题

Posted: Sat Apr 13, 2024 6:05 am
by z45217
同一个程序的情况下:
char *prompt1="方方";
if (esp_tts_parse_chinese(tts_handle, prompt1)) {
int len[1]={0};
do {
short *pcm_data=esp_tts_stream_play(tts_handle, len, 1);
esp_audio_play(pcm_data, len[0]*2, portMAX_DELAY);

} while(len[0]>0);
}
esp_tts_stream_reset(tts_handle);

如果芯片内下载的是“esp_tts_voice_data_xiaoxin.dat”那么文字“方”会读成“bi”
I (3566) tts_parser: unicode:0x65b9 -> bi1
I (3566) tts_parser: unicode:0x65b9 -> bi1

如果芯片内下载的是“esp_tts_voice_data_xiaole.dat”那么文字“方”正常读成“fang”
I (4566) tts_parser: unicode:0x65b9 -> fang1
I (4566) tts_parser: unicode:0x65b9 -> fang1

请问下这是什么原因,有办法修改吗,“xiaoxin”的声音更好点,但是怕还有其它字不对