728x90

안드로이드 프로그래밍 시 사운드를 재생하는 방법에는 크게 2가지가 있다.

안드로이드의 Mediaplayer를 이용하는 방법, SoundPool을 이용하는 방법이 바로 그것이다.

몇 일 전, 프로그램에 배경음악 및 효과음을 넣는 방법을 알고 싶었다.

사용법을 알기 위해 이곳 저곳 돌아다녀봤지만

이렇게 간단한 것임에도 불구하고 뭘 그렇게 어렵게 써놨는지 이해할 수 없음이다.

방법은 몇 개고, 이렇게 쓰면 된다! 하고 딱 간단명료하게 말해줄 수는 없는가?

암튼 그건 그렇고 이 글에서는 제목에서도 볼 수 있듯이

'배경음악 재생하기' 대해 설명하겠다.

위의 두 가지 방법 중 어떤 것을 이용해도 상관없으나

많은 사람들의 의견을 보아하니 배경음악과 같은 사운드를 재생 시에는

Mediaplayer를 이용하는 방법이 더 좋다고 한다.

그러므로 본 글에서는 Mediaplayer를 이용하여 배경음악을

프로그램에 넣는 법을 간단하게 핵심만 알아보겠다.

※ 주의사항

자신의 프로젝트 res폴더 밑에 raw폴더를 생성하고 그 밑에 음악 파일을 넣어주자.

wav, mp3등의 파일도 재생이 가능하긴 하지만 되도록이면 OGG파일로 변환하여 넣어주는 것이 좋다.

wav와 같은 경우는 너무 용량이 크고, mp3 형식의 경우는 자잘한 오류가 발생한다고 한다.

(raw가 아닌 다른 이름도 상관없지만 암묵적으로 사운드 파일 리소스 폴더 이름은 raw로 사용하는 듯하다)

아래는 소스코드이다. 본인은 jazz라는 이름의 음악파일을 배경음악으로 지정하였고

setLooping을 통해 무한 반복되게 설정해놓았다.

마지막 줄에 보면 start를 이용하여 배경음악 재생을 시작하는 것을 알 수 있다.

굉장히 심플하기 때문에 누구나 소스코드를 보고 이해할 수 있을 것이라 생각한다.

package jess.music;

import android.app.Activity;

import android.media.MediaPlayer;

import android.os.Bundle;

public class MusicActivity extends Activity {

private static MediaPlayer mp;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

mp = MediaPlayer.create(this, R.raw.jazz);

mp.setLooping(true);

mp.start();

}

}

728x90

'JAVA' 카테고리의 다른 글

Cannot get a connection, pool exhausted  (0) 2012.07.29
실행할 SQL 문은 비어 있거나 널일 수 없음  (0) 2012.07.29
struts 한글 깨짐  (0) 2012.07.29
struts 파일 업로드  (3) 2012.07.29
자바에서 OS 알아내기  (0) 2012.07.29

+ Recent posts