Player
1、介绍
Player 是 RT-Thread 开发的适合 MCU 的轻型流媒体音频框架,资源占用小,响应快。
RT-Thread 提供的 Player 组件具有以下优势:
- 本地播放:支持播放本地文件系统中的音频文件
- 网络播放: 支持播放网络数据流歌曲,支持
http
、https
、HLS
、PLS
、TTS
流式音频播放 - 支持多种音频格式:默认支持
pcm
、wav
音频格式 - 支持多种容器格式:默认支持
MPEG-TS
音频容器 - 支持外置注册解码器,支持
mp3
、aac
,m4a
、flac
、amr
、ogg
、wma
、flac
格式音频外置注册 - 支持自定义加密音频格式
- 支持歌单播放功能:支持
添加
、删除
、播放
、暂停
、上一曲
、下一曲
、切换歌单
等多种歌单播放功能
更多详细介绍,参考 Player 介绍 文档。
1.1 目录结构
player packages 源码 的目录结构
名称 | 说明 |
---|---|
docs | Player 组件相关文档 |
example | Player 组件使用例程 |
player | Player 组件源码 |
.gitignore | git 忽略文件, 使用者无需关心 |
LICENSE | 许可声明 |
README.md | 简单介绍 |
SConscript | Player 组件 scons 脚本,用于组织 player 源码编译方式 |
1.2 许可证
Player 软件包遵循 GPL2+ 商业双许可。该软件包可以根据 GUN 标准使用通用公共许可证,详见 LICENSE 文件。如果用于商业应用,可以通过电子邮箱 <business@rt-thread.com > 与我们联系获取商业许可。
1.3 依赖
- RT-Thread 3.0+
- LwIP
- cJson
- WebClient
- player_v1.2.4 之前的版本依赖 WebClient_v1.0.0
- player_v1.2.4 之后版本(包括)依赖于 WebClient_v2.x.x
- DFS
- Finsh
- Codec
2、如何配置 Player
Player 通常是以基础组件包的形式自动被其它组件依赖,但开发者也可以使用 RT-Thread 的包管理器中选择使用它,具体路径如下:
Privated Packages of RealThread
[*] Player: The RT-Thread lightweight streaming audio playback package
version (v1.2.7_alpha(Testing)) --->
examples --->
[*] Using player msh command
[*] Using listplayer msh command
[*] Using codec dump msh command
[*] Using tts example and msh test command
Build (Release)
*** Release version without debug log ***
(X) Debug
( ) Release
(sound0) Device Name
(80) Startup default volume
Audio codec configuration --->
*** The following codecs and formats are built-in implementations of player ***
[ ] Enable pcm codec support
[ ] Enable wav codec support
[ ] Enable MPEG-TS formats support
Net related configuration --->
[*] Enable net stream
(128) net stream buffer size(KB)
[ ] Enable TTS stream
[ ] Enable HLS stream
[ ] Enable HLS accelerate features
[ ] Enable PLS stream
Application configuration --->
[*] Enable app
[*] Enable listplayer app
开发者可以根据需要选择网络播放、列表播放app、提示音播放app、命令例程。
保存后等待 RT-Thread 的包管理器自动更新完成,或者使用 pkgs --update
命令手动更新包到 BSP 中。
3、注意事项
- 注意 player 需要的auido驱动和目前RTT的audio框架下实现驱动是不兼容的, 想要使用先参考内部项目.
4、联系方式
- 维护:RT-Thread 团队