- 注册时间
- 2006-6-1
- 最后登录
- 1970-1-1
|
没啥时间,于是花了大概2天功夫研究了一下lrc文件。
首先说明的是lrc文件的编码格式:
从千千静音上面直接编辑的lrc文件多半是UTF-8编码的;如果是从酷狗一类软件那里得到的通常就是ANSII编码的,那样的编码在MP3和手机上显示就会出现一些问题(喜欢听韩文歌的朋友应该会注意到,韩文都没法显示……)。
本来自己写这个东西就是为了能在放动漫歌的时候正常显示,所以默认是对应UTF-8编码格式的,时间不够用,于是也没写编码判断什么的了,只小范围测试了一个test.lrc,也没有写文件浏览什么的,但我个人觉得核心部分算是写好了。(附带了一个Unicode开源编码的码制转换,但没用上)
回来继续说lrc文件的格式:
[ti:标题]
[ar:艺术家]
[al:专辑] (无条件想到了全金里面的那个AI——AL,汗)
[by:lrc歌词制作者]
上面这些的判断懒得写了,直接给过滤掉了,现在歌词也大部分都重新在时间标签上写出来了,所以这些定义就没用到。
[分:秒.毫秒]歌词
这个是lrc最重要的部分了,那个毫秒觉得用的不贴切,是0.10秒这样的东西,反正很少见长度达到小时级别的,所以这部分判断也不做了。只是把[]里面的东西提取出来,并且根据:号分成了两部分,根据第一部分是时间的换算成了毫秒数。
包里面的MediaPlayer类也是之前另外一个程序里面的东西,包括了识别wav,mp3,mp4(图像部分被我去掉了,免得浪费程序空间)等类型文件以及对应的播放控制。
上面也提到了,Lrc歌词文件的读取我自己写了个类,不过没有加入读取上的机能,没办法读大的歌词文件,也没法识别文件编码,甚至没有读入指定路径歌词文件的功能。
不过这些不足都是因为时间不够的关系,想来做不完了就拿出来让大家看看,哪位有兴趣的就改好做成个能用的东西吧,希望对大家有些帮助。
下面上传源代码,只好分成几个卷了:
(抱歉,图片占了一堆空间,代码很少,汗死)
----------------------------
PS1:听Jzjz的话,不要写代码……
PS2:先占楼,一会继续写。
因为是用以前做的一个程序改造来的,有很多图,结果现在文件大小有2.5MB,我没权限一次上传大文件,唉……
PS3:这东西大概没啥用,就对自己有用而已,哈哈哈……
本来是一个横屏手机音乐游戏项目,拿过来改了下……所以能看到一些残余。打算闭关一段时间,以后尽量不上网了,本以为能2天内速战速决的,失策了。
本鸟的风格就是要华丽!(被众人p飞……)
[ 本帖最后由 绿鸟 于 2009-9-13 20:38 编辑 ] |
|