반응형
안녕하세요 돼지왕 왕돼지입니다.
오늘은 SoundPool( 사운드 풀 )에 대해 알아보겠습니다.
Sound Pool (사운드 풀 )이 뭔가요?
Sound ( 소리 ) + Pool ( 풀장 ). 즉, 소리를 모아놓은 녀석이라고 보시면 되겠습니다. 소리를 미리 로드해서 풀장에 저장해놓고, 필요할때마다 바로 쓸 수 있는 것이죠. 메모리 관리 측면에서 용량이 큰 mp3 파일들 보다는 비프음, 경고음 등의 간단한 소리를 저장할 때 주로 사용됩니다. 게임같은 곳에서 반복적으로 나는 소리에 대해서도 많이 사용하죠. 매번 로드하려고 하면 시간도 오래걸리고 메모리를 효율적으로 사용하는 것이 아니니 말이죠.
API 랑 예제
<APIs>
SoundPool (int maxStreams, int streamType, int secQuality)
-> maxStreams : 최대 스트림 개수
-> streamType : 보통 STREAM_MUSIC
-> secQuality : 샘플링 품질
int load (Context context, int resId, int priority)
int load (String path, int priority)
-> return되는 int값은 고유 식별자
-> priority : 재생 우선순위 (default는 1)
int play(int soundID, float leftVolume, float rightVolume, int priority, int loop, float rate)
-> soundID : load가 리턴한 int 식별자
-> Volume : 0이 가장 작은 소리, 1이 가장 큰 소리
-> loop : 반복 모드, 지정값 +1회 반복(0이면 1회). -1이면 무한 반복
-> rate : 1-정상속도, 0.5-절반속도, 2-2배속
<example>
SoundPool pool = new SoundPool(1, AudioManager.STREAM_MUSIC, 0);
int ding = pool.load(this, R.raw.ding, 1);
pool.play(ding, 1, 1, 0, 0, 1);
로그인 없이 추천 가능합니다. 손가락 꾸욱~
반응형
'프로그래밍 놀이터 > 안드로이드, Java' 카테고리의 다른 글
[Android/안드로이드] Menu 에 대한 모든 것 ( OptionMenu, ContextMenu, Check Menu ) (0) | 2012.02.28 |
---|---|
[Android/안드로이드] Event Handling ( 이벤트 처리 )의 우선 순위 (0) | 2012.02.28 |
[Android/안드로이드] Canvas 에 Path 를 그려보자. (0) | 2012.02.28 |
[Android/안드로이드] Canvas ( 혹은 Bitmap ) 에 Text 출력하기. (0) | 2012.02.28 |
[Android/안드로이드] Paint 관련 함수들. (0) | 2012.02.27 |
댓글