2011-03-05 64 views
2

我正在嘗試爲我的WP7製作文本閱讀器。 我在閱讀器中使用mediaElement。 在每次應用程序讀取內容時,MediaPlayer都會停止,因爲後來我發現它是如何設計的。 然後我試圖嘗試和欺騙系統,通過使用WP7使用mediaElement MediaPlayer無間隙音樂

mediaElement1.Stop(); 
mediaElement1.SetSource(isolatedStorageFileStream); 
FrameworkDispatcher.Update(); 
MediaPlayer.Pause(); 
mediaElement1.Play(); 
if (mpState != MediaState.Stopped) 
{ MediaPlayer.Resume(); } 

現在來的怪異的一部分, 當我使用閱讀器一次,它讀取和音樂似乎沒有任何停頓運行,因爲我想,但是當我第二次使用閱讀器時,MediaPlayer停止播放。 當我添加了一些斷點時,我注意到第一次讀取後,MediaPlayer.state暫停,但仍然播放。 我在我的應用程序中有一些媒體播放器,所以我有一些列表框是過濾器,我想讀取選定的文件管理器(藝術家,專輯等)。所以基本上使用閱讀器發生在選定項目改變時。我使用MediaPlayer和MediaElement,因爲如果我不會暫停mediaPlayer,它將停止播放,我將失去播放歌曲的位置。並且因爲我希望讀者玩無縫,所以我正在使用mediaElement。 我迷路了...

+0

只是澄清 - 你究竟想玩什麼,從什麼來源?爲什麼在同一個上下文中調用MediaElement實例和MediaPlayer? – 2011-03-05 20:44:16

+0

「使用讀者」是指什麼?當你做什麼時涉及什麼? – 2011-03-05 22:15:04

+0

@DennisDelimarsky我在我的應用程序中有一些媒體播放器,所以我有一些列表框是過濾器,我想讀取選定的文件管理器(藝術家,專輯等)。 @MattLacey所以基本上使用閱讀器發生在選定的項目發生變化時。我使用MediaPlayer和MediaElement,因爲如果我不會暫停mediaPlayer,它將停止播放,我將失去播放歌曲的位置。並且因爲我希望讀者玩無縫,所以我正在使用mediaElement。 – 2011-03-07 00:09:13

回答

2

嘗試看看這個(音樂+視頻集線器示例)http://go.microsoft.com/fwlink/?LinkID=203588我認爲你已經在使用(使用手機上的媒體庫),但嘗試將它與此結合(Silverlight Sound Sample )http://go.microsoft.com/fwlink/?LinkID=207868,演示如何使用XNA並行播放聲音。

如果你仔細地混合&匹配這兩個例子,你可以實現你想要的,我只是自己試了一下。只需將示例1中需要的所有內容複製到示例2中,它就可以很好地工作:背景音樂播放,鳥兒們愉快地啁啾而不會彼此傷害。

讓我知道你是否有問題。

順便說一下 - 在這裏:http://msdn.microsoft.com/en-us/library/ff431744(v=vs.92).aspx你有許多工作的例子,爲許多不同的事情。我從這個鏈接拿了兩個例子。

Eyal