私は自動的にMP3に変換する必要がある400,000のMIDIを持っています。私はMIDIが波形を定義していないことを知っています。MIDIをDAWにインポートしてシンセを個々のトラックにマッピングできるので、これを自動的に行うことも可能です。私はこれを行う方法を探してきました。各MIDIは、ランダムに生成されたシンセを各トラックにマッピングする必要があります。私はSoundFontを見てきましたが、それらを作成する方法や、自動的に生成する方法やMIDIに自動的に適用する方法はわかりません。誰でもMIDIトラックにマッピングできるシンセを作成するためのツールやSDK、またはプログラムでSoundFontを生成して適用する方法について知っていますか?もしそうでなければ、私にこれを可能にするツールに関連する低レベルのステップを誰かが理解していますか?私はこれを成功させるための道具を探しました。私が関わっている部分を理解すれば、これを行うための何かを書くことができたかもしれませんが、私は何を見上げるべきかも知らないでしょう。助けていただければ幸いです。私は、合成を通してサウンドを生成し、サウンドフォントをランダムに選択してmidisに適用することを検討しています。私はそれが望ましい解決策であると思います。私は、私の研究の大部分が私を導いてくれるので、音のフォントについて疑問を抱いていました。答えOK、ここにはいくつかの質問がありますが、それぞれにはそれぞれ難しいものがあります。変換するには、追加のツールが必要です。ここでは良い出発点です。TimidityとLAMEをつなげば、MIDIからSF2を経由してMP3に行くことができます。このスクリプトは、独自のアプリケーションを作成せずにこれを達成する方法を示しています。$file.mp3doneランダム合成ランダムに生成されたシンセに関係するあなたの質問のもう1つの要素は、上記のアプローチによって簡単に対処できません。ようなオーディオ処理フレームワークを見てみることをお勧めしますSTK)。STKはMIDIファイルとサウンド合成を読み込むことができます。オーディオバッファにLAMEを使用してMP3変換できます。Bullock源はい、あなたはそれを行うことができます。インスタンスにデータを書き込むこともできます。なりますので、liblameからlame_encode_buffer_interleaved_ieee_float()にこれを渡すことで、あなたのアプリ。私はそれほど詳細な説明なしでは答えられない。私はあなたのプラットフォーム、コンパイラ、エラーメッセージ、これまでに取られたステップ、最小限のコード例などの詳細を提供する新しい質問を開始することをお勧めします。源STKにはMidiFileIn関数とWvOut関数があるようです。私は合成ツールキットを使用しようとしており、使用しようとしているすべての関数への未定義の参照について不平を言うリンカエラーを取得するだけです。