| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 20730 人关注过本帖, 1 人收藏
标题:JAVA版音乐播放器YOYOPlayer1.0
只看楼主 加入收藏
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
结帖率:0
收藏(1)
 问题点数:0 回复次数:90 
JAVA版音乐播放器YOYOPlayer1.0
从最初的写第一个简单的Netbeans音乐插件,到现在的YOYOPlayer,中间经历了一些时间.感谢我的女朋友对我的帮助,所以此播放器取名为 YOYOPlayer,因为YOYO是她的名字,这个播放器的所有界面的图片也都是她做的.她刚刚学会PS,所以界面方面可能还不太完美,但至少也是一个尝试了,欢迎大家试用,并提出宝贵意见.
    YOYOPlayer的主要用处还是在linux下的使用,虽然我大部份时间是在windows下面编写的,因为WINDOWS下的音乐播放软件已经很完美了,只不过用JAVA写的比较少而已,并且这个版本是完全的JAVA的版本,只要电脑装了JAVA就可以跑了,不需要再另外下载JMF的框架了,因为没有用到JMF里面的东西.在LINUX下面播放器好像都不太好用,特别是播放音乐的,要么就会出现乱码的问题,要么就会没有歌词同步的功能,而 YOYOPlayer经过我在ubuntu7.10下面的初步测试,并没有发现乱码问题,因为我默认是使用GBK的编码读取标签的,而LINUX默认的编码是UTF-8.
   使用提示:
   电脑上需装了JAVA运行环境,JRE,因为我是在JDK6.0下面编码的,并且用到了JDK6.0的新特性,所以要求运行环境也是JRE6.0.
  
目前能实现的功能有:
1,自动保存当前配置。
    可以新建多个播放列表,每一个播放列表都可以单独保存,也可以全部保存,在关闭YOYOPlayer的时候,会自动保存当前的配置和设置,在并在下一次开启的时候,自动读取最后一次的配置
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,拖放排序播放列表
对播放列表的排序以前只能用鼠标点中某一首歌,然后点右键,选择上移一格或者下移一格,现在可以直接选中歌曲,直接拖动
就可以完成排序功能了,并且还增加了播放列表中查找某首歌曲的功能.更多功能可以对着播放列表点击右键来慢慢尝试.:)

8,调音器
可以对音乐的十个频段进行调整,调出自己喜欢的音乐风格.当然也可以使用默认的,也可以选用预置的一些音乐效果.

9,可以播放本地歌曲,也可以播放网络歌曲.只要添加网络歌曲的网址就可以实现在线播放了.


    最小化的时候,默认是最小化到托盘区去了,双击托盘区或者点击右键就可以调出主界面了.
   提示:为了搞高歌词搜索的正确率,请点击歌曲文件查看其属性,看文件的标签是否合法,或者文件名的命名是否规范.

程序运行截图如下:


请点击这里下载可执行文件

[[italic] 本帖最后由 千里冰封 于 2007-12-17 10:29 编辑 [/italic]]

yoyoplayer1.jpg (136 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册


YOYOPlayer1.0.rar (1.67 MB)
搜索更多相关主题的帖子: JAVA 音乐播放器 
2007-12-17 10:28
哈桑·萨巴赫
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-7-20
收藏
得分:0 
哈桑判定:此软件无毒。

速度上有点慢。

对.wma格式的文件支持的不太好。

最后得分:6分(10制)

/*如果是千里冰封作的就给7分*/

父上啊,何等宽厚之慈爱!
2007-12-17 12:24
Eastsun
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:802
专家分:0
注 册:2006-12-14
收藏
得分:0 
很好,很强大!

My BlogClick Me
2007-12-17 16:16
jitabc
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-6-20
收藏
得分:0 
好强啊,能不能开源啊?
2007-12-17 16:17
Eastsun
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:802
专家分:0
注 册:2006-12-14
收藏
得分:0 
里面的mp3播放功能是自己实现的还是使用了第三方工具库?

My BlogClick Me
2007-12-17 16:17
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
使用了第三方的库JLayer,它是基于javax.sound.sampled.spi的,纯JAVA的MP3解码器

可惜不是你,陪我到最后
2007-12-17 16:58
china008
Rank: 1
等 级:新手上路
帖 子:76
专家分:0
注 册:2007-5-8
收藏
得分:0 
佩服
顶一个,啥时我能写一个出来

2007-12-18 11:14
YongGG
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-11-16
收藏
得分:0 
我初学刚起步,羡慕!!!
2007-12-18 13:53
Toanso
Rank: 1
来 自:杭州
等 级:新手上路
帖 子:102
专家分:0
注 册:2007-10-22
收藏
得分:0 
回复 2# 的帖子
怒赞千里啊,越来越强大了,你的截图还没看懂那,又出播放器了,呵呵能不能开源啊不知道,要好好学习一下了。


   Programming is fun;
2007-12-18 15:46
lgdcky
Rank: 2
等 级:论坛游民
威 望:5
帖 子:576
专家分:18
注 册:2006-8-5
收藏
得分:0 
好羡慕冰峰啊!有人督促就能写出来!

2007-12-18 17:09
快速回复:JAVA版音乐播放器YOYOPlayer1.0
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021372 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved