void *voice_thread(void *arg) //语音线程
{
int i = 0;
int nread;
struct InputCommander *voiceHandler = NULL;
struct Devices *deviceTmp = NULL;
voiceHandler = findCommandByName("voice", pCommandHead); //在控制工厂找到语音模块
if (voiceHandler == NULL)
{
printf("查找语音处理程序错误\n");
pthread_exit(NULL);
}
else
{
if (voiceHandler->Init(voiceHandler, NULL, NULL) < 0)
{ //语音模块初始化
printf("语音初始化错误\n");
pthread_exit(NULL); //退出线程
}
else
{
printf("%s 初始化成功\n", voiceHandler->commandName);
} //语音初始化完成
pthread_mutex_lock(&mutex); //加锁
//语音读取一级指令的时候,为了避免其它线程对于 紧接着读取二级指令的干扰
while (1)
{
memset(voiceHandler->comand, '\0', sizeof(voiceHandler->comand));
nread = voiceHandler-&
基于树莓派的智能家居系统(四十三)——语音识别线程
最新推荐文章于 2024-05-17 16:30:00 发布