小智Pro:在线点歌+歌词同步,支持打断和搜索,端云协同方案
本文分享了`小智Pro: 在线点歌+歌词同步`的端云协同解决方案。
前文,分享了【小智Pro】系列文章:
30天,AI 陪我写了3万行代码,上线一款应用,3点血泪教训
今天来聊:如何接入【在线点歌】并实现云端同步!
关于【在线点歌】的设备端实现思路,可见前文分享:
小智 AI + 在线音乐 + 歌词同步,MCP is All You Need
实际体验中,会发现两大硬伤:
- 想要的歌搜不到
- 想搜的歌 AI 识别不准
怎么解决?
上云端!
支持用户主动上传歌曲,支持用户添加歌单。。。
1. 系统架构
云端负责音乐资源管理、搜索和用户数据存储。
设备端负责音乐播放和用户交互。
这种架构既保证了系统的可扩展性,又确保了用户体验的流畅性。
整体交互逻辑如下:

1.1 云端核心模块
- 音乐资源管理:负责音乐文件的存储、元数据管理和分类
- 用户数据管理:存储和管理用户歌单、播放历史、收藏等数据
- 音乐搜索服务:提供音乐搜索功能
- 权限配额管理:控制用户访问权限和资源使用配额
- 权限配额管理:控制用户访问权限和资源使用配额
1.2 设备端核心模块
- 语音交互层:语音识别和指令解析
- 播放控制层:核心播放器,负责解码、播放、暂停、切歌等操作
- UI展示层:显示播放界面、歌单、歌词等
- 本地缓存:缓存音频片段,减少网络延迟造成的卡顿
- 歌词同步:实时同步和显示歌词
- HTTP客户端:负责与云端API通信,发送请求和接收数据。设备端向云端请求更新数据,如歌单信息、播放列表等。同时,将用户的播放历史上传到云端进行存储。
交互时序图如下:

2. 核心功能
2.1 在线点歌
小智Pro 支持 歌名 和 歌手 关键词搜索。
用户可以通过 Web 界面搜索:

也可以对设备发出语音指令:

在后端,系统集成了多个第三方音乐源API。当用户搜索歌曲时,系统会优先在本地音乐库中查找,如果没有,则调用外部音乐API进行搜索。
2.2 语音打断
小智Pro 支持在播放音乐过程中,通过唤醒指令进行打断。
设备端通过HTTP接口与云端通信,获取用户的指令并执行相应的操作。
云端服务会根据指令类型,返回相应的响应数据。目前支持的指令类型包括:
'播放一首周杰伦的歌',
'播放七里香',
'播放周杰伦的稻香',
'循环播放我的歌单',
'随机播放我的歌单',
'刷新我的歌单',
'播放下一首'
2.3 播放记录
播放记录列表,详细记录用户播放的歌曲信息,播放时间和播放设备,为用户提供完整的音乐行为分析。

2.4 歌单管理
小智Pro支持为不同设备创建独立的歌单。
用户可以在界面中,直观地选择设备并管理对应歌单。
这种设计让用户可以为不同设备设置不同的歌单列表。

2.5 智能搜索与上传功能
系统支持两种添加歌曲的方式:
- 搜索添加:调用后端API,检索相关歌曲
- 手动上传:允许用户上传本地音乐/封面/歌词文件。(目前只支持 MP3 格式音频)


这样做,完美解决前文的两个痛点:
- 精准检索想要的歌曲
- 手动上传搜不到的歌曲
写在最后
本文分享了小智Pro: 在线点歌+歌词同步的端云协同解决方案。
如果对你有帮助,不妨点赞收藏备用。
欢迎体验 小智Pro 更多功能,请戳👇:
有任何问题,欢迎进群交流:

更多推荐



所有评论(0)