2013年4月10日水曜日

SE(効果音)を再生する

MediaPlayerを使ってSEを再生する方法

2つに分けて説明します。
  • SoundPoolを使うクラスの準備
  • 再生方法(クラスの使用方法)

SoundPoolを使うクラスの準備

再生する音源を準備
ここでは便宜上"se.ogg"とします。

res\rawフォルダを作成し、音源を入れる
以下のようなクラスを用意(SePlayerクラス)
import android.content.Context;
import android.media.AudioManager;
import android.media.SoundPool;

public class SePlayer
{
 private SoundPool soundPool;

 private int se;// 読み込んだ効果音


 public SePlayer(Context context)
 {
  // new SoundPool(読み込むファイル数,読み込む種類,読み込む質)
  this.soundPool = new SoundPool(1, AudioManager.STREAM_MUSIC, 0);

  // load(コンテキスト,読み込むリソースID,音の優先度)
  this.se = soundPool.load(context, R.raw.se, 1);
 }

 public void playSe()
 {
  // play(再生するサウンドID,左のボリューム,右のボリューム,優先度,ループ回数(0はしない、-1は無限),再生レート)
  soundPool.play(se, 1.0f, 1.0f, 1, 0, 1.0f);
 }
}

再生方法(クラスの使用方法)

下記のように呼び出します。

//プレイヤーの初期化
SePlayer se= new SePlayer(this);

//SEの再生
se.playSe();
SEは使いまわすことが多いだろうから初期化は一回だけにしてね。

以上。


関連ページ:
  • BGMを再生する

スポンサーリンク

Related Posts Plugin for WordPress, Blogger...