「これほど間違っていることが、これほど正しく聞こえることはありませんでした。」
ロサンゼルスで開催された 2014 年オーディオ エンジニアリング ソサイエティ コンベンションでデビューした Kiss of Shame は、商用 UX/UI 設計原則を活用して磁気テープ + 回路エミュレーション アルゴリズムを形成した先駆的な DAW プラグインでした。
競争の激しいプロオーディオ プラグイン市場で差別化を図るために、The Kiss of Shame は、インタラクティブなマルチタッチ対応 GUI や独特のオーディオ エフェクトのためのアナログ テープ劣化シミュレーションなどの画期的な機能を導入しました。
Kiss of Shame は、磁性粒子の不安定性、潤滑剤の損失、基板の変形、ドリフト、スクレープフラッター、プリントスルー、およびリールの伸縮の影響を現実的にモデル化する、世界初 (そしておそらく唯一) のテープ / アナログ回路エミュレーション プラグインでした。サウンドデザインと音楽制作のためのFX処理ツールのスイート。
また、磁気テープやアナログ回路に固有の膨大な非線形性を説明するために機械学習を初めて活用しました。最後になりますが、これは、タッチをサポートし、実際のアナログ テープ デッキと同様にフランジ オートメーションをオンザフライで書き込むことができる、完全にインタラクティブなリールを備えた唯一のアナログ テープ エミュレーションです。
短いデモビデオを見る
『Kiss of Shame』は完全には完成しておらず、リリースされることはなかった。ソース コードは、2024 年に所有者によってオープン ソース コミュニティに寄付されました。
このオープンソース プロジェクトの目標は次のとおりです。
注:寄贈されたソース コードには、説明にあるすべての機能が含まれているわけではありません。特に、テープ タイプと環境 (ハリケーン サンディ) が 1 つしかなく、プリントスルー機能がありません。現在の形式では、プラグインは 44100 Hz のサンプル レートでのみ適切に動作します。とはいえ、クールな UI を備えた楽しいプラグインであることに変わりはなく、ソース コードから学ぶべきことはたくさんあります。
注記:
‼️ これは現在進行中です。プラグインに問題がある可能性があります。ご自身の責任でご使用ください。‼️
Mac バージョンのプラグインは署名され、公証されています。
DAW にプラグインの AU バージョンが表示されない場合は、アプリケーション/ユーティリティ/ターミナルを開きます。次のように入力して Enter キーを押します。
killall -9 AudioComponentRegistrar
次に、DAW を再起動します。これでプラグインが表示されるはずです。そうでない場合は、コンピュータを再起動します。
2 つの異なるテープ タイプから選択します。
S-111 – 50 年代から 70 年代に人気があった優れたリール形式は、多くのエンジニアにとって好まれるリファレンス テープでした。 Kiss of Shame は初のデジタル エミュレーションを導入し、この伝説的なフォーマットをデジタル世界にもたらします。
A-456 – この古典的な高出力/低ノイズ形式は、数え切れないほどの作品で使用される録音の定番です。ソフトウェア エミュレーションは数多く存在しますが、このように完全に再現したものはありません。その本質を捉えるために、独自のデジタル再現戦術が採用されました。
注:テープ タイプ選択ボタンは、現在は機能しません。
風化から天気へ:
Age – このノブを使用すると、ユーザーは、選択したテープ タイプが選択した「環境」にさらされる仮定の時間を規定して、対応する効果の重大度を操作できます。
環境- 磁性粒子の不安定性、酸化、潤滑剤の損失、テープパックの膨張/収縮、「ビネガー症候群」などの要因による音の影響をソース素材に与えるために、いくつかの模擬保管条件から選択します。ユーザーは、「ハリケーン サンディ」設定を選択して、嵐の洪水の水から浸漬され、その後回収されたテープからモデル化された処理にアクセスすることもできます。
注:ハリケーン サンディ環境のみが実装されています。
現実世界の障害:
Shame – Kiss of Shameは、ドリフト、ワウ、フラッター、スクレイプ・フラッターなどの要素のフルスペクトルを再現し、ユーザーが中央のノブを使ってこれらの要素を与えることができます。ソース信号は、穏やかな色から完全に乱れたものまで対応します。
プリントスルー– 「裏抜け」とも呼ばれるこのエミュレーションは、アナログ記録に存在する機械的な速度の変動をキャプチャします。かつてはエンジニアにとって課題でしたが、クラシック レコードの特徴となりました。
注:プリントスルー機能は実装されていません。
手を伸ばしてテープに触れてください。
Kiss of Shame は、簡単なクリックまたはタッチで操作できるアニメーション化されたインタラクティブなリールを備えた最初のテープ プラグインです。これにより、ユーザーは 2 台の物理テープ デッキを必要とせずに、ほんのわずかな時間で本物のアナログ テープ フランジにリアルタイムでアクセスできるようになります。リールの動きを含むすべてのパラメータは完全に自動化でき、画面の面積を最適化するために、リールは折りたたみ可能で完全にカスタマイズ可能です。
ヒント:フランジを付けるには、リールをドラッグします。リールを折りたたむには、UI 内の任意の場所をダブルクリックします。
簡単な説明:
現在、次のものでのみテストされています。
CMake ビルドをセットアップするには、CMake と Ninja がインストールされていることを確認してください。 Ninja はデフォルトでコンパイル時間が短縮されるように構成されていますが、これを使用したくない場合は、以下の構成スクリプトから「-G Ninja」を省略し、ジョブの数を手動で指定します。これを行う方法については CMake ドキュメントを確認してください
プロジェクトを構成します (JUCE を取得し、JUCE プロジェクトをセットアップします)。
cmake -B "build" -G Ninja
プロジェクトをビルドします。
cmake --build "build" --config Release --target all --
デバッグ ビルドの場合は、「--config Release」を「--config Debug」に置き換えます。
ビルドはターゲット プラットフォームに適したフォルダー (例: C:Program Files (x86)Common Files/VST3/
for Windows) に自動的にコピーされるため、開発中に DAW でこのプラグインを簡単に開くことができます。ビルドはbuild/TheKissOfShame_artefacts/(Release or Debug)
にも配置されます。
AAX コンパイルは有効になっていませんが、 /CMakeLists.txt
のjuce_add_plugin
の下にあるFORMATS
定義にAAX
を追加することで有効にできます。 AAX 用にコンパイルするには、 juce_set_aax_sdk_path(" ... ")
で AAX SDK の場所を指定する必要があります。これはまだテストされていません。
コードの動作を説明するためにコードにコメントを追加しましたが、完全なウォークスルーについては、私のブログ投稿を参照してください。
元のコードは JUCE 3.1 を使用して作成されました。ユーザーは、画像ファイルと音声ファイルを含むフォルダーを/Users/Shared/KissOfShame
にコピーする必要がありました。パラメーターは DAW に公開されず、エディターを再度開くとリセットされます。
このリポジトリでは次の変更が加えられました。
私が見つけた(または導入された)バグ:
beginGesture
が 2 回呼び出された場合にアサーションが発生することがあります。大きな問題ではありませんが、素晴らしい問題でもありません。コード内で改善できる、または改善すべきその他の点 (ボランティア歓迎!):
prepareToPlay()
メソッドとreset()
メソッドを DSP クラスに追加します。リセット メソッドは古い状態をクリアする必要があります。audioGraphProcessingBuffer = audioBuffer
実行するのではなく、事前にバッファーを割り当ててバッファーにコピーします。Envelope
およびEnvelopeDips
) は前のポイントと次のポイントを追跡できるため、タイムステップごとにすべてのポイントをループする必要はありません。audioProcessor.curPositionInfo
非推奨の API を使用します。rand()
とsrand()
は使用しないでください。 juce::Random
に置き換えます。多分:
targetDepth = depth * depth * 1000.0f
を実行します)。Copyright (C) 2014-2015 エロス・マルチェロ
オリジナルの開発者:
エロス・マルチェロ — 創設者、チーフ プロダクト アーキテクト
ブライアン・ハンセン — DSP エンジニアリング / アルゴリズム開発
ヤニック・ボネフォイ — GUI
Matthijs Hollemans および寄稿者による更新と改善。
このプログラムはフリー ソフトウェアです。Free Software Foundation が発行する GNU General Public License の条件 (ライセンスのバージョン 3、または (ユーザーの選択による) 以降のバージョン) に基づいて再配布したり、変更したりすることができます。
このリポジトリのコードの一部 ( Granulate
クラス) は、Perry R. Cook と Gary P. Scavone による C++ の合成ツールキット (STK) から引用されました。
JUCE の著作権は © Raw Materials Software にあります。
VST® は、Steinberg Media Technologies GmbH の商標であり、ヨーロッパおよびその他の国で登録されています。