![第八讲语音处理应用(二)_第1页](http://file4.renrendoc.com/view/8567728a04be6d389b6f82099b72c551/8567728a04be6d389b6f82099b72c5511.gif)
![第八讲语音处理应用(二)_第2页](http://file4.renrendoc.com/view/8567728a04be6d389b6f82099b72c551/8567728a04be6d389b6f82099b72c5512.gif)
![第八讲语音处理应用(二)_第3页](http://file4.renrendoc.com/view/8567728a04be6d389b6f82099b72c551/8567728a04be6d389b6f82099b72c5513.gif)
![第八讲语音处理应用(二)_第4页](http://file4.renrendoc.com/view/8567728a04be6d389b6f82099b72c551/8567728a04be6d389b6f82099b72c5514.gif)
![第八讲语音处理应用(二)_第5页](http://file4.renrendoc.com/view/8567728a04be6d389b6f82099b72c551/8567728a04be6d389b6f82099b72c5515.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SPCE061A语音处理应用第八讲语音处理应用(二)SPCE061A语音处理应用四、语音录放四、语音录制语音录制流程用SPCE061A录制语音用SPCE061A播放录音创建一个录放音程序用汇编语言编写录放音程序小结和注意事项疑难解答1、语音录制流程语音采样在定时中断的控制下,以一定的速率(8KHz)进行AD转换压缩编码将采集到的数据以某种算法压缩编码存储将编码后的数据保存到存储介质中2、用SPCE061A录制语音3、用SPCE061A播放录音4、创建一个录放音程序新建工程4、创建一个录放音程序复制录放音需要的支持文件到工程所在的文件夹Sacmv26e.libHardware.incHardware.asmFlash.asmSRam.asm4、创建一个录放音程序添加支持文件到工程中添加程序文件和头文件添加语音函数库4、创建一个录放音程序编写录音程序新建程序文件编写代码4、创建一个录放音程序编写放音程序在main.c中编写放音函数4、创建一个录放音程序编写中断服务程序新建汇编语言程序文件编写中断服务程序代码4、创建一个录放音程序编写main()函数4、创建一个录放音程序下载运行5、用户接口函数Hardware.asm中定义了用户接口函数,可对语音录放程序做灵活的定制F_SP_SACM_DVR_Init_F_SP_InitQueue_DVRF_SP_ReadQueue_DVRF_SP_TestQueue_DVRF_SP_RampUpDAC1
…………6、用汇编语言编写录放音程序Sacmv26e.lib语音函数库还有供汇编语言直接调用的函数,它们与C函数一一对应(前面加上“F_”前缀):F_SACM_DVR_InitialF_SACM_DVR_InitEncoderF_SACM_DVR_InitDecoderF_SACM_DVR_FetchQueueF_SACM_DVR_FillQueueF_SACM_DVR_EecoderF_SACM_DVR_Decoder
…………汇编语音播放函数使用R1、R2……寄存器来传递参数和返回值。例如,C语言的SACM_DVR_Initial(0);语句可改写为: r1=0 callF_SACM_DVR_InitialC语言的SACM_DVR_FetchQueue()函数可改写为: callF_SACM_DVR_FetchQueue 函数的返回值保存在R1寄存器中。6、用汇编语言编写录放音程序7、小结和注意事项语音录放需要的支持文件:Sacmv26e.lib,Hardware.asm,Hardware.inc,Flash.asm,SRam.asm语音录制需要调用Flash读写函数,在Flash.asm中定义。如果使用外挂的Flash、EEPROM等存储器,则需要编写相应的读写程序替换上述函数。语音的录制和播放调用同一个中断服务函数F_FIQ_Service_SACM_DVR7、小结和注意事项相应地,在播放录音的开始和结束时可使用渐入渐出函数防止爆音:SP_RampUpDAC1();SP_RampUpDAC2();SP_RampDnDAC1();SP_RampDnDAC2();实际上,语音录制时采用的压缩编码是A2000格式,因此,录制的语音资源可以采用A2000播放程序播放。8、疑难解答播放程序并没有用到SRam.asm文件中的内容,为什么还要把它包含到工程中?事实上,语音录放也可以选择自动录放和手动录放两种模式。而自动录音时要用到SP_InitWriteSRAM等几个用户接口函数,这些函数在SRam.asm文件中定义。因此,虽然手动录放时并没有用到这些函数,但必须定义这些函数才可以编译成功。SPCE061A语音处理应用五、语音识别五、语音识别语音识别概述语音识别原理特定人语音识别函数库特定人语音识别程序流程特定人语音识别程序示例其他特定人识别函数小结和注意事项疑难解答1、语音识别概述根据对说话人的依赖程度,分为:特定人语音识别(SD)只能辨认特定使用者的语音,训练->使用非特定人语音识别(SI)可辨认任何人的语音,无须训练根据对说话方式的要求,分为:孤立词识别每次只能识别单个词汇连续语音识别用者以正常语速说话,即可识别其中的语句2、语音识别原理3、特定人语音识别函数库包含特定人语音训练、识别,语音特征模型的导入、导出函数等。连续语音识别可支持每组7条语音命令的识别在外接凌阳SPR系列Flash存储器的条件下,可支持10个命令组,每组16条语音命令4、特定人语音识别程序流程5、特定人语音识别程序示例新建工程复制语音识别、语音播放需要的支持文件到工程所在文件夹。语音识别函数库bsrv222SDL.lib语音识别头文件bsrSD.inc,bsrSD.h语音播放支持文件Sacmv26e.lib,Hardware.asm,Hardware.inc5、特定人语音识别程序示例5、特定人语音识别程序示例用PC录制下列提示语音(也可自定义提示语音),注意保存文件名不要包含中文。“请输入第一条命令”“请输入第二条命令”“请再说一遍”“没有听到任何声音”“两次输入不相同”“环境噪声太大”“训练成功,开始识别”“识别成功,第一条命令”“识别成功,第二条命令”5、特定人语音识别程序示例利用凌阳语音压缩工具“CompressTool”将录好的语音压缩成S480格式。把压缩后的语音资源文件复制到工程所在文件夹下。5、特定人语音识别程序示例将上述文件添加到工程中Project->AddtoProject->Files bsrSD.inc,bsrSD.h, Hardware.asm,Hardware.incProject->AddtoProject->Resource 9个S480格式语音资源文件Project->Setting->Link bsrv222SDL.lib Sacmv26e.lib5、特定人语音识别程序示例在工程中新建C程序文件,编写语音播放函数PlaySnd()。5、特定人语音识别程序示例编写“训练”函数TrainWord()。5、特定人语音识别程序示例编写主函数main()5、特定人语音识别程序示例编写中断服务程序5、特定人语音识别程序示例添加语音资源索引表在Resource.asm的结尾添加T_SACM_S480_SpeechTable5、特定人语音识别程序示例编译连接,下载运行按F7键或“Build”按钮,编译连接。确认选择了“USEICE”。按F5键或“ExecuteProgram”按钮,下载并运行。5、特定人语音识别程序示例程序测试听到提示“请输入第一条命令”后,说出一句语音命令。如果输入成功,会提示“请再说一遍”,重复刚才的语音命令。如果由于某种原因导致输入失败,会提示“没有听到任何声音”、“环境噪声太大”,如果两次训练的语音差别过大,会提示“两次输入不相同”。第一条命令训练成功后,用同样的办法训练第二条语音命令。5、特定人语音识别程序示例程序测试两条命令都训练完成后,就可以开始识别了如果识别出第一条语音命令,则提示“识别成功,第一条命令”如果识别出第一条语音命令,则提示“识别成功,第二条命令”6、其他特定人识别函数除了前面示例中的基本应用外,函数库还提供了很多函数用来对识别过程进行灵活的控制。下面介绍几个比较常用的函数:BSR_PauseRecognizer()暂停识别,但不释放中断等资源BSR_ResumeRecognizer()恢复被暂停的识别BSR_GetRecognizerScore()获得识别结果的可信度,返回值从-4096到4096,数值越大表示输入语音与特征模型的匹配度越高。6、其他特定人识别函数其他特定人识别函数BSR_EnableCPUIndicator()开启CPU状态监测功能。开启该功能后,IOA0和IOA1将发出每16ms电平变化一次的方波。BSR_DisableCPUIndicator()关闭CPU状态监测功能。BSR_ExportSDWord(intCommandID)函数库为工程创建了一个100Word的数组BSR_SDModel[100],可以把某条训练命令的特征模型数据导出到这个数组中。BSR_ImportSDWord(intCommandID)可以把BSR_SDModel数组中的数据导入为某条语音命的特征模型。7、小结和注意事项特定人语音识别由“训练”和“识别”两个步骤组成。训练过程中,每条语音命令的长度不要超过1.3秒。训练后得到的语音特征模型是保存在RAM中的,每条命令占用96Word,由于RAM空间的限制,同时可识别的语音命令数量最大为7条。如果需要识别更多语音命令,可以采用命令分组的方法。语音特征模型数据可以通过下面两个函数导入和导出:BSR_ImportSDWord(),BSR_ExportSDWord()8、疑难解答BSR_DeleteSDGroup(0),从函数名看来,好像是删除一个组的意思。它是怎么完成初始化RAM的?语音命令的特征模型是通过BSR_Train函数保存在RAM空间中的。如果所需的RAM空间已被旧的特征模型数据占满,则新特征模型无法保存到RAM中。利用BSR_DeleteSDGroup函数可以把RAM空间中所有的特征模型删除,释放出所需空间。SunplusSPCE061A微控制器六、语音压缩工具CompressTool介绍主要内容
音频压缩简介凌阳音频压缩简介录制WAV文件方法简介凌阳语音压缩工具使用介绍资源加载到工程中的方法简介1、音频压缩简介音频压缩的目的
通过对资料的压缩,达到高效率存储和转换资料的结果,即在保证一定声音质量的条件下,以最小的资料率来表达和传送声音信息。音频压缩编码方式
波形编码参数编码混合编码音频压缩技术趋势降低资料率,提高压缩比,用于廉价、低保真场合追求高保真度,复杂的压缩技术2、凌阳音频压缩简介凌阳音频压缩算法压缩率SACM_A2000:8:1,8:1.25,8:1.5SACM_S480:80:3,80:4.5凌阳音频压缩算法编码方式SACM_A2000:波形编码SACM_S240:参数编码SACM_S480:混合编码凌阳音频压缩算法数据率SACM_A2000:16Kbps/20Kbps/24KbpsSACM_S480:4.8Kbps/7.2Kbps凌阳音频压缩算法非常多,这里提到的只是其中的两三种,因为凌阳语音压缩工具CompressTool只支持A2000和S480两种方式,故这里重点介绍的是上面两种。3、录制wav文件方法介绍<1>打开PC机自带的录音机在开始菜单中打开录音机录音机3、录制wav文件方法介绍<2>设置wav文件的属性必须要设置wav文件属性为“8K16位单声道”。文件菜单中选择属性3、录制wav文件方法介绍<3>设置wav文件的属性必须要设置wav文件属性为8K16位单声道。在弹出的属性对话框中选择“立即转换”按钮选择立即转换按钮3、录制wav文件方法介绍<4>此时弹出“声音选择”对话框,在其中“属性”文本框中将录音文件设置为“8K16位单声道”选择8K16位单声道3、录制wav文件方法介绍<5>此时属性已经设置完成,可以开始录音点击录音机的录音按钮进行录音录音之后点击停止录音按钮保存已经录制好的wav文件录音按钮停止按钮保存该wav文件4、语音压缩工具介绍凌阳公司提供了windows环境下的语音压缩工具利用此语音压缩工具可以将刚刚录制好的wav文件压缩成A2000或S480的形式4、语音压缩方式介绍<1>安装语音压缩工具CompressTool打开语音压缩工具在[开始]→[程序]→[CompressTool]将其打开打开语音压缩工具4、语音压缩方式介绍<2>在语音压缩工具界面上可以看到“压缩单个文件”和“压缩多个文件”两个按钮,我们先来介绍压缩单个文件的方法。压缩单个文件按钮压缩多个文件按钮4、语音压缩方式介绍<3>选择“压缩单个文件按钮”,在“选择要压缩的wav文件”文本框中添加需要进行压缩的wav文件路径然后点击“下一步”选择需要压缩wav文件路径4、语音压缩方式介绍<4>然后选择压缩算法再选择压缩数据率选择压缩后文件的存储路径选择“压缩”按钮选择压缩算法选择A2000压缩方式选择S480压缩方式选择需要的数据率选择压缩后文件存储路径开始压缩A2000数据率有16K/20K/24Kbps三种4、语音压缩方式介绍<5>显示“OK”后表示单个文件已经压缩成功!压缩完毕4、语音压缩方式介绍<6>压缩多个文件的方法也差不多启动语音压缩工具选择“压缩多个文件”按钮4、语音压缩方式介绍<7>选择“路径选择”按钮选择需要压缩的多个文件选择“下一步”路径选择按钮选择需要
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 短视频内容创作与传播策略研究
- 新员工座谈会发言稿
- 短视频在社交电商中的应用与策略
- 小学数学教师远程培训个人研修总结
- 电商物流与城市交通模式的协同创新
- 幼儿园保安人员年终总结
- 生物医药产业创新驱动与投资策略
- 下半年律师工作计划总结
- 现代石油化工管道安装技术发展趋势
- 线下主播签约合作协议书范本
- 新部编版小学六年级下册语文第二单元测试卷及答案
- 5《这些事我来做》(说课稿)-部编版道德与法治四年级上册
- 2025年福建福州市仓山区国有投资发展集团有限公司招聘笔试参考题库附带答案详解
- 2025年广东省深圳法院招聘书记员招聘144人历年高频重点提升(共500题)附带答案详解
- 2025年人教版新教材数学一年级下册教学计划(含进度表)
- GB/T 45107-2024表土剥离及其再利用技术要求
- 2025长江航道工程局招聘101人历年高频重点提升(共500题)附带答案详解
- 2025年春西师版一年级下册数学教学计划
- 2025年国新国际投资有限公司招聘笔试参考题库含答案解析
- 2025年八省联考四川高考生物试卷真题答案详解(精校打印)
- 《供电营业规则》
评论
0/150
提交评论