2014-02-21 127 views
3

我從資產文件夾和原始文件夾播放視頻時出錯。
MediaPlayer錯誤(1,-2147483648) VideoView錯誤1,-2147483648。android videoview error 1,-2147483648

我從資產文件夾中嘗試過。

private String SrcPath = "file:///android_asset/aaa.mp4"; //also tried aaaa.mp3 
VideoView vv = (VideoView)findViewById(R.id.videoView1); 
vv.setVideoPath(SrcPath); 
MediaController controller = new MediaController(this); 
controller.setAnchorView(vv); 
vv.setMediaController(controller); 
vv.requestFocus(); 
vv.start(); 

和用於生夾i使用URI爲:

Uri video = Uri.parse("android.resource://com.usecontentprovider/raw/aaa.mp4"); 
vv.setVideoURI(video); 

我在這兩種情況下得到了同樣的錯誤消息。

+0

通常是錯誤意味着您的設備不支持您正在播放的視頻格式。 – Kedarnath

+0

我在AVD上運行我的應用程序,並且我嘗試了5-6種不同配置的AVD,但仍然錯誤相同。我們可以在虛擬設備中播放視頻嗎? –

+0

啊......現在試試它在真實的設備上。除非您使用的是未知格式,否則通常不會在實際設備中出現錯誤。 – Kedarnath

回答

1

我找到了解決方案,因爲我可以在虛擬設備上播放視頻。

我取代了線

Uri video = Uri.parse("android.resource://com.usecontentprovider/raw/aaa.mp4"); 

Uri video = Uri.parse("android.resource://com.usecontentprovider/raw/"+R.raw.aaa); 

及其工作

+1

如何從網址 – Prasad

+1

播放,那麼R.raw.aaa如何與aaa.mp4不同? – hariszaman

+0

@hariszaman'R.raw.aaa'是一個資源ID(一個int),而帶'aaa.mp4'的字符串是一個字符串。 – zundi

1

您可以使用像avinaptic2這樣的軟件來獲取視頻編碼信息,並確保其匹配supported media formats in android

我發現的一個常見問題是視頻編碼錯誤的分析。 H.264視頻需要使用Baseline level 3或under進行編碼,才能在Android中播放而不會出現任何錯誤或工件。