Добрый день, красивые компьютерные люди,
Я, может быть, слишком много спрашиваю, но здесь все кончено.
Я пытаюсь немного сэкономить на разработке это звуковая библиотека .Глядя на файл main.cpp (который я разместил ниже), у него есть два метода: настройка и воспроизведение.Я немного сбит с толку относительно того, как это работает:
Когда вы запускаете проект Xcode, разве не должна быть основная функция, которая вызывается первым методом?Я не вижу этого здесь.
Функция воспроизведения вызывается (потому что я слышу музыку), но она должна быть откуда-то еще, так как в ней нужен аргумент выход .Откуда он может быть вызван?
Чтобы попытаться быть более конкретным, это мой вопрос:
- Если программа не запускаетсяиз основного метода в файле main.cpp, где еще он может начинаться?
#include "maximilian.h"
double outputs[2],moreoutputs[2]; //some track outputs
double filtered, ramped, filtered2;
osc buffertest,ramp;
mix mymix,bobbins;//some panning busses
double env[4]={200,0,0,50};//the kick drum pitch envelope data
double env2[6]={10000,0,9000,5,0,5};//the hi hat pitch envelope dat
envelope b,f;//two envelopers
sample beats;
extern int channels=2;//stereo-must be supported by hardware
extern int buffersize=256;//should be fine for most things
extern int samplerate=44100;//SR must be supported by card. It's always the default
void setup() {//some inits
b.amplitude=env[0];//starting value for envelope b
f.amplitude=env2[0];//same for f
beats.load("/Users/ericbrotto/Desktop/beats.wav");//put a path to a soundfile here. Wav format only.
printf("Summary:\n%s", beats.getSummary());//get info on samples if you like
}
void play(double *output) {//this is where the magic happens. Very slow magic.
filtered2=beats.play(1*(1./34), 0, beats.length());
bobbins.stereo(filtered2, moreoutputs, 0.5);//invert the pan
output[0]=outputs[0]+moreoutputs[0];//stick it in the out!!
output[1]=outputs[1]+moreoutputs[1];
}
Спасибо!