안드로이드
안드로이드 미디어플레이어로 배경음악 재생 및 볼륨 조절 하기
아스키의 공부방
2020. 7. 10. 08:42
728x90
반응형
우선 리소스폴더내에 raw폴더를 만들고 원하는 배경음악을 넣어줍니다.
저는 파일명을 bgm으로 했습니다.
그리고 원하는 구간에 작성해줍니다.
mediaPlayer = MediaPlayer.create(this, R.raw.bgm);
mediaPlayer.start();
mediaPlayer.setLooping(true);
이렇게 하면 음악이 재생됩니다.
반복 재생을 하고 싶다면 setLooping값을 true로 주면 됩니다.
다음은 볼륨 조절입니다.
필요한 xml에 SeekBar을 추가합니다.
그리고 아래와 같이 구성해줍니다.
<SeekBar
android:id="@+id/seekBar_bgm"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:max="50"
android:progress="50" />
레이아웃 구성은 사람마다 다르기 때문에 max값과 progress 값만 원하는대로 변경하시면 됩니다.
그리고 소스는 아래와 같이 구성해주시면 됩니다.
SeekBar seekBar_bgm;
seekBar_bgm.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
bgm_volume = seekBar_bgm.getProgress();
float volume = (float) (1 - (Math.log(50 - seekBar_bgm.getProgress()) / Math.log(50)));
mediaPlayer.setVolume(volume, volume);
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
float volume = (float) (1 - (Math.log(맥스값 - seekBar_bgm.getProgress()) / Math.log(맥스값))); 하시면 됩니다.
728x90
반응형