您的位置: 首页 > 技术文档 > 多媒体制作 > FLASH打造LRC歌词播放器
用flash从百度搜索中找歌词 回到列表 ActionScript 3.0 概要
 FLASH打造LRC歌词播放器

作者:HBrO 时间: 2006-01-09 文档类型:原创 来自:蓝色理想

第 1 页 FLASH打造LRC歌词播放器 [1]
第 2 页 FLASH打造LRC歌词播放器 [2]
第 3 页 FLASH打造LRC歌词播放器 [3]
第 4 页 FLASH打造LRC歌词播放器 [4]

时下,网上用FLASH制作的MP3播放器随处可见,使得很多音乐网站动感十足,而关于它的制作教程也俯拾即是(当然,好的教程还是不少的,只是有更多是抄袭回来的)。
然而,这一类的播放器一直都只在动画效果方面搞创新,笔者总觉得缺少些什么。。。。。
对了!就是少了个同步的歌词播放器
自WINAMP出了个迷你歌词以后,笔者一直心里痒痒的,想找个时间自己也做一个。
现在做好了,大家先预览一下效果:
测试地址:download.incoo.com/blueidea/hbro/player/mp3player_x1.swf

其中歌词就是现在标准的WINAMP的LRC文件,从别处下载的,没作任何修改,
就是说,这个播放器可以用于播放WINAMP格式的LRC文件。该播放器的新功能:点击歌词后可以让歌曲跳转到相应的位置。
一个小BUG:因为采用声音流加载,所以网速慢的话,播放起来不太流畅。

主要使用的AS技术:
1、用XML对象的TOSTRING方法
2、数组的常用处理方法。
3、少量的字符串函数。
4、声音对象的属性和事件。

该播放器分为三部分:
1、记录音乐文件路径的播放列表
2、控制音乐文件播放的控制区
3、显示歌词的歌词播放器

前两部分是经典MP3播放器所具备的。而且笔者不得不承认自己做得不如别人,再加上相关的教程也很容易找,所以这里只介绍歌词播放部分的制作。
因为播放歌词是跟音乐同步的,所以,制作播放器,需要三类文件:
1、SWF格式的播放器,这是我们要做的
2、音乐文件MP3,相信大家都能下载到吧
3、歌词文件LRC,是WINAMP格式的歌词文件,可以到WINAMP的主页下载,也可以到下面的站点下: www.rixiu.com/

文件准备好了,下一步就是把文件置于适当的位置。
在里头建立两个文件夹Sound,Lyrics,和FLASH文档PLAYER.FLA.Sound文件夹放入1.MP3,Lyrics放入文件1.LRC。

下面开始制作FLASH文件:
打开刚才创建的FLASH,在主场景第一帧输入AS:

var song=new Sound();//创建加载声音的对象
song.loadSound("Sound/1.mp3",true)//以数据流的形式读取声音文件。如要事件声音,把TRUE改为FALSE;
song.start(0,1)//从头开始播放声音,循环1次。

以上是载入MP3文件的代码,下面载入的LRC文件跟其同步。
声音文件需要SOUND对象作为容器,同样,歌词文件也需要一个容器。但是FLASH没有内置的歌词对象,所以就要自己创建。
在预览图里,我们所看到的显示歌词的"列表框"就是LRC文件的容器。下面将开始创建。
在主场景里创建一个MC,命名为lyricsItems,实例名相同。
创建了这个容器后,就可以用它来做读取LRC文件的操作了。
所以,在声音加载的同时,我们可以用它来读歌词文件。
在第一帧添加AS:

song.onLoad=function(){
lyricsItems.loadLyrics("Lyrics/1.lrc")//该函数将在lyricsItems里定义。
}

进入lyricsItems的编辑区,在第一帧输入AS:

function (filepath){
}

这样就定义了读歌词的函数。
第一步,先让LRC文件读进FLASH。
也许大家会觉得奇怪,FLASH能读LRC文件吗?
大家不妨先用记事本打开LRC文件,发现它其实是个文本文档。
对于文本文档,其实FLASH的XML对象是可以读到的。
笔者曾经把一个错误的XML文件用XML对象读取,发现XML对象的很多方法都调用失败,可是TOSTRING方法却可以,返回的是跟文本文档内容一样的字符串(只有部分HTML字符发生了转义),也就是说,用XML对象可以把LRC文件全部读到FLASH里。
在loadLyrics函数里加入下面代码:

var lyrics=new XML()
lyrics.load("Lyrics/1。lrc")
lyrics.onLoad=function(){
lyricsString=lyrics.toString()
trace(lyricsString)
}

测试影片,你会发现整个文本文档被读到了lyricsString里面。
下面就是分析LRC文件的结构,从里头提取我们需要的信息。

出处:蓝色理想
责任编辑:moby

上一页 下一页 FLASH打造LRC歌词播放器 [2]

◎进入论坛Flash专栏版块参加讨论

相关文章 更多相关链接
Google 视频下载工具
flash留言本梯度教程(附源)
Accordion组件的使用实例
歌词同步关键技术
用flash从百度搜索中找歌词
热门搜索:CSS Fireworks 设计比赛 网页制作 Dreamweaver Studio8 Flash
站点最新 站点最新列表
跟我去香港:The third Day
单件模式结合命令链模式
快乐狗原创动漫大赛
元素层叠级别及z-index剖析
CSS 浏览器的等宽空格
电影变形金刚概念画欣赏
疯狂的程序员 第三十五回
疯狂的程序员 第三十四回
疯狂的程序员 第三十三回
运用ASDoc工具
栏目最新 栏目最新列表
火星人的耳机
公司正式宣布创业失败
用corelDEAW 12打造唇膏
二行代码解决全部网页木马
一行代码解决iframe挂马
Photoshop制作星空爆炸效果
CorelDraw 12打造休闲裤
Firework如何画特殊的切角图形
Firework打造韩式风格的手提袋
flash实例:打造佛光效果
 
>> 分页 首页 前页 后页 尾页 页次:1/41个记录/页 转到 页 共4个记录

蓝色理想版权申明:除部分特别声明不要转载,或者授权我站独家播发的文章外,大家可以自由转载我站点的原创文章,但原作者和来自我站的链接必须保留(非我站原创的,按照原来自一节,自行链接)。文章版权归我站和作者共有。

转载要求:转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印,亦不能抹去我站点水印。

特别注意:本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有,文章若有侵犯作者版权,请与我们联系,我们将立即删除修改。

本文现有 4 条评论 暂时没有人参与评分


thpngj Publish at 2006-2-25 11:58:55
没有显示歌词耶!!
郁闷ING……
ghpsyn Publish at 2006-1-22 23:39:05
确实没见到有歌词.
蓝色 Publish at 2006-1-10 12:42:59
[offset:400]笔者不太清楚,大概是缓冲时间为400毫秒吧
offset 是偏移,当歌和歌词有对不上号时,需要用这个值来做纠正。
lhh2004 Publish at 2006-1-10 0:40:07
歌词在那? 我怎么看不见啊? 用了几个浏览器?
点击停止按钮也没用
您的评论
用户名:  口令:
说明:输入正确的用户名和密码才能参与评论。如果您不是本站会员,你可以注册 为本站会员。
注意:文章中的链接、内容等需要修改的错误,请用报告错误,以利文档及时修改。
不评分 1 2 3 4 5
注意:请不要在评论中含与内容无关的广告链接,违者封ID
请您注意:
·不良评论请用报告管理员,以利管理员及时删除。
·尊重网上道德,遵守中华人民共和国的各项有关法律法规
·承担一切因您的行为而直接或间接导致的民事或刑事法律责任
·本站评论管理人员有权保留或删除其管辖评论中的任意内容
·您在本站发表的作品,本站有权在网站内转载或引用
·参与本评论即表明您已经阅读并接受上述条款
推荐文档 | 打印文档 | 评论文档 | 报告错误  
专业书推荐 更多内容
大师之路--Photoshop 完全解析
《超越CSS》新书上市
Don't Make Me Think 第2版
HTML与CSS入门经典(第7版)
《FLASH MX2004网站开发精粹》
《CSS入门经典》
《设计师谈网页设计思维》
作品集 更多内容

缦延 金色童年 交职院50周年校庆 自己的壁纸 娅蔓妮 模仿国外教程画的壁纸 学习科学研究中心新版 登录页面设计