回答:
インタラクティブアプリケーション用のリアルサウンド合成を取得し、合成ツールキットをダウンロードします。これにより、使用中のほとんどのデジタル合成方法の実用的な紹介と高品質のソースコードが得られます。次に、最もおもしろい方法を選択し、対応するSTKコードを変更して、必要なことを行います。 次に、同様の何かをゼロから構築してみてください。
さらに、提案されたhotpaw2のように、JOSのすべても優れた入門資料です。特に、デジタルの概要オーディオ・アプリケーションでフィルタし、離散フーリエ変換の数学基礎から両方の開始を、背景の多くを負いません。
デジタルフィルター/効果の観点から、もう1つの良い出発点はFaustをチェックすることです。ブロックダイアグラム信号処理言語を学ぶ必要さえありません。サンプルを使用して、VST、LADSPAなどのテンプレートコードをダンプすることができます。
そうは言っても、基本的に同じことですが、リアルタイムの操作や対話性を心配することなく、サウンドレンダリングを開始するのはさらに簡単です。wavファイルをディスクに保存するだけです。すぐに実行するという問題を経験する前に、新しいテクニックを試してみるのに最適な方法です。
DSPの入門書に加えて、コンピューター音楽のテーマに関する本(Amazonや他の書店にいくつかリストされています)を読みました。スタンフォード大学の DSPおよびサウンド合成に関する資料も豊富にあります。人間の聴覚システムと音響心理学に関する本も役立つかもしれません。
まず、構築するシンセサイザーの種類(加算、FM、サンプルベースなど)を決定する必要があります。また、既存のアナログシンセサイザーをエミュレートするか、独自のシンセサイザーを設計するかを決定する必要があります。
残りは非常に簡単です-さまざまなシンセサイザービルディングブロック(オシレーター、フィルター、ノイズジェネレーター、エンベロープシェーパーなど)をソフトウェアで実装し、これらを一緒に「配線」してパラメーターを制御する方法を実装するだけです。
Hal Chamberlinの著書「Musical Applications of Microprocessors」を参照してください。
誰もまだSynthMakerについて言及していないことに私はかなり驚いています。それはとてつもなく使いやすく、低レベルにすることは難しくなりますが(開発者モードを使用するようにしてください)、Synthesizerアーキテクチャと一般的なDSPについて多くを学ぶことができます。そして、あなたは実際にそれで構築されたものを利用することができます。実際、私はそれを使用してほとんどすべてのプラグインを構築します。
他の貢献者の一部が言及したように、DSPの優れた入門書は必須です。これは素晴らしい本です> http://www.dspguide.com/そして著者は親切に完全で無料のPDFダウンロードを提供しました。さまざまな合成技術の高レベルなビューを提供する別の一般的な音楽技術のコースブックは、http://www.amazon.com/Computer-Music-Tutorial-Curtis-Roads/dp/0262680823です。また、VSTプラグインを開発するための非常に便利な視覚的開発環境である以前の貢献者であるSynthmakerが提案したことを繰り返します。最後に、深く掘り下げずに実験したい場合は、サウンド合成専用に設計されたプログラミング言語であるCsoundを使用してみてください。
答えのほとんどはDSPの問題に焦点を合わせているので、私はただチャイムしたいだけです。SynthMakerのようなブロックデザインシステムを使用しない場合、音声管理の処理に多くの開発時間を費やすことになります。VSTiインストゥルメントプラグインをゼロから作成している場合、学習曲線はエフェクトプラグインよりもはるかに長くなります。各ノートオブジェクトを管理し、DSPが16ボイスに対して十分に速い場合に20ノートがあるときに何が起こるかを決定し、ピッチベンド、ポルタメント、モジュレーションなどに応答する必要があります。これは簡単な作業ではなく、 BuzzまたはSynthMakerから始めて、最終的に壁にぶつかったときに自分でロールバックすることをお勧めします。