2011-09-08 85 views
1

我的要求是: - 播放MP3文件上按一下按鈕 - 提供了一個選項,以尋求一個特定的時間需要幫助在.NET應用程序中播放mp3文件?

幾乎所有我來通過教程/資源,用於「.WAV」文件播放的聲音。但我需要在應用程序中播放「.mp3」文件,最好不使用任何第三方庫(NAudio,BASS等)。我期望,它可以使用System.Media命名空間的可用類來完成。

.wav文件和.mp3文件有什麼區別?它們是以不同的方式編碼的,需要播放不同的媒體插件?

因此,任何關於mp3文件的幫助將不勝感激。謝謝。

+1

一個WAV文件是一個未壓縮的音頻文件,你可以提到它大於MP3文件的大小,其中MP3(通常與MPEG-2或MPEG視頻流相關)是壓縮音頻文件(來自運動圖像專家的算法組)。所以我不認爲有過濾器和/或類集成到Windows SDK可以爲你做這個。如果你希望你可以使用Windows Media Player Control for C#播放這個文件。 – Burimi

回答

2

我不相信System.Media支持MP3文件。假設您正在使用Windows,可能的方法是使用Windows Media Player API,方法是在「添加引用」對話框中向「Windows Media Player」添加COM引用。然後添加一個using指令:

using MP = MediaPlayer; 

,然後實例化類:通過調用

MP.MediaPlayer mediaPlayer = new MP.MediaPlayer(); 

然後,您可以播放音樂文件:

mediaPlayer.Open("filename.mp3"); 

這種開放式的方法似乎是自動播放媒體文件一旦打開,但有明確的Play()Stop()等方法,您可以使用自定義此行爲以滿足您的喜好。

XNA框架還具有播放音樂文件的功能,因爲某些令人討厭的原因,不允許使用空格來包含空格,所以我建議您使用Windows Media Player API(如果這是打算在PC上使用的)。

我希望這已經把你放在正確的方向!

+0

遵循相同的邏輯,還有免費的[低音](http://www.un4seen.com/)播放器與[Bass.Net](http://www.bass.radio42.com/)包裝是免費的用於非商業用途。 (註冊是免費的,被[MediaPortal](http://team-mediaportal.com)等開放源代碼項目所使用(編輯:剛剛看到問題的部分內容,沒有第三個庫......) – Joshua

+1

最後, NAudio對我來說是更好更合適的解決方案!!!它是一個非常棒的音頻庫! – MrClan