Processingでサウンドデータを扱う際に使われるサウンドライブラリminimを使ってみましょう。
サウンドファイルの再生
はじめに、サウンドファイルを再生するコードを作成してみましょう。
再生するサウンドファイルはmp3形式とします。フリー素材などをダウンロードしてファイル名をsound.mp3としましょう。
SketchメニューからAdd File…メニューを選択しsound.mp3をdataフォルダに読み込んでおきます。
それでは以下のコードを記述してみましょう。
import ddf.minim.*;
Minim minim;
AudioPlayer sound;
void setup(){
size(400, 400);
minim = new Minim(this);
sound = minim.loadFile("sound.mp3");
sound.play();
}
void draw(){
background(0);
}
void stop(){
sound.close();
minim.stop();
super.stop();
}
このコードではimport ddf.minim.*;の行でサウンドライブラリminimを呼び出しています。Minim型変数のminimを宣言し、AudioPlayer でサウンドファイルを格納する変数soundを宣言します。sound = minim.loadFile(“sound.mp3”);の行でサウンドファイルsound.mp3を読み込み、sound.play();でサウンドファイルを再生しています。またプログラム終了時にサウンドファイルの再生を止めるため、void stop(){ 〜 }を記述しておきます。
サウンドファイルの巻き戻し
サウンドファイルを巻き戻すことで再生したサウンドファイルを何度も再生することができます。以下のコードを記述してみましょう。
import ddf.minim.*;
Minim minim;
AudioPlayer sound;
void setup()
{
size(400, 400);
minim = new Minim(this);
sound = minim.loadFile("sound.mp3");
fill(0, 255, 0);
}
void draw()
{
background(255);
}
void stop()
{
sound.close();
minim.stop();
super.stop();
}
void mousePressed() {
sound.play();
sound.rewind();
}
このコードではsound.play();の行でサウンドファイルを再生した後に、sound.rewind();でサウンドファイルを巻き戻すことでマウスを画面上でクリックするごとにサウンドファイルを無限に再生させています。