<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    千里冰封
    JAVA 濃香四溢
    posts - 151,comments - 2801,trackbacks - 0

      在剛開始編碼的時候,不知道從何下手,由于寫YOYOPlayer之前用JMF寫過一個類似的播放器,但是由于要安裝JMF并且還需要另外安裝MP3 plugin,總體來說不太方便,并且JMF的項目也是Sun的一個已經(jīng)停止維護的項目了,并且用JMF有一個非常不好的地方,那就是經(jīng)常會在播放的時候crack,我以前用JMF寫的netbeans音樂插件就會出現(xiàn)這種問題,有時候音樂播得好好的,就突然netbeans退出了,基于這些考慮,所以放棄了使用JMF做為音樂播放框架的想法.

    由于JAVA一個開源的開放的自由平臺,很多自由開源軟件應運而生,在音頻播放領(lǐng)域,Jlayer是一個很不錯的開源音頻播放組件,并且它下面還有一個純JAVA的音樂播放器叫jlGui,這個播放器,在我05年初學JAVA的時候就下載過,試用過,不過那個時候似乎不支持播放MP3格式的音樂,所以我也沒有當回事,現(xiàn)在jlGui算是挺強大的了,YOYOPlayer就是基于jlGui的架構(gòu)上寫的, jlGui的地址:http://www.javazoom.net/jlgui/jlgui.html,初看起來似乎YOYOPlayerjlGui很像哦,呵呵,但是當你用了YOYOPlayer以后,你就會發(fā)現(xiàn)其實里面并不是很像,如果jlGui很好用的話,我就沒必要寫一個YOYOPlayer,我直接寫一個歌詞插件就行了,何必重寫呢?主要原因是一,jlGui對中文支持不好,,jlGui的面板設(shè)計不太好,不能分成幾個部份自由拖動,,不支持多個播放列表,另外它的配置也很少.所以YOYOPlayer才正式?jīng)Q定要寫下去了,為了一個比jlGui更易用的JAVA版的音樂播放器,也為了更支持中文,并且支持同步的歌詞顯示.

    確定了主要的框架以后,我花了一段時間去研究jlGui的源碼,發(fā)現(xiàn)有些地方寫得不太如意,一開始,我的項目是直接引用BasicPlayer.jar這個包的,后來里面有些東西寫得確實不太好,所以才把BasicPlayer.jar里面的源文件拿出來,自己重新修改放到自己的項目里面去,并且它的日志都是英文的,還有一點它的日志是用log4j,而我的日志系統(tǒng)用的是java.util.logging,所以把該改的代碼都改過來了.

    由于我以前寫的歌詞組件是基于JMF,是主動取得歌詞時間,jlGui里面要得到時間只有被動的實現(xiàn)接口去得到,直到YOYOPlayer1.1都是這樣得到媒體的時間的,現(xiàn)在正在改進的版本中已經(jīng)改過來了,變被動接受時間為主動詢問時間,這樣對于控制歌詞的刷新速度有了更好的主動性.并且效果也有所提高,因為一個接口實現(xiàn)方法里面做太多的事情會影響事件派發(fā)線程派發(fā)的及時性以及效率..

    我以前曾經(jīng)寫過ID3v1格式的標簽的讀取,后來發(fā)現(xiàn)jlGui里面有一個讀取ID3標簽的庫,為了統(tǒng)一性,就使用了它的庫,結(jié)果它的庫讀出來的中文都是亂碼,于是我又得改源代碼,把讀出來的字符串全部根據(jù)配置進行轉(zhuǎn)碼,才不致于出現(xiàn)中文亂碼的情況,在后來又發(fā)現(xiàn)一個非常好用的歌曲標簽讀取庫叫jaudiotagger,地址是: http://www.jthink.net/jaudiotagger/index.jsp,但是那個庫又沒有APEv2格式的標簽讀取支持,于是我只得自己寫了一個APEv2格式的標簽讀寫器,并集成到同一個庫里面,便于管理.jaudiotagger庫集成進來以后,又對jlGui里面的標簽讀取的方式進行了改動,以增加標簽指定編碼的讀和寫的功能.

    YOYOPlayer的界面上,很多地方是參考了千千靜聽,甚至說就是千千靜聽的設(shè)置直接搬過來的,因為千千靜聽是一個很成功的音樂播放器,成功的地方我們就要去學習,并且它確實有很多地方值得我們學習的,無論是從易用性還是擴展性來講都是一樣.YOYOPlayer的整體就是這個樣子,下次我們來根據(jù)代碼說話,和大家一起分享在編碼的過程中遇到的快樂和痛苦.希望能對大家有些幫助.也希望大家對于YOYOPlayer提出更多的意見,java.net上的項目通過以后,有更多的人加入到開發(fā)YOYOPlayer的行列中來.




    盡管千里冰封
    依然擁有晴空

    你我共同品味JAVA的濃香.
    posted on 2008-01-08 20:11 千里冰封 閱讀(7755) 評論(12)  編輯  收藏 所屬分類: JAVASE

    FeedBack:
    # re: YOYOPlayer開發(fā)手記(二)概述
    2008-01-08 20:20 | BeanSoft
    實在是太好了。。。套你一句話:最珍貴的東西是免費的

    還有一句話:比某些動輒將外國開源軟件吹上天 拼命翻譯文檔 自己連行代碼都不跑,也不看的人好。。。實踐出真知。  回復  更多評論
      
    # re: YOYOPlayer開發(fā)手記(二)概述
    2008-01-08 21:15 | Matthew Chen
    佩服。  回復  更多評論
      
    # re: YOYOPlayer開發(fā)手記(二)概述
    2008-01-08 22:00 | xidudui
    很有用 多謝誒  回復  更多評論
      
    # re: YOYOPlayer開發(fā)手記(二)概述
    2008-01-08 22:13 | Crying
    我用YOYOPlayer 感覺不錯! 謝謝啊   回復  更多評論
      
    # re: YOYOPlayer開發(fā)手記(二)概述
    2008-01-09 01:04 | wothnet
    用過,yoyoplayer很好,期待開源!!!  回復  更多評論
      
    # re: YOYOPlayer開發(fā)手記(二)概述
    2008-01-09 12:53 | 魚中魚
    感動中!  回復  更多評論
      
    # re: YOYOPlayer開發(fā)手記(二)概述
    2008-01-09 19:51 | wǒ愛伱--咾婆
    頂個。。支持支持。。。  回復  更多評論
      
    # re: YOYOPlayer開發(fā)手記(二)概述
    2008-01-09 21:53 | YZ
    寫得好!!我又來了!  回復  更多評論
      
    # re: YOYOPlayer開發(fā)手記(二)概述
    2008-01-10 15:31 | xidudui
    感動  回復  更多評論
      
    # re: YOYOPlayer開發(fā)手記(二)概述
    2008-01-10 16:17 | dx
    期待開源  回復  更多評論
      
    # re: YOYOPlayer開發(fā)手記(二)概述
    2009-02-25 08:45 | 2yr10000
    我也用JMF寫過mp3播放器,但一直沒時間去完善,我喜歡你的項目  回復  更多評論
      
    # re: YOYOPlayer開發(fā)手記(二)概述
    2009-04-22 03:01 | zhangpeng
    我先知道yoyoplayer中的波形分析原理
      回復  更多評論
      
    主站蜘蛛池模板: 最近新韩国日本免费观看| 两个人看的www视频免费完整版| www视频在线观看免费| 久久丫精品国产亚洲av不卡| 小草在线看片免费人成视久网| 亚洲va久久久噜噜噜久久| 久久青草免费91线频观看站街| 亚洲AV无码一区二区二三区软件 | 久久久久久a亚洲欧洲AV| 国产成人精品免费大全| 国产亚洲AV夜间福利香蕉149 | 老司机午夜精品视频在线观看免费| 国产免费爽爽视频免费可以看| 美女羞羞免费视频网站| 亚洲人成人网站在线观看| 拍拍拍无挡视频免费观看1000| 久久精品国产亚洲AV麻豆王友容 | 中国一级特黄高清免费的大片中国一级黄色片 | 亚洲综合久久1区2区3区| 无码人妻一区二区三区免费手机| 久久亚洲最大成人网4438| 国产免费直播在线观看视频| 国产一区二区三区免费观在线| 亚洲一区二区三区首页| 一二三四在线播放免费观看中文版视频| 亚洲人成色在线观看| 伊人婷婷综合缴情亚洲五月| 无码精品人妻一区二区三区免费看 | 免费91麻豆精品国产自产在线观看| 亚洲Av无码专区国产乱码DVD | 亚洲精品美女网站| 亚洲国产精品成人一区| 伊人免费在线观看| 亚洲 暴爽 AV人人爽日日碰| 又爽又黄无遮挡高清免费视频 | 国产大片线上免费观看| 日韩在线视频线视频免费网站| 久久夜色精品国产亚洲AV动态图 | 久久狠狠躁免费观看2020| 亚洲色偷偷综合亚洲av78| 在线亚洲午夜理论AV大片|