0

URL を使用して videoView でビデオを開こうとしています。

私が使用するコードは次のとおりです。

public void playVideo(){
String path= "http://s3.amazonaws.com/yendis_development/uploads/container/content/4fd79353c83b7260e6000003/3.mpg";
String path1="http://commonsware.com/misc/test2.3gp";

Uri uri=Uri.parse(path);
VideoView video=(VideoView)findViewById(R.id.video_view);
video.setVideoURI(uri);
video.start();
}

「path1」を使用すると、VideoView でビデオが取得され、正常に再生されます。しかし、「パス」を使用すると、ビデオが表示されず、「申し訳ありませんが、このビデオは再生できません」というダイアログが表示されます。

ビデオがパス (mpg ファイル) ではなく、パス 1 (3gp ファイル) で機能したのはなぜですか? ナビゲーターで path と path1 を開くと、ビデオのテストを見ることができます。これらの 2 つのリンクは、ナビゲーターでは機能しましたが、videoView では機能しませんでした。

パスのとき、logcat で、次のメッセージ (エラー) を受け取りました。

08-11 17:08:47.411: E/MediaPlayer(10064): error (1, -2147483648)
08-11 17:08:47.411: E/MediaPlayer(10064): Error (1,-2147483648)
08-11 17:08:47.411: D/VideoView(10064): Error: 1,-2147483648
4

1 に答える 1

0

mpeg は、さまざまな形式/アルゴリズム/コーデックでビデオを圧縮できますが、サポートされているものとサポートされていないものがあります。3gp は 1 つにすぎず、サポートされています (ただし、形式は非常に貧弱です)。

さまざまなオプションがすべて表示されるビデオを自分でエンコードしてみてください。通常、H264 の mp4 はモバイルで問題なく動作します。

于 2012-08-14T09:34:35.893 に答える