我想知道,如果有方法在Windows Phone中播放媒體文件,但此文件仍在下載?播放媒體文件時,它仍在下載(Windows Phone)
目前,我有一個應用程序的功能,允許下載和播放媒體文件,當他們完全下載。 (我創建了這個功能,使用article)
所以,簡單地說,首先,媒體文件是從URL下載,然後我使用MediaElement的發揮它:
mediaElement.source = isolatedStorageFileStream;
後那我可以通過我的播放器UI使用這個文件。
但是,我更喜歡使這個功能更好 - 允許開始播放文件,而下載仍在進行中。最後,這應該看起來像這樣:開始下載文件,同時開始解密此文件,同時允許播放文件的解密部分。讓我們忘記解密到目前爲止(我已經寫了一個下載文件的方法,它應該稍微改變),主要問題是如何允許兩個並行任務:下載和播放。
第一個問題是:「MediaElement是否只允許將」source「屬性設置爲僅固體(最終下載)的文件,或者它可以在下載過程中使用此Stream? 因爲,我發現了一些信息,即:
「該MediaElement的不支持在此刻流它 負荷整個文件第一它實際上起着之前」
雖然我不太確定,但這個指的是Windows Phone,聽起來很焦慮。
如果不能這樣做,還可以使用什麼來處理媒體文件?我對下載視頻不感興趣,我們只能使用mp3音頻文件進行限制。
眼下,下載過程是這樣實現的:
WebClient webClient = new WebClient();
webClient.DownloadProgressChanged += new DownloadProgressChangedEventHandler(webClient_DownloadProgressChanged);
webClient.OpenReadCompleted += new OpenReadCompletedEventHandler(webClient_OpenReadCompleted);
webClient.OpenReadAsync(new Uri(link));
然後在OpenReadCompleted下載文件流被設置爲媒體文件的來源。
mediaFile.SetSource(isolatedStorageFileStream);
之後我可以使用我的媒體文件。
我有解決我的問題嗎?我在Windows Phone線程和流媒體方面頗爲新穎,不知道如何實現這樣的功能。
P.S.當然,我試圖找到類似的問題,但失敗了。如果你知道的話,請給我一個鏈接。
P.P.S.對不起我的英語不好。