線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1624
推到 Plurk!
推到 Facebook!

我要如何控制WinAMP.exe來作MP3播放的工作

答題得分者是:kevin2004
limary
初階會員


發表:41
回覆:109
積分:30
註冊:2007-01-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-10-24 16:20:01 IP:61.219.xxx.xxx 未訂閱
各位前輩:
小妹最近在寫一支工具,它具有類似語言學習機或音樂盒的功能,它能由資料庫中
將Blob欄位的MP3檔讀出及播放它,它可以重複或定時開關像鬧鐘或像睡前音樂一般使用
。當然,我的功力太差,我不可能自己寫MP3的播放等的完整功能,我是偷懶取巧想盜用
WinAMP來作這個部份,以讓我可以將注意力集中在樂曲與語文管理等部份。我第一個瓶
頸就是,我對WinAMP一點概念都沒有,我要如何開始著手?請各位前輩指點一二。謝謝。
pceyes
尊榮會員


發表:70
回覆:657
積分:1140
註冊:2003-03-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-10-25 04:31:28 IP:220.141.xxx.xxx 訂閱
初期還可,後面維護難,還是自己寫比較好。

Your first MP3 Delphi player
http://delphi.about.com/od/multimedia/l/aa112800a.htm

delphi播放mp3背景音乐代码
http://209.85.175.104/search?q=cache:tL7F8GDZ2A0J:www.zxbc.cn/html/20080104/30977.html delphi mp3&hl=zh-TW&ct=clnk&cd=25&gl=tw

在delphi中用函数播放MP3文件问题!!
http://209.85.175.104/search?q=cache:TYG2kNjqLp4J:zhidao.baidu.com/question/47554499.html delphi mp3&hl=zh-TW&ct=clnk&cd=29&gl=tw
------
努力會更接近成功
kevin2004
資深會員


發表:18
回覆:463
積分:416
註冊:2005-05-29

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-10-25 06:59:19 IP:61.219.xxx.xxx 未訂閱
看到有人將Delphi與WinAMP聯在一起,真有點手癢,小弟也來綴幾句。
不知道你要作到怎樣的程度,也不知道你對WinAMP熟到如何程度。小弟就一般
提一些所知的,如果有些遺笑大方,還請各方高手海涵笑納。
寫慣了商業軟體,看道妳講到語言學習機或音樂盒的功能及鬧鐘及睡前音樂這
些需求,倒真令人耳目一新。昨天上班看到你這個帖子,就老在想這些有
趣迷人的規格究竟是怎樣的樣子。如果不算太過份的話,可否請妳稍稍描
述一下這個系統的設計目的及可能的市場及可能客戶,好嗎?不情之請,
萬分感謝。
你講的Blob處理及鬧鐘與睡前音樂,這些是Delphi本身的基本功能就可以處理
的很好,這你一定很厲害了,所以應該不是你要問的重點。WinAMP有自己
的SDK以讓人開發WinAMP Plugins,WinAMP還有自己的Forum以讓同好互相
幫忙及分享經驗成果,WinAMP還鼓勵同好上傳分享自己寫好的Plugins。
WinAMP的Plugins大部笨是用C或C 作的,雖然聽說一些人用Delphi或VB等
去玩這個部份,不過我是沒找到這些例子。而且WinAMP-SDK也主要是玩C的
。如果你只是將一些樂曲﹝或其他如語言學習的MP3等﹞由DB-Blob中取出
再交由WinAMP播放,及作定時或重覆N次等控制,那有個簡單的解法,就是
用WinAMP的播放清單檔就可以很簡單作到了。
妳只要用Delphi召喚這個WinAMP.exe 及將這個播放清單檔含路徑的檔名放成參
數餵給WinAMP就可以了。這樣他就可以自動啟動WinAMP及播放它。如果你要
作某些曲子重覆播放N次,那就在播放清單上重覆N次就好了。要定時關掉
WinAMP,就只要另起個stread到時間就作KillTask就可以了。這是最最簡
單的,一點都不用碰WinAMP-SDK的解法。這些簡單的程度比起你講的其他
功能,有天壤之別。我昨天看了妳的帖子一直在想妳講的那些功能,如果
要寫的很有市場,那一定要寫的很Fancy很貼心,才會賣的好。那是很不容
易,很大的工程。
WinAMP播放清單檔是個*.m3u的檔,可以放在任何目錄,不必一定要放在
C:\Program Files\WinAMP\WinAMP.m3u下。它有標準的格式,妳可以參考
WinAMP.m3u就知道。它第一行照寫,接下來一曲MP3是用兩行,第一行是
分秒數及說明,第二行是檔名及位置。
要方便開發及移殖,你可將有關WinAMP相關碼用個物件來包裝它,將建m3u檔及
播放與停止等寫進去。
不曉得你玩WinAMP到何種境界,小弟可能班門弄斧,遺笑大方了。
------
Kevin
kevin2004
資深會員


發表:18
回覆:463
積分:416
註冊:2005-05-29

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-10-27 05:53:47 IP:61.219.xxx.xxx 未訂閱
當然這個物件會包裝一些共通性全域性的東西,如WinAMP開始的時間與預定結束
的時間及多線程等東西,所以應該是個Singleton及要有facadeUnit的架構。
------
Kevin
limary
初階會員


發表:41
回覆:109
積分:30
註冊:2007-01-11

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-10-27 22:58:39 IP:61.219.xxx.xxx 未訂閱
    小妹這兩天照前輩的指示,將這個物件各個功能寫好及包裝成單體的模式,
再三測試,確定可以順利運作。沒想到,規劃及研究了好幾個月的功能與問題,
最後還是靠前輩的提示與寶貴經驗,一下子就突破瓶頸而能順利展開。KTop提攜
後進,造福眾生,功不唐捐。小妹萬分感謝。
limary
初階會員


發表:41
回覆:109
積分:30
註冊:2007-01-11

發送簡訊給我
#6 引用回覆 回覆 發表時間:2008-10-27 23:03:27 IP:61.219.xxx.xxx 未訂閱
    小妹最近整天都在資策會上課,有關Kevin2004前輩指示的系統設計目的規
格等,小妹一等下週課上完就來報告一下。這個系統是寫來自用的,不是商業用
途的。課上完就來報告。
mypigbaby
高階會員


發表:11
回覆:168
積分:155
註冊:2006-07-20

發送簡訊給我
#7 引用回覆 回覆 發表時間:2008-10-28 13:07:05 IP:203.73.xxx.xxx 訂閱
首先期待您的成果^^ 

豬寶寶剛在網路上找至這篇
http://www.freeworld.net.cn/Article/Catalog33/5473.html
希望對您有幫助
系統時間:2024-04-20 17:05:25
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!