사운드 SoundPool 예제
프로그래밍/Android (Java)2018. 12. 24. 11:09
반응형
1. 사운드 파일 준비하여 res 폴더 및에 별도의 폴더 만들어서 위치 : 예제에서는 raw 폴더를 만들어서 넣습니다. (일반적으로 폴더에 리소스 파일을 넣는 방법은 '복사' 한다음에 해당 폴더에 '붙여넣기' 하는 방법이 가장 무난 합니다.
2. SoundPool 객체 생성
3. SoundPool.load() 로 사운드 리소스 파일 id 준비
4. SoundPool.play() 로 재생시작
MainActivity.java
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 29 30 31 32 | public class MainActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button b = (Button)findViewById(R.id.button1); final SoundPool sp = new SoundPool(1, // 최대 음악파일의 개수 AudioManager.STREAM_MUSIC, // 스트림 타입 0); // 음질 - 기본값:0 // 각각의 재생하고자하는 음악을 미리 준비한다 final int soundID = sp.load(this, // 현재 화면의 제어권자 R.raw.gun, // 음악 파일 1); // 우선순위 b.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { sp.play(soundID, // 준비한 soundID 1, // 왼쪽 볼륨 float 0.0(작은소리)~1.0(큰소리) 1, // 오른쪽볼륨 float 0, // 우선순위 int 0, // 반복회수 int -1:무한반복, 0:반복안함 0.5f); // 재생속도 float 0.5(절반속도)~2.0(2배속) // 음악 재생 } }); } // end of onCreate } | cs |
실행화면]
[시작]버튼을 누르면 미디어 연주가 시작됩니다.
출처: http://bitsoul.tistory.com/31 [Happy Programmer~]
반응형
'프로그래밍 > Android (Java)' 카테고리의 다른 글
버튼 이벤트 강제 발생 시키기 (0) | 2019.01.26 |
---|---|
몇 초 멈추게 하기 (0) | 2018.12.27 |
Android Studio 에서 NanoHttpd 테스트 (어플에서 웹서비스 하기) (0) | 2018.10.01 |
videoview (MediaController) 에서 하단 컨트롤러 사용하지 않기 (숨기기) (0) | 2018.08.30 |
ThemeDialog 인 Activity의 사이즈 조절 (activity 를 dialog 처럼 띄울때 사이즈 조절하기) (0) | 2018.08.30 |
댓글()