2011-12-05 105 views
1

我一直在尋找這一個多星期,我還沒有能夠做到這一點。如何從資源文件夾播放本地視頻

我只想播放2秒的視頻作爲我的應用程序的啓動介紹,因此無法使用SD卡和URL流媒體解決方案。我想將mp4視頻文件放在/ res/raw文件夾中(例如),然後播放它,全屏幕,沒有媒體控制器......它應該不那麼難!

我已經編碼我的視頻在http://developer.android.com/guide/appendix/media-formats.html#core

我試過很多不同的解決方案,如下列之一以下Android的建議(我試過甚至數),應該工作:

VideoView videoHolder = (VideoView) this.findViewById(R.id.videoView1); 
    videoHolder.setMediaController(new MediaController(this)); 
    Uri uri = Uri.parse("android.resource://mysite/raw/" + R.raw.intro__video); 
    videoHolder.setVideoURI(uri); 
    videoHolder.start(); 

我試過幾個URI地址,我認爲問題不在那裏。 我試過仿真器1.6,2.1和2.33。我嘗試過三種不同的真實設備。

我不知道現在該做什麼。在StackOverflow中有很多類似的問題,但很少有答案。答案用於將視頻放在SD卡中(對我來說不適合),但大部分線程都未被作者回答,所以我們不知道他是否最終設法做到了這一點。

非常感謝您提前。也許這次我們可以一勞永逸地回答這個問題:-)

編輯 大多數時候設備只是黑色,視頻不播放。 對於一些嘗試的編碼,設備會顯示一個錯誤對話框,指出「此視頻無法播放」。 如果視頻文件本身會成爲問題(我不這麼認爲,因爲我已經嘗試了很多不同的格式,分辨率和編碼),請給我一個證明的視頻文件,這樣我就可以檢查問題只是...

回答

1

我不認爲你正在構建URI。試試這個:

Uri uri = Uri.parse("android.resource://mysite/" + R.raw.intro__video); 

或本:

Uri uri = Uri.parse("android.resource://mysite/raw/intro__video"); 
+0

謝謝回答。我已經嘗試了兩種。什麼都沒發生。當然,文件名是「intro__video.mp4」,但我像往常一樣省略了擴展名。 – thelawnmowerman

+0

哦,男人,多麼尷尬...我從XML佈局設置背景到VideoView,它隱藏播放的視頻。希望這篇技巧能夠幫助未來的人。我給你+1的幫助;-)(哦,我還不行,我需要15聲望,對不起) – thelawnmowerman

+0

@thelawnmowerman - 感謝分享。學習新方法避免搞砸事情總是很好的。 :) –

相關問題