2012-10-09 72 views

回答

3

MediaElement是一個位於可視化樹內的控件(這意味着您需要將它放在您的頁面的某個位置,即使它已隱藏,否則它將無法播放)。您可以從獨立存儲,XAP文件或網絡中流式傳輸歌曲。支持的文件類型可以看到here

SoundEffect是一個XNA組件,通常用於循環播放背景音樂或槍聲。這與MediaElement類似,因爲它不會更改用戶的MediaPlayer設置,但MediaElementSoundEffect之間的差異在於您可以同時播放多個SoundEffects,而在頁面上只能有一個MediaElement控件。另外,我相信只支持WAV文件。即使它是XNA組件,它也是can be used in Silverlight

MediaPlayer是系統級玩家。這是當您從Music and Video Hub播放曲目時使用的曲目,以及您按下手機的音量按鈕時所控制的曲目,並看到Universal Volume Control(播放,暫停,下一個和上一個按鈕下的疊加)。如果用戶當前正在收聽曲目並且他們運行的應用程序佔用MediaPlayer,則用戶的曲目將停止並替換爲您的曲目。

BackgroundAudioPlayer旨在讓用戶離開您的應用,但繼續播放您的應用的音樂。這是主要音樂播放器所做的,這就是爲什麼您可以關閉Music and Video hub,但仍然繼續播放音樂。

你使用什麼取決於你的應用程序是什麼,你需要什麼。沒有適合所有人的建議。此外,您應該閱讀應用指南,以確保您的應用不會使用市場提交失敗的音頻。

+0

謝謝,所有這些類都依賴於Zune Media Queue嗎? MediaPlayer會在BackgroundAudioPlayer這樣的背景中播放音樂嗎? – onmyway133

+0

自己使用MediaPlayer不會讓你在後臺播放音樂,你仍然需要使用'BackgroundAudioPlayer'。 – keyboardP

+0

是否可以同時播放兩個mp3? – l33t