3

サウンドフォントが割り当てられた MIDI シーケンスを .wav ファイルとしてエクスポートできますか? もしそうなら、誰かが私を正しい方向に向けることができますか?

私は現在MIKMIDIを使用していますが、これまでのところ、それを行う例には遭遇していません。

4

1 に答える 1

2

MIKMIDI には、ほとんどを自分で実装せずにこれを行う機能は含まれていません。とは言え、可能です。基本的に、MIDI シンセサイザー ユニットを含む独自の Core Audio グラフを作成する必要があります。AudioTimeStamp次に、インストルメント ユニットのレンダリング コールバックで、 を使用して計算されたタイムスタンプとレンダリング コールバックに渡されたフレーム数に基づいて、MIKMIDISequence からイベントを引き出します。を使用して、これらをインストゥルメント ユニットに再生しMusicDeviceMIDIEvent()ます。

合成された出力を取得する方法も必要です。これを行うには、汎用出力を AU グラフに追加し、レンダー コールバックを追加します。次に、そのレンダー コールバックで、渡された を取得しAudioBufferListてファイルに書き出します (例: を使用ExtAudioFileWrite())。

これを行い、MIKMIDI を使用する小さなプロジェクトがありますが、公開できないコードが含まれています。クリーンアップして、ある時点でサンプル コードとして公開できるかどうかを確認します。編集: ここで言及したプロジェクトはクリーンアップされ、MIKMIDI のサンプル プロジェクトとして含まれるようになりました。ここを参照してください。

また、MIKMIDI でこれをより適切にサポートするために、API または機能強化の要求を提出することを検討することもできます。

于 2015-12-17T19:01:24.157 に答える