Android 用のギター ダイアグラム アプリを iOS に移植しています。Android には MIDI シンセサイザー (sonivox) が組み込まれているため、MIDI ファイルを生成して Android に再生を処理させることができます。
iOSでこれを行う方法はありますか?または、iOS 用の非常に軽量な組み込み可能なシンセはありますか?
Android 用のギター ダイアグラム アプリを iOS に移植しています。Android には MIDI シンセサイザー (sonivox) が組み込まれているため、MIDI ファイルを生成して Android に再生を処理させることができます。
iOSでこれを行う方法はありますか?または、iOS 用の非常に軽量な組み込み可能なシンセはありますか?
iOS 5 以降、サウンド バンク (Apple プリセットとサウンドフォント) をロードし、MIDI メッセージを介してサンプラー/シンセを制御できる AUSampler オーディオ ユニットが追加されました。
このサンプルアプリを参照してください: https://developer.apple.com/library/ios/#samplecode/LoadPresetDemo/Listings/ReadMe_txt.html
それはうまくいきます!
更新: 私の答えは古くなっています。 @lukebuehlerの答えは非常に適切です。
オープンソース以外のソリューションを気にしない場合は、FMODを試してください。ゲーム用の商用オーディオ エンジンである fmod には、シンプルな MIDI シンセが装備されています。無料評価版を試してみました。iPhone 3G で GM MIDI ファイルを正しく再生します。
必要なものが単なる SMF ファイル プレーヤーではなく、個々の MIDI イベントにリアルタイムで応答できるフル機能の GS/GM ソフトシンセが必要です。CrimsonTech のミディシンセを試すことができます。そのライセンス料は公正です。Crimsontech は、アプリストアでいくつかのデモ アプリを提供しています。また、評価用 SDK も無料で提供しています。アプリを実際に公開するまで、ライセンスに 1 円も支払う必要はありません。
iOS 4.2でのMIDIサポートでは、電話自体からMIDIデータを再生できるとは思いません。他のMIDIデバイスとMIDIコマンドを送受信するためだけのものです。
最近のiOS4.2のドキュメントから、MIDIサポートを使用してMIDIコマンドを他のデバイスに送信して再生できるようです。他のデバイスからコマンドを受信してこれらのコマンドを変更したり、ファイルに保存したりすることもできます。しかし、実際に携帯電話から直接MIDIファイルを再生するためのサポートが見つかりません。私が間違っている場合は誰かが私を訂正してください(私が間違っているといいのですが!!)。
iOS 4.2 では MIDI がサポートされています。OS X が提供するものと同じであれば、基本的なシンセも含まれます。見てみな。