2010-11-30 50 views
1

我試圖讓一些wp7應用程序應該從服務器播放視頻。 該應用程序的其中一項功能是下載選定的視頻並從獨立存儲中播放。從wp7的孤立存儲流視頻

我用下面的代碼下載:

WebClient wc = new WebClient(); 
wc.OpenReadCompleted += (s, a) => { /* saving result stream to isolated storage */} 
wc.OpenReadAsync(fileUri); 

所以,當我點擊播放按鈕,我檢查,如果文件被下載或沒有,如果這是我打開IsolatedStorageFileStream該文件和設置它給玩家的來源,否則我設置爲源文件Uri。

問題是當我試圖將IsolatedStorageFileStream設置爲MedialElement的源時,我得到MediaFailed異常。有人可以幫我嗎?

代碼看起來像在明年方式

private IsolatedStorageFile isf; 
private IsolatedStorageFileStream stream; 

private void playButton_Click(..) 
{ 
isf = IsolatedStorageFile.GetUserStoreForApplication(); 
stream = isf.OpenFile(path, FileMode.Open); 
MediaPlayer.SetSource(stream); 
MediaPlayer.Play(); 
} 

流沒有被破壞,它的長度是正確的。我真的不知道該怎麼辦。 在此先感謝

+1

不是解決您的問題的方法,但是一旦您解決了此問題,請注意:在非WP Silverlight中存在一個錯誤,使得從非UI線程讀取IsolatedStorage非常緩慢(並且肯定會影響您的方案) 。在WP7中可能存在同樣的問題 – 2010-11-30 13:18:37

回答

2

我已經找到解決方案,這是很奇怪的,但工程

的問題是,我保存的名字%clipId%.clip文件,但是當我改變文件名%clipId%。 MP4(我的剪輯編碼在MP4)它變得工作!

不明白爲什麼是這樣。

2

媒體播放器查看文件名以檢查它是否支持格式。 「.clip」是無效的格式。