Update: 2020-08-18

FDNCymbal はシンバルのような音を合成するシンセサイザです。エフェクトとして使うこともできます。名前とは裏腹に金属的な質感は FDN (feedback delay network) ではなく Schroeder allpass section によって得られています。 FDN.Time の値を小さくすることで、わりとナイスなばちの衝突音が合成できます。シンバルの揺れをシミュレートするためにトレモロもついています。
パッケージには次のビルドが含まれています。
Mac を持っていないので、 macOS ビルドはテストできていません。もしバグを見つけたときは GitHub のリポジトリに issue を作るか、 ryukau@gmail.com までメールを送っていただければ対応します。
Linux ビルドは Ubuntu 18.0.4 でビルドしています。また Bitwig と REAPER で動作確認を行っています。もし Ubuntu 18.04 以外のディストリビューションを使っているときは、プラグインが読み込まれないなどの不具合が起こることがあります。この場合はビルド手順に沿ってソースコードからビルドしてください。
名前が .vst3 で終わるディレクトリを OS ごとに決められた位置に配置してください。
/Program Files/Common Files/VST3/ に配置します。$HOME/.vst3/ に配置します。/Users/$USERNAME/Library/Audio/Plug-ins/VST3/ に配置します。DAW によっては上記とは別に VST3 をインストールできるディレクトリを提供していることがあります。詳しくは利用している DAW のマニュアルを参照してください。
解凍して出てきたディレクトリを OS ごとに決められた位置に配置すると使えるようになります。
/Users/$USERNAME/Documents/VST3 Presets/Uhhyou$HOME/.vst3/presets/Uhhyou/Users/$USERNAME/Library/Audio/Presets/Uhhyouプリセットディレクトリの名前はプラグインと同じである必要があります。 Uhhyou ディレクトリが無いときは作成してください。
プラグインが DAW に認識されないときは C++ redistributable をインストールしてみてください。インストーラは次のリンクからダウンロードできます。ファイル名は vc_redist.x64.exe です。
Ubuntu 18.0.4 では次のパッケージのインストールが必要です。
もし DAW がプラグインを認識しないときは、下のリンクの Package Requirements を参考にして VST3 に必要なパッケージがすべてインストールされているか確認してみてください。
REAPER の Linux 版がプラグインを認識しないときは ~/.config/REAPER/reaper-vstplugins64.ini を削除して REAPER を再起動してみてください。
注意: この節は英語で macOS を使用しているユーザからの報告によって作成されました。日本語でのエラーメッセージが分からなかったので曖昧な書き方になっています。
プラグインの初回起動時に「破損している」という趣旨のメッセージが表示されることがあります。この場合は、ターミナルを開いて、解凍した .vst3 ディレクトリに次のコマンドを適用してみてください。
プラグインは署名されていない (unsigned) 、または公証されていない (un-notarized) アプリケーションとして認識されることがあります。この場合は以下の手順を試してみてください。
sudo spctl --master-disable を実行。上記の手順を実行するとシステムのセキュリティが弱くなるので注意してください。元に戻すには以下の手順を実行してください。
sudo spctl --master-enable を実行。初回設定時は手動で次のファイルを作成してください。
/Users/ユーザ名/AppData/Roaming/UhhyouPlugins/style/style.json 。$XDG_CONFIG_HOME/UhhyouPlugins/style/style.json 。
$XDG_CONFIG_HOME が空のときは $HOME/.config/UhhyouPlugins/style/style.json 。/Users/$USERNAME/Library/Preferences/UhhyouPlugins/style/style.json 。既存の色のテーマを次のリンクに掲載しています。 style.json にコピペして使ってください。
style.json の設定例です。
{
"fontPath": "",
"foreground": "#000000",
"foregroundButtonOn": "#000000",
"foregroundInactive": "#8a8a8a",
"background": "#ffffff",
"boxBackground": "#ffffff",
"border": "#000000",
"borderCheckbox": "#000000",
"borderLabel": "#000000",
"unfocused": "#dddddd",
"highlightMain": "#0ba4f1",
"highlightAccent": "#13c136",
"highlightButton": "#fcc04f",
"highlightWarning": "#fc8080",
"overlay": "#00000088",
"overlayHighlight": "#00ff0033"
}16 進数カラーコードを使っています。
プラグインはカラーコードの 1 文字目を無視します。よって ?102938 や \n11335577 も有効なカラーコードです。
2 文字目以降のカラーコードの値に 0-9a-f 以外の文字を使わないでください。
以下は設定できる色の一覧です。設定に抜けがあるとデフォルトの色が使われます。
fontPath: フォント (*.ttf) の絶対パス。VST 3 版では実装されていません。foreground: 文字の色。foregroundButtonOn: オンになっているボタンの文字の色。 foreground か boxBackground のいずれかと同じ値にすることを推奨します。foregroundInactive: 非アクティブなタブの文字の色。background: 背景色。xboxBackground: 矩形の UI 部品の内側の背景色。border: 縁の色。borderCheckbox: チェックボックスの縁の色。borderLabel: パラメータセクションのラベルの左右の直線の色。unfocused: つまみがフォーカスされていないときの色。highlightMain: フォーカスされたときの色。スライダの値の表示にも使用されます。highlightAccent: フォーカスされたときの色。一部のプラグインをカラフルにするために使用されます。highlightButton: ボタンがフォーカスされたときの色。highlightWarning: 変更に注意を要する UI がフォーカスされたときの色。overlay: オーバーレイの色。overlayHighlight: フォーカスを示すオーバーレイの色。つまみとスライダーでは次の操作ができます。
バージョン 0.1.x と 0.2.x は互換性がありません。
FDN.Feedback の値が 0 でないときは信号が発散することがあります。発散したときは FDN.Feedback を一番左まで回してください。
HP Cutoff の値を短時間に大きく変更すると直流が乗ることがあります。直流が乗ったときは、いったん HP Cutoff を上げてから Shift + 左ドラッグ でゆっくりと下げなおしてください。
FDNCymbal はエフェクトとして使うこともできますが、直感的でない設定が必要となっています。
ロード直後の FDNCymbal は初期化時に音が止まることを防ぐためにミュートされています。有効化するためには FDNCymbal に MIDI ノートオンを送る必要があります。ベロシティによって出力音量が変わるので注意してください。また Seed と FDN セクションの値を変更したときは新しいノートオンを送るまで更新されません。
図が小さいときはブラウザのショートカット Ctrl + マウスホイール や、右クリックから「画像だけを表示」などで拡大できます。
図で示されているのは大まかな信号の流れです。実装と厳密に対応しているわけではないので注意してください。
出力音量です。
次のパラメータを変更したときに、変更前の値から変更後の値へと移行する秒数です。
GainFDN.TimeFDN.FeedbackFDN.CascadeMixAllpass.MixAllpass.Stage1.TimeAllpass.Stage1.FeedbackAllpass.Stage2.TimeAllpass.Stage2.FeedbackTremolo.MixTremolo.DepthTremolo.FrequencyTremolo.DelayTimeStick がオンのとき、ノートオンのたびにばちでシンバルを叩きます。ノートの高さでノイズの密度とトーンの高さが変わります。
ばちオシレータが出力するインパルスの音量です。
ばちオシレータが出力するサイン波によるトーンの音量です。
ばちオシレータが出力するベルベットノイズの音量です。
ベルベットノイズはランダムな間隔で異なる高さのインパルスが出力されるノイズのアルゴリズムです。
ばちオシレータの減衰時間です。
乱数のシード値です。
チェックを外すと、次の 3 つのパラメータでコントロールされる内部的なディレイ時間がノートオンのたびに変わります。
FDN.TimeAllpass.Stage1.TimeAllpass.Stage2.Timeチェックを外すと、ノートオンのたびにばちオシレータの音が変わります。
チェックを外すと、トレモロのパラメータがノートオンのたびに変わります。
オンのときはFDN (feedback delay network) セクションを信号が通過します。
FDN のディレイ時間を調整します。内部的なディレイ時間はノブで設定した値をもとにランダマイズされます。
FDN セクションのフィードバックです。この値が 0 でないときは信号が発散することがあるので注意してください。
直列につないだ複数の FDN の出力のミックスを調整します。
Schroeder allpass section のミックスを調整します。
2 つの Schroeder allpass section が直列につながっています。 Stage 2 では 4 つの Schroeder allpass section が並列接続されています。
Schroeder allpass section のディレイ時間の最大値です。ディレイ時間は内部的にランダマイズされます。
Schroeder allpass section のフィードバックです。
Schroeder allpass section の出力にかかるハイパスフィルタのカットオフ周波数です。
チェックを入れると Stage 1 のフィードバックにサチュレーションがかかります。
トレモロのミックスを調整します。
Depth が大きいほどトレモロによる音量の変化が大きくなります。
トレモロに使われる LFO の周波数です。
LFO によって変化するディレイ時間の最大値です。シンバルの揺れによって生じるドップラー効果を表現しています。
ノートオンのたびに Tremolo.Depth をランダマイズする度合いです。
ノートオンのたびに Tremolo.Frequency をランダマイズする度合いです。
ノートオンのたびに Tremolo.DelayTime をランダマイズする度合いです。
Pulse パラメータの追加。Velvet パラメータの追加。ToneMix の名前を Tone に変更。値の範囲も [0, 0.002] から [0, 0.02] に変更。Allpass.Stage1.Feedback が無効になっていたバグを修正。旧バージョン向けのプリセットです。
FDNCymbal のライセンスは GPLv3 です。 GPLv3 の詳細と、利用したライブラリのライセンスは次のリンクにまとめています。
リンクが切れているときは ryukau@gmail.com にメールを送ってください。
VST is a trademark of Steinberg Media Technologies GmbH, registered in Europe and other countries.