Я сделал видеоплеер с видом на поверхность и медиаплеер. У меня есть 10 видеороликов и 10 кнопок. если щелкнуть по каждой кнопке, воспроизводятся все видеоролики.
вот мой код..
//onCreate
holder = surfaceview.getHolder();
holder.addCallback(this);
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
//Button1
if(mp == null)mp = new MediaPlayer();
mp.setDataSource(mediaplay_path);
mp.setDisplay(holder);
mp.setScreenOnWhilePlaying(true);
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.prepare();
mp.start();
//Button2
if(mp != null){
mp.stop();
mp.reset();
}
mp.setDataSource(mediaplay_path2);
mp.setDisplay(holder);
mp.setScreenOnWhilePlaying(true);
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.prepare();
mp.start();
//Button3~Button10 is same as Button2..
все в порядке. мой пользовательский видеовизор работает нормально. но когда видео переходит к следующему, последний эпизод предыдущего видео остается на некоторое время и переходит к следующей видеосессии.
Я думаю, потому что предыдущий обзор поверхности должен быть ясным до того, как начнется следующее видео. но я понятия не имею, как очистить поверхность или держатель поверхности.
Я искал это, но мог только найти, как воспроизвести видео, а не как очистить представление о поверхности, которое устанавливает отказ от медиапланера.
пожалуйста, помогите мне ~~!