2011-11-10 14 views
2

誰もがiOSでMoMu STKを使って楽器を正常に実装しましたか?私はInstrumentのストリームの初期化を少し積み重ねています。 私は、チュートリアルのコードを使用して、出力デバイスの出力パラメータが無効であることを述べている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を割り当てるためにスキップするとき、それは同様に働いていないのです。 いい考えがあります。

答えて

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(); 
} 
2

うん、私はそれら上で実行されているSTKクラスとストア内のアプリケーションのカップルを持っています。 iOS上でSTKを実行するために必要な設定は、デスクトップ上で実行するために必要な設定とは異なることに注意してください。 https://arielelkin.github.io/articles/mandolin

+0

このリンクは私に知らせるための期限切れの – user3717478

+0

おかげのようだ:

はここでiOSアプリ内のSTKクラスを使用する方法についてのチュートリアルです!リンクが更新されました。 – Eric

関連する問題