ビデオプレーヤーアプリケーションに取り組んでいます。ネイティブビデオビューで。mp4ビデオを再生します。私はnot to playvideo using rlです。エラーが発生していますこのビデオは再生できませんまた、ネイティブビデオビューではできませんからダウンロードしたビデオを再生です。
ビデオビューでビデオを再生するための私のコード:
String mUrl = "http://www.servername.com/projects/projectname/videos/1361439400.mp4";
VideoView mVideoView = (VideoView)findViewById(R.id.videoview)
videoMediaController = new MediaController(this);
mVideoView.setVideoPath(mUrl);
videoMediaController.setMediaPlayer(mVideoView);
mVideoView.setMediaController(videoMediaController);
mVideoView.requestFocus();
mVideoView.start();
アイデアを共有してください。
ありがとう。
最後にそれは私のために動作します。
private VideoView videoView;
videoView = (VideoView) findViewById(R.id.videoView);
Uri video = Uri.parse("http://www.servername.com/projects/projectname/videos/1361439400.mp4");
videoView.setVideoURI(video);
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.setLooping(true);
videoView.start();
}
});
これが他の人に役立つことを願っています。
MP4は単なるコンテナーです。MP4内のビデオとオーディオのストリームは、両方とも異なる形式でエンコードされます。
Androidはネイティブで特定の種類の形式のみをサポートします。 これはここのリストです。
ビデオとオーディオのエンコードタイプがサポートされていることを確認してください。 「mp4」と表示されているからといって、自動的に再生可能になるわけではありません。
次のように使用します:
Uri uri = Uri.parse(URL); //Declare your url here.
VideoView mVideoView = (VideoView)findViewById(R.id.videoview)
mVideoView.setMediaController(new MediaController(this));
mVideoView.setVideoURI(uri);
mVideoView.requestFocus();
mVideoView.start();
別の方法:
String LINK = "type_here_the_link";
VideoView mVideoView = (VideoView) findViewById(R.id.videoview);
MediaController mc = new MediaController(this);
mc.setAnchorView(videoView);
mc.setMediaPlayer(videoView);
Uri video = Uri.parse(LINK);
mVideoView.setMediaController(mc);
mVideoView.setVideoURI(video);
mVideoView.start();
このエラーが発生している場合は、 クライアント側でファイルを開けませんでした。Androidでサーバー側のエラーを試行しています 。また、 これを参照 。これで解決策が得られることを願っています。
レンダリングしているビデオの形式を確認してください。 APIレベル11からmp4形式のレンダリングが開始され、形式はmp4(H.264)でなければなりません
私は同じ問題に遭遇しました。フォーマットをヒットする前にビデオを多くのフォーマットに変換しなければなりませんでした:ビデオをmp4に変換するためにトータルビデオコンバーターを使用してください。それは魅力のように機能します。
私はそれが問題かどうかわかりませんが、私のために働いたのは、mVideoView.start();
inside the mVideoView.setOnPreparedListener
イベントコールバック。
例えば:
Uri uriVideo = Uri.parse(<your link here>);
MediaController mediaController = new MediaController(mContext);
mediaController.setAnchorView(mVideoView);
mVideoView.setMediaController(mediaController);
mVideoView.setVideoURI(uriVideo);
mVideoView.requestFocus();
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener()
{
@Override
public void onPrepared(MediaPlayer mp)
{
mVideoViewPeekItem.start();
}
});