안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요..
SurfaceView로 커스텀비디오뷰를 만들었는데요..
비디오를 재생하는것은 문제가없는데, 비디오를 다음비디오로 넘길때 이전의 비디오가 잠깐나왔다가 다음 비디오로 넘어가는 현상이 있더라구요..
만일 비디오 10개가있다면, 버튼을 누를때마다 다음 비디오로 넘어가게 만들려고한다면..
처음 비디오를 반쯤봤다가 다음으로 넘기면 까만배경에 로딩화면을 거쳐 다음비디오가 준비되면 로딩을 없애주고 다음비디오를 바로 실행하고 있는데요..
다음 비디오를 실행하게되면 이전 비디오의 마지막부분이 한 0.5초정도 보였다가 다음비디오가 실행이 되거든요..
이전비디오에서 다음비디오로 넘어갈때 이전 SurfaceView나 SurfaceHolder를 remove나 clear를 해줘야할 것 같은데
초기화 하는 방법을 찾기가 힘드네요;
아래 간단하게 코딩한거 보시고 SurfaceView clear 하는 방법 아시는분 좀 알려주세요~~!!
//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..