티스토리 뷰

Audio Play

 Android 에서 mp3 와 같은 오디오 파일을 재생 해야 할 상황이 있는데요. 이럴때 오디오 파일을 어떻게 읽어들이고 또 재생을 시키는 지 한번 알아보겠습니다. 코드는 아래와 같습니다.


 파일의 경로를 받아서 sample.mp3 라는 파일에 byte로 데이터를 복사하여 MediaPlayer를 통해서 재생을 시키는 형식 입니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 public void playAudio(String path) {     //오디오 재생 메소드
        try {
            File Mytemp = File.createTempFile("sample""mp3", getCacheDir());  //Make a file to play audio file
            Mytemp.deleteOnExit();
            File file = new File(path);
            int size = (int) file.length();
            byte[] bytes = new byte[size];
            BufferedInputStream buf = new BufferedInputStream(new FileInputStream(file));
            buf.read(bytes, 0, bytes.length);
            buf.close();
 
            FileOutputStream fos = new FileOutputStream(Mytemp);
            fos.write(bytes);
            fos.close();
 
            MediaPlayer mediaPlayer = new MediaPlayer();
 
            FileInputStream MyFile = new FileInputStream(Mytemp);
            mediaPlayer.setDataSource(MyFile.getFD());
 
            mediaPlayer.prepare();
            mediaPlayer.start();
 
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
cs


반응형
댓글