我正在开发的应用程序包含许多短(1-2秒)视频。
视频将在一个活动中显示。用户可以重放视频(可能在播放视频时)或更改实际视频。
代码更改视频的一部分:
String videoPath = getVideoPath();
videoView.setVideoPath(videoPath);
videoView.start();这3行已经导致应用程序加载新视频并播放它。
视频完成后开始出现问题。从这一点来看,加载新的视频会导致许多问题(比如有时对于半部电影,只有声音被播放,而屏幕是黑色空白的)。在重放视频时也有类似的问题(我最终从上面调用了3个通道)。
它看起来像是android在完成电影发布资源或类似的东西(这就是为什么我设置相同的路径,当我想要重放视频时)。
理想情况下,我希望视频在完成播放后可以简单地暂停并停止电影(但我不能在OnCompletedListener中做到这一点,因为它已经将状态更改为seekTo ...)。
我能以某种方式实现这一点吗?(这里我指的是在完成视频暂停后的->和开始时的seekTo )
我已经尝试了暂停视频的所有组合,暂停它们,设置OnPreparedListener,设置OnCompletedListener。
谢谢!
发布于 2012-12-20 23:50:33
试试像这样的东西
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer arg0) {
mVideoView.start();
}
});
mVideoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
mp.reset();
mVideoView.setVideoPath(file.getAbsolutePath());
mVideoView.start();
}
});发布于 2015-02-08 23:05:51
停止播放、更改视频路径、启动视频
videoView.stopPlayback();
videoView.setVideoPath(newVideoPath);
videoView.start();发布于 2012-12-21 17:21:14
我以如下方式重构了我的代码:每次我需要新的视频时,我都会重新加载整个活动。它在大多数情况下都是有效的,但现在在播放开始时视频变黑了,有时我会得到“无法打开媒体文件”的错误。
是不是跟android的资源管理有关?我在onCompletionListener中发布mediaPlayer。
有没有人在播放许多外部存储的视频时遇到过这样的问题?
https://stackoverflow.com/questions/13975108
复制相似问题