有没有人在iOS上使用MoMu STK成功实现了一个乐器?我有点堆积仪器的流初始化。 我正在使用教程代码,看起来像缺少的东西
RtAudio dac; // Figure out how many bytes in an StkFloat and setup the RtAudio stream. RtAudio::StreamParameters parameters; parameters.deviceId = dac.getDefaultOutputDevice(); parameters.nChannels = 1; RtAudioFormat format = ( sizeof(StkFloat) == 8 ) ? RTAUDIO_FLOAT64 : RTAUDIO_FLOAT32; unsigned int bufferFrames = RT_BUFFER_SIZE; dac.openStream( & parameters, NULL, format, (unsigned int)Stk::sampleRate(), &bufferFrames, &tick, (void *)&data );
错误描述表明输出设备的输出参数无效,但是当我跳过分配设备ID时,它也不能正常工作。 任何想法都会很棒。
答案 0 :(得分:2)
RtAudio仅适用于桌面应用,在iOS上实施时无需打开流。
示例:
标题文件:
#import "Simple.h"
// make struct to hold
struct TickData {
Simple *synth;
};
// Make instance of the struct in @interface=
TickData data;
实施档案:
// init the synth:
data.synth = new Simple();
data.synth->keyOff();
// to trigger note on/off:
data.synth->noteOn(frequency, velocity);
data.synth->noteOff(velocity);
// audio callback method:
for (int i=0; i < FRAMESIZE; i++) {
buffer[i] = data.synth -> tick();
}
答案 1 :(得分:2)
是的,我在商店里有几个应用程序运行STK类。请记住,在iOS上运行STK所需的设置与在桌面上运行STK所需的设置不同。
这是一个关于如何在iOS应用程序中使用STK类的教程: https://arielelkin.github.io/articles/mandolin