ORGファイルを直接WAVファイルに変換できるプログラムを作ろうとしています。ORG 形式は、特定の楽器をいつ、どのように演奏するかについての「指示」のリストであり、プログラムがこれらの楽器を演奏して曲を作成するという意味で、MIDI に似ています。
ただし、前述したように、ORG を再生するだけでなく、WAV を直接生成したいと考えています。だから、ある意味では、サウンドを WAV に "再生" したいのです。私は WAV 形式を知っており、生の PCM サンプルからいくつかのファイルを作成しましたが、これはそれほど単純ではありません。
ORG によって生成されるサウンドは、私が持っている WAV サンプルを含む多数のファイルから生成されます。それらはモノラルで、8 ビットのサンプルは 22050Hz で再生する必要があります。それらはすべて 1 秒未満の長さで、最大でも 11KB を超えません。それらをすべて順番に再生するには、サンプルを順番に WAV に入れるだけだと思います。ただし、ORG では最大 16 の異なる楽器を同時に演奏することができ、各楽器の各ノートにはパン (ステレオ サウンドを可能にするバランス) もあるため、それほど単純ではありません。さらに、各 ORG には独自のテンポ (つまり、サウンドを再生できる各ポイント間のミリ秒) があり、一部のサウンドはこのテンポより長くなる場合があります。つまり、同じ楽器の 2 つのサウンドがオーバーラップする可能性があります。たとえば、楽器で音符が演奏され、
状況が明確であることを確認するために、すべてを説明しようと思いました。いずれにせよ、基本的に、ORG (または、必要に応じて MIDI (本質的に同じであるため)) を WAV に変換または「再生」する方法を知りたいと思います。前述したように、各ノートにはパン/バランスがあるため、WAV もステレオである必要があります。
どうしても問題になる場合は、FlashDevelop の ActionScript 3.0 でこれを行う予定です。コードは必要ありません (誰かに作業を依頼することになるため) が、これを正しく行う方法を知りたいだけです。1 つまたは 2 つのアルゴリズムも便利な場合があります。