我有.mp4文件。如果我把它放在存储卡中,android的默认视频播放器可以正常播放。但是,如果我将其上传到网络服务器并尝试通过Android的网络浏览器进行播放,那么就会发出声音:“抱歉,该视频无法用于连接此设备。”
同样的事情是我想通过我的应用程序播放它。我使用了以下代码:
private SurfaceHolder holder;
mPreview = (SurfaceView) findViewById(R.id.surface);
holder = mPreview.getHolder();
holder.addCallback(this);
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
mMediaPlayer = new MediaPlayer();
mMediaPlayer.setDataSource("http://www.languagehostess.com/videos/aka1.mp4");
mMediaPlayer.setDisplay(holder);
mMediaPlayer.prepare();
mMediaPlayer.setOnBufferingUpdateListener(this);
mMediaPlayer.setOnCompletionListener(this);
mMediaPlayer.setOnPreparedListener(this);
mMediaPlayer.setOnVideoSizeChangedListener(this);
mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
它给出了以下错误:
Command PLAYER_INIT completed with an error or info PVMFFailure
该视频或代码有什么问题?
答案 0 :(得分:1)
您需要查看Android Video Encoding Recommandations。确保您的视频使用支持的代码进行编码,并且您的视频会尊重分辨率。我有完全相同的问题,在视频正确编码后,流式化工作。
此外,如果您还没有注意到,通常模拟器不会播放它们,您将不得不在真实设备上进行测试。