从最初写Netbeans的音乐插件,到现在写成JAVA的一个简单的音乐播放器,是在使用了插件版的之后,为了更方便与大家分享再写的,因为毕竟不是每个人都在用NB,虽然我个人很希望大家都用NB做为JAVA IDE,呵呵.运行截图如下:
目前能实现的功能有:
1,自动保存当前配置。
下次打开Netbeans的时候,自动恢复到关闭NB的状态,并开始放关闭NB时的那首歌,呵呵,这样就会出现NB还没有完全打开的时候,音乐就响起来了。
2,同步显示歌词功能。
在打开一首歌的时候,会按如下步骤查找歌词,先是取歌曲的ID3V1标签内容查找本地,如果没有查到,就取歌曲的文件名查找本地文件,如果还没有查到,就
按以上顺序,先用标签再用歌曲的文件名去网格上搜索。在这里要说明的是,很多ID3V1的标签是不合法的,里面很多广告信息,所以可以自己手工编辑一下
ID3V1的内容。这样就可以更方便地搜索到歌词了。存放歌词的文件夹目前是硬编码在用户的目录下,也就是user.home这个属性的目录的
Lyrics文件夹下面。比如C:\Documents and
Settings\hadeslee\Lyrics,如果预先有歌词的话,可以把歌词的LRC文件拷到该文件夹下面,以免每首歌都去网络上查找。一般千千
静听的用户歌词都是保存在C:\Program
Files\TTPlayer\Lyrics目录下的,所以可以预先把这里面的LRC文件拷到程序所使用的文件夹里面去。如果本地没有找到歌曲,则会去网
络上搜索,当有匹配的歌词以后,会自动下载并保存在user.home/Lyrics文件夹下面,这样下次放同一首歌就不用去网络上搜索了。所以为了提高
搜索歌词的准确率,
请规范命名MP3文件或者编辑ID3V1标签。
3,ID3V1标签编辑。
在播放列表里面对着选中的歌曲点右键就可以选择“歌曲信息”来编辑ID3V1标签,有一点需要注意的是,不能编辑正在播放的歌曲,因为正在使用的文件保存
不了,不知道千千静听是怎么实现的,反正我这里写入的时候会抛出一个IOException异常,提示我另一进程正在使用该文件,不知道各位有没有什么好
办法,可以在文件使用的时候更改它。
4,歌曲进度。
歌曲进度可以由两个地方来控制,一个是拖动进度条,还有一个很好的地方是在歌词显示窗口,在歌词显示窗口,当把鼠标移上面,鼠标变成了手形就说明歌词是可
以拖动的,按住鼠标左键不放左右拖动就可以了,这样可以根据歌词来拖动进度,确实是挺方便的。当歌词显示是水平显示的时候,可以左右拖动,是垂直显示的时
候,可以上下拖动,不过垂直显示意义不大,因为显示区域太低了,只是长长的一条而已。
5,校正歌词进度。
在歌词显示的时候可以把鼠标放到歌词显示窗口滑动鼠标的滚轮,上下滑动以整体移动歌词。比如有些歌词会整体快几秒或者慢几秒,用这种方法校正就很方便了,不过不像千千静听一样会保存。只是内存里面改了而已,歌词文件并没有改:(
6,拖放。
如果没有搜索到匹配的歌词,而电脑里面有歌词,可以把LRC歌词文件直接拖到歌词显示窗口,如果LRC是合法的文件的话,会立即显示你拖进去的歌词文件。同样,可以把文件或者文件夹直接拖放到播放列表上,文件夹的拖放只遍历一层,不会递归遍历(为了效率:))。
7,拖放排序播放列表
对播放列表的排序以前只能用鼠标点中某一首歌,然后点右键,选择上移一格或者下移一格,现在可以直接选中歌曲,直接拖动
就可以完成排序功能了,并且还增加了播放列表中查找某首歌曲的功能.
大家的使用的过程中有什么问题可以在我的BLOG上留言.
可执行文件
点击这里下载
尽管千里冰封
依然拥有晴空
你我共同品味JAVA的浓香.
posted on 2007-12-07 16:53
千里冰封 阅读(6606)
评论(19) 编辑 收藏 所属分类:
JAVASE