RVB2601应用开发实战系列五: 网络播放器设计(一)

简介: 本文是基于RVB2601开发板实现网络播放器设计的上篇,将涉及环境搭建、例程开发、增加(修改)本地音频三部分内容。

本文作者:王佐

本文转自:芯片开放社区(OCC)

一、前言

基于RVB2601的本地播放器是通过开发板自带的codec,播放本地音频数据。 建议在在看本文之前,先详细看下RVB2601开发板快速上手教程。本例程名为ch2601_player_demo,可以通过CDK直接从OCC拉取。


二、环境搭建


1.硬件介绍

1.jpg


三、例程开发

1.示例获取

  • 打开CDK软件
  • 点击红色处按钮,点击新建工程按钮。

2.png


在搜索框输入ch2601_player_demo ,点击右边的搜索按钮,ch2601_player_demo就显示出来了。

3.png


在弹出框输入工程名字,版本号默认版本即可。点击下载方案按钮,等待下载完成。

4.png


2.例程使用

分别点击工具栏中的编译烧写按钮,完成编译烧写

5.png


2.1 编译成功

6.png


2.2 烧写成功

7.png


2.3 运行例程

按下开发板的复位键(RST),串口将输出如下log,并听到音频“欢迎使用YoC播放器例程”

8.png


2.4 cli命令控制音频

当前cli音频支持命令如下

playerplayerplaywelcom/raw//播放本地mp3或裸流playerpause// 暂停播放playerresume// 恢复播放playerstop// 停止播放playerhelp


比如串口输入player play raw,可以看到如下log以及听到音频“裸流播放”

9.png


四、增加(修改)本地音频

1.mp3文件转换成对应的头文件

  • 使用windows工具“DataToHex”将mp3文件生成数组保存为.h文件, 或者使用linux下的xxd工具将mp3文件生成.h文件,命令如下 xxd -i xx.mp3 > out.h
  • 对应的头文件放在ch2601_player_demo/app/include
  • 并在数组定义前增加const关键字,参考ch2601_player_demo/app/include/welcome_mp3.h


2.代码中增加新音频

  • 使用player_play播放对应的音频,可参考2601_player_demo/app/src/player_demo.c中的播放

10.png

注: 由于ch2601芯片的flash较小,留给prim分区只有420Kb,本地mp3文件增加时可能会导致链接不过


11.png

这时候就需要减小对应的mp3文件或者删除不必要的文件


五、参考资料

YoC平台介绍 多媒体组件介绍

相关文章
|
4天前
|
消息中间件 Java RocketMQ
消息队列 MQ产品使用合集之当SpringBoot应用因网络不通而启动失败时,该如何解决
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
4天前
|
Java API 开发者
Java网络编程基础与Socket通信实战
Java网络编程基础与Socket通信实战
|
2天前
|
Java API 开发者
Java网络编程基础与Socket通信实战
Java网络编程基础与Socket通信实战
|
2天前
|
XML JSON 安全
Base64编码原理与在网络传输中的应用
Base64编码原理与在网络传输中的应用
|
1天前
|
XML JSON 安全
Base64编码原理与在网络传输中的应用
Base64编码原理与在网络传输中的应用
|
2天前
|
Java
Socket网络编程实战指南
Socket网络编程实战指南
|
3天前
|
机器学习/深度学习 自然语言处理 算法
深度学习中的自适应神经网络:理论与应用
【7月更文挑战第1天】本文旨在探究自适应神经网络在深度学习领域的理论基础及其在多个应用场景中的实际效能。通过分析自适应机制如何优化网络结构,提高学习效率和模型泛化能力,我们进一步讨论了自适应神经网络面临的主要挑战及未来发展方向。
|
3天前
|
监控 安全 网络协议
TELNET命令在网络管理中的常见用法和实战案例
TELNET命令在网络管理中的常见用法和实战案例
|
5天前
|
Java API
Java网络编程实战指南与示例代码
Java网络编程实战指南与示例代码

热门文章

最新文章