开发工具:vs 2017
AI 平台:http://ai.baidu.com/
准备工作1、注册百度账号
2、登录百度 AI 开发平台 , http://ai.baidu.com/
3、在控制台点击“百度语音”服务 , 点击“创建应用” , 填写必填项 , 勾选额外接口 , 点击立即创建获取秘钥 。在应用列表中查看自己的id
文章插图
用 360 软件管家安装 vs2017
文章插图
创建自己的项目1、新建项目打开 vs2017 , 点击文件 , 新建项目 , 选择 visual C# --> windows 桌面 --> windows 窗体应用 , 选择自己的项目地址 , 点击确定
文章插图
2、添加 baiduai 开发包点击引用 --> 管理 nuGet 程序包 , 搜索 baiduai , 点击下载
文章插图
3、UI 设计直接拖动即可 , 生成界面如下
文章插图
【用 C# 开发自己的语音识别程序】
4、后台功能实现选择文件按钮
private void button1_Click(object sender, EventArgs e){OpenFileDialog fdlg = new OpenFileDialog();fdlg.Title = "C# Corner Open File Dialog";//fdlg.InitialDirectory = @"c:/";//@是取消转义字符的意思//fdlg.Filter = "All files(*.*)|*.*|All files(*.*)|*.* ";///*// * FilterIndex 属性用于选择了何种文件类型,缺省设置为0,系统取Filter属性设置第一项// * ,相当于FilterIndex 属性设置为1.如果你编了3个文件类型 , 当FilterIndex =2时是指第2个.// */fdlg.FilterIndex = 2;///*// *如果值为false , 那么下一次选择文件的初始目录是上一次你选择的那个目录 , // *不固定;如果值为true , 每次打开这个对话框初始目录不随你的选择而改变 , 是固定的// *///fdlg.RestoreDirectory = true;if (fdlg.ShowDialog() == DialogResult.OK){//textBox1.Text = System.IO.Path.GetFileNameWithoutExtension(fdlg.FileName);filePath.Text = System.IO.Path.GetFullPath(fdlg.FileName);}}
开始识别按钮// 语音合成按钮private void button2_Click(object sender, EventArgs e){string value = https://www.isolves.com/it/cxkf/yy/C/2021-06-10/this.videoType.Text;String filePath = this.filePath.Text;// 设置AppID/AK/SK , 修改为自己的String APP_ID = "14****92";String API_KEY = "C7WM**********Q6aQImtj3qua";var client = new Asr(APP_ID, API_KEY, SECRET_KEY);client.Timeout = 60000;// 修改超时时间client.Timeout = 120000; // 若语音较长 , 建议设置更大的超时时间. msFileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read);byte[] buffur = new byte[fs.Length];try{fs.Read(buffur, 0, (int)fs.Length);}catch (Exception ex){Console.Write(ex.StackTrace);}finally{if (fs != null){//关闭资源fs.Close();}}var result = client.Recognize(buffur, value, 16000);Convert.ToString(result);JToken resultStr = null;result.TryGetValue("result", out resultStr);Console.WriteLine("aToken===>"+ resultStr);voiceResult.Text = Convert.ToString(resultStr);Console.Write(result);}
开始合成按钮调用 api 中 C# SDK 的语音合成 api
https://ai.baidu.com/docs#/ASR-Online-Csharp-SDK/top
// 开始合成按钮(语音合成功能)private void synthesisButton_Click(object sender, EventArgs e){String APP_ID = "14*****92";String API_KEY = "C7W**********5GD08";String SECRET_KEY = "xcvw************qua";// 获取输入框的值String value = https://www.isolves.com/it/cxkf/yy/C/2021-06-10/this.Speech_Synthesis.Text;// 将 value 转成语音文件存放到本地var client = new Baidu.Aip.Speech.Tts(API_KEY, SECRET_KEY);// 可选参数var option = new Dictionary(){{"spd", 5}, // 语速{"vol", 7}, // 音量{"per", 3}// 发音人 , 4:情感度丫丫童声};var result = client.Synthesis(value, option);try {if (result.ErrorCode == 0) { // 或 result.SuccessFile.WriteAllBytes("E:/prepared/WindowsFormsApplication1/WindowsFormsApplication1/tmp.mp3", result.Data);}} catch (Exception ex) { Console.Write(ex.StackTrace); }Play();}
源码:https://github.com/zhongsb/voiceRecogniction.git推荐阅读
- 简单5步教你利用今日头条赚钱,在家就能做,不限基础
- 可以在线看视频和文档的开源网盘系统kiftd部署和使用教程
- 使用 IDEA 解决 Java8 的数据流问题,用过的都说好
- 深入解析什么是磁盘阵列技术?常用的磁盘阵列有哪几种?
- 低聚果糖沙棘茶价格,完美沙棘茶的服用注意事项
- 牛膝对肾脏的毒副作用,个产地的牛膝
- 菊花的副作用与禁忌症,菊花决明子茶的功效与作用及副作用
- 薄荷茶的禁忌,薄荷的食用禁忌
- 煮苹果的禁忌,苹果的食用方法与禁忌人群
- VPN在企业网络中的典型应用