Posted at

Processingライブラリminimを使ってカノンができるアプリを作ってみた

More than 3 years have passed since last update.


目的

カエルの合唱みたいなことが一人でもできるアプリの作成


ライブラリの追加

minim公式に行ってProcessingのライブラリをDLする。

そしてDLしたものをProcessingのライブラリフォルダに追加(デフォルトだと書籍フォルダの中にある)してProcessingを再起動


コード


Processing.pde

import pitaru.sonia_v2_9.*;

import ddf.minim.spi.*;
import ddf.minim.signals.*;
import ddf.minim.*;
import ddf.minim.analysis.*;
import ddf.minim.ugens.*;
import ddf.minim.effects.*;

Integer Interval = 5;
Minim minim;
AudioInput in;
AudioRecorder recorder;
AudioPlayer player;
ArrayList<AudioPlayer> playList = new ArrayList<AudioPlayer>();

void setup(){
size(512,512);
minim = new Minim(this);

in = minim.getLineIn(Minim.STEREO, 512);
Sonia.start(this);
recorder = minim.createRecorder(in, "hoge.wav", true);
frameRate(1);
}

void draw(){
if(frameCount%Interval == 0){
if(recorder.isRecording()){
recorder.endRecord();
recorder.save();
player = minim.loadFile("sound" + (frameCount/Interval-1) + ".wav");
playList.add(player);
playList.get(playList.size()-1).loop();
}

recorder = minim.createRecorder(in, "sound" + frameCount/Interval + ".wav", true);
recorder.beginRecord();
}
}



解説

AudioRecorderを使用して5秒間隔で音楽を録音して、録音した音楽をLoopで再生するだけ。


参考

公式API

サウンドの基本(minimライブラリの使用) | Yasushi Noguchi Class