ムーグやDX7などのクラシックシンセサイザーの音を再現するソフトウェアシンセサイザーを書こうとしています。誰かがこのようなもののコードリソースを知っていますか?ありがとう。
12 に答える
そこには非常に多くのC/C ++ライブラリがあり、ほとんどは更新されていません。C#にはそれほど多くはありませんが、私はいくつか見ました。私は実際にそれらのどれも怒りで使ったことがないので、私は何の推薦もすることができません。
私はハーモニーセントラルから始めて、そこで何か役に立つものが見つかるかどうかを確認します。
または、sourceforge.netでアナログシンセサイザーを検索すると、多くの結果が得られます。
スタンフォード大学の CCRMAは、オーディオ ソフトウェアの優れたリソースです。C++ の Synthesis ToolKit (STK)が役に立ちそうです。
ムーグとヤマハDX7は大きく異なります。DX7はFMシンセシスを使用していますが、これは非常に奇妙です。Moogのような通常のVCO/VCA/VCFアナログとは大きく異なります。
長い間、ヤマハはFM特許を擁護するために訴訟を起こしましたが、それらはすべて今では失効していると私は信じています。カシオの位相歪みはヤマハのFMに似ていて、ヤマハの怒りをなんとか回避しました(私が知る限り)。
どちらかを選ぶことから始めます。NordLeadとAccessVirusが登場して以来、Virtual Analog(アナログシンセをエミュレート)は大流行しています。そして、考えるのがはるかに簡単です。だから、ヒップな群衆と一緒に歩きたいのなら、私はそのように行きます。
優れた帯域制限オシレーターから始めて、エンベロープジェネレーターを作成し、フィルターを実行します。インスピレーションを得るために、ウェールズのシンセサイザークックブックをチェックして、2オシレーターシンセであらゆる種類のサウンドを作成する方法を確認してください。まず、これらのパッチに必要な最小限の機能を実装することから始めます。
FMとPDはワイルドです。そのルートに行くと、興味深いサウンドのスペクトルを取得するために、興味深い構成で十分な数のFMオペレーターをチェーン化することがすべてです。警告:FMでエイリアシングを回避するのは大変な作業です。
Synthmaker と SynthEdit が VST コードを生成します。SynthEdit は、コンパイルされていない C++ ソース ファイルを確実に出力し、無料です。
最善の策は、KvR の開発者フォーラムをチェックすることです。彼らは、最高のオープン ソース DSP/合成エンジンと、インスピレーションを得ることができるいくつかのオープン ソース VSTi プラグインの方向性を示すことができます。ただし、すべて C / C++ になります。現時点では、マネージ コードで使用できる最も基本的なオーディオ合成しかありません。
チャックは私が知っている中で最高ですが、C++ではなくC++に似ています。
iPhone アプリの一部として簡単なシンセ ライブラリを作成しました。おそらく、あなたのシンセのニーズにも合うでしょう。おそらくそうではありません。 http://mobilesynth.googlecode.com/svn/trunk/mobilesynth/Classes/synth/
これらのチュートリアル(特にパート 8 以降) では、オシレーター、エンベロープ、フィルター、LFO など、クラシックな減算シンセのすべての部分を C++ でプログラミングする方法について説明します。
Python Music Libraryの質問に対する回答を見てください。質問に「Python」とありますが、Python は C 上に構築されています。したがって、Python から使用できるものには C ライブラリも含まれます。
BASSライブラリである程度の成功を収めましたが、最後に遊んだときの.Netサポートは少し粗雑でした。これは主に低レベルのストリームエンコーディングなどですが、一部のDX8エフェクトをサポートしています。
CodeProject に関する記事が 2 つあります。Leslie Stanford は、C# で Synth ツールキットを作成しました (私の知る限り、完全に管理されています)。
C# シンセ ツールキット - パート I C# シンセ ツールキット - パート II
また、Java関連ですが、いくつかの良いリンクがあるこのStackOverflow Questionを見つけました