java_YOYOPlayer
应用介绍
歌词同步的原理其实很简单: 歌词显示是一个线程, 音乐播放时一个线程,通过播放时间将歌词显示进度与播放进度同步起来. 网络标准的歌词格式是LRC. 我们看下一个LRC文档,其格式就一目了然了. [ti:爱] [ar:小虎队] [al:华纳国语情浓13首] [by:爱上你了音乐网] [02:08.00][00:38.00]把你的心、我的心串一串 [02:11.00][00:41.00]串一株幸运草、串一?同心圆 [02:16.00][00:46.00]让所有期待未?的呼唤 [02:19.00][00:49.00]趁青春做?伴 [03:16.00][02:24.00][00:53.00]?让年轻越长大越孤单 [03:19.00][02:27.00][00:56.00]把我的幸运草种在你的梦田 [03:23.00][02:31.00][01:01.00]让地球随我?的同心圆 LRC 格式为 [歌词显示起始时间][歌词显示结束时间]歌词内容. 了解歌词同步原理,我们可以想到要做如下工作: 1. LRC 解析 2. LRC 歌词显示 3. 歌词与播放音乐同步 4. 歌词的获取 一 LRC解析 这边我推荐YOYOPlayer 音乐播放开源项目. 源代码已经非常好的支持了LRC解析. 我拿过来就用了. 过程大概如此: 把LRC文件读到内存里面,用 sentence数据结构存放. Sentence里面有 Fromtime, Totime, content三个成员变量.显示的时候需要这些数据. 二. LRC歌词显示 歌词的绘制通过重写 OnDraw方法. 绘制的代码贴出来:

©软件著作权归作者所有。本站所有内容均来源于网络,不得违法使用,仅供学习使用,请支持正版!
转载请注明出处: 662P » java_YOYOPlayer
发表评论 取消回复