完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
前言 本系列共有三篇文章,目的是在 RVB2601 上实现基于 HTTPClient 组件的云语音识别。文章连接与主要内容如下: 文章1:设计思路;HTTPClient 组件测试 文章2:HTTPClient 组件源码解析 文章3:手动实现“multipart/form-data”类型 POST 请求;完成板端与服务器端代码,实现整个云语音识别功能。 RVB2601 板载资源非常丰富,支持 WiFi、蓝牙、Codec、麦克风等,因此我们能够通过这块开发板实现绝大部分物联网场景下的应用,如云语音识别。 在官方提供的 RVB2601 示例程序中:ch2601_ft_demo 实现了麦克风录音并由扬声器回放的功能;ch2601_webplayer_demo 实现了从网络上下载音乐并播放的功能。因此我们有理由相信借助于现有的组件就能够实现一个基于 Http 的云语音识别。 然而,ch2601_webplayer_demo 中使用的网络库并不提供完整的 HTTP 功能,因此我们需要寻找支持 RVB2601 的其它网络库。 通过上网搜寻,找到了 平头哥YOC文档,里面列举了众多 API 以及模块组件;以及对应的 YOC github 源码。 其中,YOC 提供一个网络组件:HTTPClient,它“为http/https客户端组件,为用户提供一组简洁的调用接口。”并且看其接口列表它好像还实现了 HTTP 的各种请求(年轻了)。 因此我们选择使用 HTTPClient 组件来帮助我们与服务器通信,上传录音文件并接收识别结果。 由于这是一个没有出现在 RVB2601 示例程序中的组件,我们还不清楚能否使用以及如何使用。所幸源码中提供了 HTTPClient 的测试程序:http_examples。因此我们可以先尝试测试该组件。 项目工程建立在 ch2601_webplayer_demo 上。以下为操作流程: 首先从 YOC github 源码 下载所需组件,除了 HTTPClient 外还需要 transport 组件。 接着进入 CDK 工程,右键 Packages 并新建一个普通包: 设置包名以及存储路径: 接着我们就能向刚刚新建的 Package 里添加下载的源码: 最后我们需要对 Package 进行配置: 在 Compiler 选项卡中设置 Include: 最后在 Base 选项卡中编辑 Description: 我们直接将 http_examples.c 的内容加入到 player_demo.c 中,并向 CLI 控制台注册一个新命令 http_test:
这样,当控制台接收到 http_test 命令后就会直接调用 http_examples.c 中的测试函数 test_https()。 测试后没有什么问题,因此我们能够在 RVB2601 上调用 HTTPClient 提供的接口,来帮助我们与服务器通信。 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
【平头哥Sipeed LicheeRV 86开发板试用体验】Waft初体验
15658 浏览 1 评论
13707 浏览 4 评论
【平头哥Sipeed LicheeRV 86开发板试用体验】四、烧写waft系统&搭建waft测试环境
19622 浏览 2 评论
59029 浏览 19 评论
【限时福利】加入芯片开发社区,领100G电子工程师资料大礼包
87716 浏览 121 评论
邀请函 | 3月2日 来上海参加平头哥“玄铁RISC-V生态大会”
743浏览 0评论
读书分享会 | 玄铁RISC-V处理器入门与实战电子书免费下载!
637浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 18:12 , Processed in 0.732796 second(s), Total 69, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号