2013年05月24日
/*サンプルプレイバックも他の発振器と同じく、録音された音源をwavetableとしてループ再生します。*/
#include <MozziGuts.h>
#include <Sample.h> // Sample templateを使う
#include <samples/burroughs1_18649_int8.h>
#include <EventDelay.h>
#define CONTROL_RATE 64
Sample<BURROUGHS1_18649_NUM_CELLS, AUDIO_RATE>aSample(BURROUGHS1_18649_DATA);
/* burroughs1_18649_int8.hで代入された配列変数BURROUGHS1_18649_DATAの8bitデータをaSampleという変数に格納する。*/
EventDelay <CONTROL_RATE> kTriggerDelay;
//1サンプルのデータをサンプルの時間長で繰り返すためのトリガー
void setup(){
startMozzi(CONTROL_RATE);
aSample.setFreq((float) BURROUGHS1_18649_SAMPLERATE /(float) BURROUGHS1_18649_NUM_CELLS);
//18649サンプルのデータをMozziのサンプルレート16384で再生されるよう修正
kTriggerDelay.set(1500);
// この音源の場合1500 msecの録音データなので、1.5秒毎にスタートするようトリガー設定
}
void updateControl(){
if(kTriggerDelay.ready()){
aSample.start();
kTriggerDelay.start();
//1.5秒のトリガーでサンプルを再生
}
}
int updateAudio(){
return aSample.next();
}
void loop(){
audioHook();
}
#include <MozziGuts.h>
#include <Sample.h> // Sample templateを使う
#include <samples/burroughs1_18649_int8.h>
#include <EventDelay.h>
#define CONTROL_RATE 64
Sample<BURROUGHS1_18649_NUM_CELLS, AUDIO_RATE>aSample(BURROUGHS1_18649_DATA);
/* burroughs1_18649_int8.hで代入された配列変数BURROUGHS1_18649_DATAの8bitデータをaSampleという変数に格納する。*/
EventDelay <CONTROL_RATE> kTriggerDelay;
//1サンプルのデータをサンプルの時間長で繰り返すためのトリガー
void setup(){
startMozzi(CONTROL_RATE);
aSample.setFreq((float) BURROUGHS1_18649_SAMPLERATE /(float) BURROUGHS1_18649_NUM_CELLS);
//18649サンプルのデータをMozziのサンプルレート16384で再生されるよう修正
kTriggerDelay.set(1500);
// この音源の場合1500 msecの録音データなので、1.5秒毎にスタートするようトリガー設定
}
void updateControl(){
if(kTriggerDelay.ready()){
aSample.start();
kTriggerDelay.start();
//1.5秒のトリガーでサンプルを再生
}
}
int updateAudio(){
return aSample.next();
}
void loop(){
audioHook();
}