嵌入式openwrt平台(mt7688)上使用讯飞语音服务

来源:互联网 发布:安徽运泰网络 编辑:程序博客网 时间:2024/05/02 08:57

还记得第一次接触嵌入式开发,boss拿着一块widora的mt7688板子让我去开发openwrt环境下的使用讯飞语音技术的应用。我的天啊,我第一次接触,这是什么东西。因此,我这个新手走了不少弯路,但是最后成功使程序跑起来了,嘻嘻。废话不多说,为了让后来者少走点弯路,在这里我说说怎么在openwrt上运行讯飞语音应用。

第一步(应用的创建和SDK的下载):

首先你需要一个讯飞开放平台的开发者账号,登陆后点击控制台,然后找到
152447DD228E46C8A6F456C07394454D.jpg
上图选项点击,然后会进入以下界面,

6314F1AA0DCB49A0B02AF5AA8DE42E42.jpg
填写相关信息,选择应用平台,当然了这里我们必须选择Linux平台,点击提交,应用就创建完成了。
接着点击

D2B6F32CF2CC4571873454634767C706.jpg
在这里我们能找到刚刚我们创建的应用,我这里名称是linux二代听橙,在应用下方点击

82C72F364E5640ECBA0EB337CC610A09.jpg
然后会弹出请选择开通的业务的对话框,选择我们需要用到的业务即可。
我这里选择的是在线语音合成

![9C3C854791E041C5AE60D1BF1CEE7229.jpg](http://upload-images.jianshu.io/upload_images/5075943-d1e68ff7970e01bb.jpg?
imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
选中后点击确定即可。
然后回到当前界面点击我们刚刚选择的在线语音合成

585C85C2D8F54239BF25D6C6959B76F4.jpg
然后我们选择SDK下载进入相应页面选择我们刚刚创建的应用和平台即可下载我们刚刚创建的应用对应的sdk包了
ps:不同的appid请使用对应的sdk

第二步(获取动态库文件libmsc.so):

因为我用到的板子是widora的板子,平台架构是mips架构,所以我们不能使用下载回来的sdk包中的libmsc.so文件,我们需要去申请一个适合我们开发版的动态库文件。
首先进入讯飞提供的该地址http://www.xfyun.cn/index.php/mycloud/app/linuxCrossCompile
在这里我们能看到**Linux平台
![Uploading CB1A1073BF9E42F7BC71C2BDF349835B_144614.jpg …]库文件交叉编译申请**,没错就是这里了。
在这里我们需要填写一些信息

15FEC33C724B4F0E8EFA48E69C2294D4.jpg

CB1A1073BF9E42F7BC71C2BDF349835B.jpg
当然啦,你的板子如果跟我的不一样,那肯定是填写你板子的信息,这里很关键哦。
接着,我们从源码包里面找到我们的gcc编译器


什么你说你没有,不过没关系,可以进入联发科网站下载http://labs.mediatek.com/site/znch/developer_tools/mediatek_linkit_smart_7688/sdt_intro/index.gsp,因为我的是MTK7688所以我下载的就是这个

9DC0642223E84DD1846E47ECEBCE5EE9.jpg
985DBCF4E5FF430590F2EA6BDF8B6C4B.jpg
点击下载,
然后上传到百度网盘或者其他网盘也行,记下网盘下载地址还有提取码,填写到

4B4CE841064B4F539DDDE6629E1A47D7.jpg
如果你的编译环境是32位的那就选择

91183B6CAC8C4F4A9E7803BE14EA499C.jpg
最后填上你的联系方式,一般一两天就会有结果。

第三步(编译应用):

看到这里相信你们已经得到讯飞发送给你们的libmsc.so文件了,是不是很激动?
废话少说,继续我们的教程。
好的,我们先把我们前面下载的sdk解压出来,文件夹里面的东西是这样的

11CC10D224EB42E1BFD54778565B09C9.jpg
把我们得到的libmsc.so文件替换掉libs文件夹下着两个文件夹(x86和x64)的libmsc.so文件

EDE35B1498DB4C3BB417D5C067100DE7.jpg
然后打开sample文件夹夹里面的

46152A81586A4F7D83E866C2D535A271.jpg
没错,这就是我们需要用到的讯飞应用了。打开文件夹能看到一下文件

4B92B2067FA04C7FB28B28EF173BCAA9.jpg
首先,我们把前面说到的gcc编译器包的bin文件夹中的gcc编译器可执行文件的绝对路径得到,复制下来

4025D76339D8416A9C01BA22D1F8D6AB.jpg
回到tts_sample文件夹打开Makefile文件
把我们刚刚获取到的路径复制到CROSS_COMPILE = 后面保存

C970ADD19E24475A81D614B4F7C43F14.jpg
然后在当前文件夹打开终端,输入指令source 32bit_make.sh,当然啦,如果你的系统是64位的话那就输入source 64bit_make.sh,点击回车执行。

43D38D82D6AC457BB023ECCB1A8F2905.jpg
好的编译成功,激动一个,离成功不远了。

B2D297A2B1DA4B22A0ED33B5F8F01A1D.jpg
然后在sdk文件夹根目录的bin文件夹中找到我们编译成功生成的可执行程序tts_sample

FEFE8C7419CC4855A0968B9E853F170F.jpg

第四步(运行):

好的,我们找到生成的可执行文件tts_sample文件,把它拷贝到你的板子上运行,ok,完美执行,因为我们执行的是语音合成demo,所以在当前目录底下会生成一个音频文件tts_sample.wav
到这里我们的教程结束,谢谢翻阅。

1 0
原创粉丝点击