안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
몇일 째 고민하고 있는 부분인데.. 다른 분들은 어떻게 개발하시는 문의드립니다.
2.3버전부터는 MediaPlayer로 간단히 재생이 되지만, 2.3버전 이하에서는 동작하는 mp3가 있고 그렇게 않은 것들이 있더군요.
(현재 2.1으로 테스트중..)
그래서.
mp3 파일을 pcm으로 decoding 하고, pcm을 AudioTrack으로 재생하려고 합니다.
pcm decoder는 JLayer를 사용하고 있습니다.
하지만 performance가 나질 않네요. 이런 방법을 사용하는 게 맞는지 다른 분들은 어떻게 하시는 지 궁금하네요.
아니면, 개선할 수 있는 방법이나.. 고수님들의 조언 구해봅니다.
ByteArrayOutputStream outStream = new ByteArrayOutputStream(1024);
Bitstream bitstream = new Bitstream(new FileInputStream(file));
Decoder decoder = new Decoder(); // JLayer Library
.. 생략 ..
while (isLoop) {
...
frameHeader = bitstream.readFrame();
SampleBuffer output = (SampleBuffer) decoder.decodeFrame(frameHeader, bitstream);
...
}
.. 생략 ..
return outStream.toByteArray();