prepare for file output
This commit is contained in:
parent
4cba677c04
commit
7649b845aa
|
@ -694,37 +694,43 @@ void DivEngine::setView(DivStatusView which) {
|
||||||
view=which;
|
view=which;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DivEngine::init() {
|
bool DivEngine::init(String outName) {
|
||||||
switch (audioEngine) {
|
if (outName!="") {
|
||||||
case DIV_AUDIO_JACK:
|
// init out file
|
||||||
#ifndef HAVE_JACK
|
got.bufsize=2048;
|
||||||
logE("Furnace was not compiled with JACK support!\n");
|
got.rate=44100;
|
||||||
|
} else {
|
||||||
|
switch (audioEngine) {
|
||||||
|
case DIV_AUDIO_JACK:
|
||||||
|
#ifndef HAVE_JACK
|
||||||
|
logE("Furnace was not compiled with JACK support!\n");
|
||||||
|
return false;
|
||||||
|
#else
|
||||||
|
output=new TAAudioJACK;
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
case DIV_AUDIO_SDL:
|
||||||
|
output=new TAAudioSDL;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
logE("invalid audio engine!\n");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
want.bufsize=1024;
|
||||||
|
want.rate=44100;
|
||||||
|
want.fragments=2;
|
||||||
|
want.inChans=0;
|
||||||
|
want.outChans=2;
|
||||||
|
want.outFormat=TA_AUDIO_FORMAT_F32;
|
||||||
|
want.name="Furnace";
|
||||||
|
|
||||||
|
output->setCallback(process,this);
|
||||||
|
|
||||||
|
logI("initializing audio.\n");
|
||||||
|
if (!output->init(want,got)) {
|
||||||
|
logE("error while initializing audio!\n");
|
||||||
return false;
|
return false;
|
||||||
#else
|
}
|
||||||
output=new TAAudioJACK;
|
|
||||||
#endif
|
|
||||||
break;
|
|
||||||
case DIV_AUDIO_SDL:
|
|
||||||
output=new TAAudioSDL;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
logE("invalid audio engine!\n");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
want.bufsize=1024;
|
|
||||||
want.rate=44100;
|
|
||||||
want.fragments=2;
|
|
||||||
want.inChans=0;
|
|
||||||
want.outChans=2;
|
|
||||||
want.outFormat=TA_AUDIO_FORMAT_F32;
|
|
||||||
want.name="Furnace";
|
|
||||||
|
|
||||||
output->setCallback(process,this);
|
|
||||||
|
|
||||||
logI("initializing audio.\n");
|
|
||||||
if (!output->init(want,got)) {
|
|
||||||
logE("error while initializing audio!\n");
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bb[0]=blip_new(32768);
|
bb[0]=blip_new(32768);
|
||||||
|
@ -792,9 +798,13 @@ bool DivEngine::init() {
|
||||||
chan[i].volume=chan[i].volMax;
|
chan[i].volume=chan[i].volMax;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!output->setRun(true)) {
|
if (outName!="") {
|
||||||
logE("error while activating!\n");
|
// render to file
|
||||||
return false;
|
} else {
|
||||||
|
if (!output->setRun(true)) {
|
||||||
|
logE("error while activating!\n");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue