<안드로이드>개발/안드로이드/App

MediaPlayer

소혼 2010. 6. 17. 17:46
반응형
MediaPlayer mediaPlayer = new MediaPlayer ( );
mediaPlayer.setDataSource("/sdcard/test.3gp");
mediaPlayer.prepare();



# Activity 가 Media volume만 조절하게 하기.
setVolumeControlStream(AudioManager.STREAM_MUSIC);


오류 관련 TIP


1. prepare failed status 0xFFFFFFFC

prepare() 수행중에 해당 에러가 나는 경우가 있다.(IOException의 e.getMessage() 를 출력한 결과)

여러가지 이유때문인 것으로 추정된다.

의심해야 할 항목은 setDataSource가 읽어드린 데이터에 대해 player가 판단하지 못한 경우이다.

1) header가 잘못된 파일을 읽었을 경우

2) 읽어드린 범위가 잘못된 경우 (예컨데 - setDataSource(fd, 0, 0); )

3) 다운로드 파일을 재생하려고 application 폴더 영역을 datasource로 사용한 경우.


나의 경우 2번에 해당했다. 사이즈가 0인걸 뻔히 로그로 찍으면서 원인을 찾느라고 2시간 삽질 ㅠㅠ


반응형