flex MP3播放器开发二(单歌曲播放)
来源:互联网 发布:ubuntu 重置密码 编辑:程序博客网 时间:2024/05/17 01:24
由于flex音乐组件Sound比较强大,基本上能满足播放,暂停,音量调节。。网上也有很多这方面的资料,这里就不给太多代码。。
- soundRequest = new URLRequest(encodeURI(musicUrl));
- sound = new Sound();
- sound.addEventListener(IOErrorEvent.IO_ERROR,loadMusicError);
- sound.load(soundRequest);
- chanel = sound.play();
- //引入声音文件
- vol=new SoundTransform();
- vol.volume=soundSlide.value/100;
- chanel.soundTransform=vol;
这里遇到的一个主要难点是播放时间和总时间的显示。
总时间,最开始做法是用id3info来显示的, sound.addEventListener(Event.ID3, sound_id3);
这个事件在本地测试应该问题不大,看不出问题。但是放到外网服务器上,问题出现了。。什么问题?(总时间在慢慢增加,而不是一开始就显示总时间,而是显示的加载时间)。问题出来了,怎么解决?
我的解决方法是:用java获取MP3时间写到xml文件里,在加载MP3的时间显示,其他语言也有获取MP3时间的方法,不知道各位朋友有没有其他解决方案,直接用flex读出来。。
至于播放时间,这个比较简单,利用this.addEventListener(Event.ENTER_FRAME,onEnterFrame)这个事件和chanel.position这个属性可以解决,不过要做一下时间转换,跟总时间一样。
//播放时间的显示处理
- private function formatTime(time:Number):String{
- var s:String;
- var n:Number = Math.floor(time / 60000);
- if (n < 10)
- s = "0" + n;
- else
- s = String(n);
- n = Math.floor((time / 1000 ) % 60)
- if (n < 10)
- s += ":0" + n;
- else
- s += ":" + n;
- return s;
- }
这里有个问题是,如果在网络中播放遇到网速慢的情况,怎么处理?
我的解决方法是:在播放的位置大于等于加载的位置时,停止几秒钟,然后移出Event.ENTER_FRAME事件,当加载的位置大于播放位置时再播放。
部分代码:
- if(chanel.position>=loadlen){
- stopPosition = chanel.position;
- chanel.stop();
- timer = new Timer(5000);
- timer.addEventListener(TimerEvent.TIMER, onTimerPlay);
- this.removeEventListener(Event.ENTER_FRAME,onEnterFrame);
- timer.start();
- }
欢迎留言交流。。
如果文章有什么写的不对的地方,欢迎大家指出。。。谢谢。。。
效果请访问www.137zg.com,137战歌网
- flex MP3播放器开发二(单歌曲播放)
- Flex开发实例教程-Mp3播放器
- MP3播放器显示歌曲列表部分
- 音乐播放器(4)--Mp3歌曲播放与控制
- flex MP3播放器开发一(思路篇)
- flex MP3播放器开发三(进度条显示)
- flex MP3播放器开发四(我的播放列表)
- Flex开发实例教程-Mp3播放器代码demo分享
- flex 播放mp3
- Flex mp3播放
- Flex mp3播放
- flex 播放mp3文件
- Android开发本地及网络Mp3音乐播放器(十八)新下载歌曲加载准备SdcardSearchToList
- SDK开发mp3播放器
- DirectShow 开发mp3播放器
- Android开发本地及网络Mp3音乐播放器(二十)歌曲下载完成后通知主界面更新本地音乐
- 如何实现一个FLEX MP3播放器
- 我的flex MP3 播放器
- Android first stage bootlogo
- 存储过程面试实例
- 创建Oracle同义词带来的3种意外惊喜
- flex MP3播放器开发一(思路篇)
- 第02章 IntelliJ IDEA起步 熟悉IntelliJ IDEA编辑器 03 关闭编辑器中的文件
- flex MP3播放器开发二(单歌曲播放)
- 吃火锅
- javascript实现类继承.. 参照代码....
- 如何彻底删去Oracle重新再装
- flex MP3播放器开发三(进度条显示)
- 多协程压力测试客户端
- QT developer day 2010
- W
- java过滤器(Filter)二