From 8cf21b5d881276a4d3c490324136fed33700b7f4 Mon Sep 17 00:00:00 2001 From: Takamitsu Endo Date: Fri, 12 Aug 2022 17:40:04 +0900 Subject: [PATCH] Add UltrasonicRingMod manual --- ...7662C470F47ADAF877B5C06B39ED5_snapshot.png | Bin 23396 -> 28356 bytes docs/_config.yml | 2 + docs/index.html | 33 +- docs/index.md | 16 + .../UltrasonicRingMod/UltrasonicRingMod.json | 35 + .../UltrasonicRingMod_en.html | 677 +++++++++++++++++ .../UltrasonicRingMod/UltrasonicRingMod_en.md | 146 ++++ .../UltrasonicRingMod_ja.html | 689 ++++++++++++++++++ .../UltrasonicRingMod/UltrasonicRingMod_ja.md | 146 ++++ ...VST_Compatible_Logo_Steinberg_negative.svg | 82 +++ .../img/ultrasonicringmod.odg | Bin 0 -> 17046 bytes .../img/ultrasonicringmod.png | Bin 0 -> 28356 bytes .../img/ultrasonicringmod.svg | 600 +++++++++++++++ 13 files changed, 2424 insertions(+), 2 deletions(-) create mode 100644 docs/manual/UltrasonicRingMod/UltrasonicRingMod.json create mode 100644 docs/manual/UltrasonicRingMod/UltrasonicRingMod_en.html create mode 100644 docs/manual/UltrasonicRingMod/UltrasonicRingMod_en.md create mode 100644 docs/manual/UltrasonicRingMod/UltrasonicRingMod_ja.html create mode 100644 docs/manual/UltrasonicRingMod/UltrasonicRingMod_ja.md create mode 100644 docs/manual/UltrasonicRingMod/img/VST_Compatible_Logo_Steinberg_negative.svg create mode 100644 docs/manual/UltrasonicRingMod/img/ultrasonicringmod.odg create mode 100644 docs/manual/UltrasonicRingMod/img/ultrasonicringmod.png create mode 100644 docs/manual/UltrasonicRingMod/img/ultrasonicringmod.svg diff --git a/UltrasonicRingMod/resource/67F7662C470F47ADAF877B5C06B39ED5_snapshot.png b/UltrasonicRingMod/resource/67F7662C470F47ADAF877B5C06B39ED5_snapshot.png index 9538d9d22058d3eb53636bc72ee532981c2644ab..d2cc0aae10c1f123115f2ccc2316148a17662102 100644 GIT binary patch literal 28356 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 diff --git a/docs/_config.yml b/docs/_config.yml index da87454e..ee8f773b 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -38,6 +38,8 @@ exclude: - manual/SyncSawSynth/SyncSawSynth_ja.md - manual/TrapezoidSynth/TrapezoidSynth_en.md - manual/TrapezoidSynth/TrapezoidSynth_ja.md +- manual/UltrasonicRingMod/UltrasonicRingMod_en.md +- manual/UltrasonicRingMod/UltrasonicRingMod_ja.md - manual/WaveCymbal/WaveCymbal_en.md - manual/WaveCymbal/WaveCymbal_ja.md - manual/common/contact_installation_guiconfig_en.md diff --git a/docs/index.html b/docs/index.html index d0318809..f3cf76af 100644 --- a/docs/index.html +++ b/docs/index.html @@ -5,7 +5,7 @@ - + index + + + + + +
+

Back to Index

+

+ Update: 2022-08-12 +

+
+ Table of Contents + +
+
+

UltrasonicRingMod

+

+

UltrasonicRingMod is a ring modulator with 64-fold oversampling. +Maximum modulator frequency is 1 MHz. That said, just modulating with +ultrasonic frequency doesn’t produce anything audible. Therefore, phase +modulation and hard clipping are added to make some noise in audible +frequency.

+ +

The package includes following builds:

+
    +
  • Windows 64bit
  • +
  • Linux 64bit
  • +
  • macOS universal binary
  • +
+

Linux build is built on Ubuntu 20.04. If you are using distribution +other than Ubuntu 20.04, plugin will not likely to run. In this case, +please take a look at build +instruction.

+

Contact

+

Feel free to contact me on GitHub +repository or ryukau@gmail.com.

+

You can fund the development through paypal.me/ryukau. +Current goal is to purchase M1 mac for better macOS support. 💸💻

+

Installation

+

Plugin

+

Place *.vst3 directory to:

+
    +
  • /Program Files/Common Files/VST3/ for Windows.
  • +
  • $HOME/.vst3/ for Linux.
  • +
  • /Users/$USERNAME/Library/Audio/Plug-ins/VST3/ for +macOS.
  • +
+

DAW may provides additional VST3 directory. For more information, +please refer to the manual of the DAW.

+

Presets

+

Extract preset zip, then place preset directory to the OS specific +path:

+
    +
  • Windows : +/Users/$USERNAME/Documents/VST3 Presets/Uhhyou
  • +
  • Linux : $HOME/.vst3/presets/Uhhyou
  • +
  • macOS : +/Users/$USERNAME/Library/Audio/Presets/Uhhyou
  • +
+

Preset directory name must be the same as the plugin. Make +Uhhyou directory if it does not exist.

+

Windows Specific

+

If DAW doesn’t recognize the plugin, try installing C++ +redistributable (vc_redist.x64.exe). Installer can be found +in the link below.

+ +

Linux Specific

+

On Ubuntu 18.0.4, those packages are required.

+
sudo apt install libxcb-cursor0  libxkbcommon-x11-0
+

If DAW doesn’t recognize the plugin, take a look at +Package Requirements section of the link below and make +sure all the VST3 related package is installed.

+ +

REAPER on Linux may not recognize the plugin. A workaround is to +delete a file ~/.config/REAPER/reaper-vstplugins64.ini and +restart REAPER.

+

macOS Specific

+

When trying to run plugin first time, following message may appear on +macOS.

+
<PluginName>.vst3 is damaged and can't be opened. You should move it to
+the Trash"
+

In this case, open terminal and try running following command to +unzipped .vst3 directory.

+
xattr -rc /path/to/PluginName.vst3
+

Plugin may be considered as unsigned/un-notarized application. In +this case, try following the steps below.

+
    +
  1. Open terminal and run sudo spctl --master-disable.
  2. +
  3. Go to System Preferences → Security and Privacy → General → Allow +apps downloaded from, then select “Anywhere”.
  4. +
+

Beware that steps above degrades security of your system. To revert +the settings, follow the steps below.

+
    +
  1. Go to System Preferences → Security and Privacy → General → Allow +apps downloaded from, then select option to “App Store and identified +developers”.
  2. +
  3. Open terminal and run sudo spctl --master-enable.
  4. +
+

Reference

+ +

GUI Style Configuration

+

At first time, create color config file to:

+
    +
  • /Users/USERNAME/AppData/Roaming/UhhyouPlugins/style/style.json +on Windows.
  • +
  • $XDG_CONFIG_HOME/UhhyouPlugins/style/style.json on +Linux. +
      +
    • If $XDG_CONFIG_HOME is empty, make +$HOME/.config/UhhyouPlugins/style/style.json.
    • +
  • +
  • /Users/$USERNAME/Library/Preferences/UhhyouPlugins/style/style.json +on macOS.
  • +
+

style.json will be loaded for each time a plugin window +opens.

+

Several color themes are available on the link below.

+ +

Below is a example of style.json.

+
{
+  "fontFamily": "Tinos",
+  "fontBold": true,
+  "fontItalic": true,
+  "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"
+}
+

Font Options

+

Following is a list of font options.

+
    +
  • fontFamily: Font family name.
  • +
  • fontBold: Enable bold style when +true, disable when false.
  • +
  • fontItalic: Enable italic style when +true, disable when false.
  • +
+

To use custom font, place *.ttf file into custom font +path: *.vst3/Contents/Resources/Fonts.

+

Notice: If the combination of +fontFamily, fontBold, fontItalic +is not exists in custom font path, default font of VSTGUI is used.

+

If fontFamily is set to empty string "", +then "Tinos" +is used as fallback. If the length is greater than 1 and the font family +name doesn’t exists, default font of VSTGUI is used.

+

Styles other than bold, italic or bold-italic are not supported by +VSTGUI. For example, “Thin”, “Light”, “Medium”, and “Black” weights +cannot be used.

+

Color Options

+

Hex color codes are used.

+
    +
  • 6 digit color is RGB.
  • +
  • 8 digit color is RGBA.
  • +
+

First letter # is conventional. Plugins ignore the first +letter of color code, thus ?102938, \n11335577 +are valid.

+

Do not use characters outside of 0-9a-f for color +value.

+

Following is a list of color options. If an option is missing, +default color will be used.

+
    +
  • foreground: Text color.
  • +
  • foregroundButtonOn: Text color of active toggle button. +Recommend to use the same value of foreground or +boxBackground.
  • +
  • foregroundInactive: Text color of inactive components. +Currently, only used for TabView.
  • +
  • background: Background color.
  • +
  • boxBackground: Background color of inside of box shaped +components (Barbox, Button, Checkbox, OptionMenu, TextKnob, +VSlider).
  • +
  • border: Border color of box shaped components.
  • +
  • borderCheckbox: Border color of CheckBox.
  • +
  • borderLabel: Line color of parameter section +label.
  • +
  • unfocused: Color to fill unfocused components. +Currently, only used for knobs.
  • +
  • highlightMain: Color to indicate focus is on a +component. Highlight colors are also used for value of slider components +(BarBox and VSlider).
  • +
  • highlightAccent: Same as highlightMain. +Used for cosmetics.
  • +
  • highlightButton: Color to indicate focus is on a +button.
  • +
  • highlightWarning: Same as highlightMain, +but only used for parameters which requires extra caution.
  • +
  • overlay: Overlay color. Used to overlay texts and +indicators.
  • +
  • overlayHighlight: Overlay color to highlight current +focus.
  • +
+

Controls

+

Right Click on the controls pops up a context menu +provided by DAW.

+

Knob and slider can do:

+
    +
  • Ctrl + Left Click: Reset value.
  • +
  • Shift + Left Drag: Fine adjustment.
  • +
  • Middle Click : Rotate through minimum, default and +maximum value.
  • +
+

Caution

+

Amplitude increases by 120 dB maximum when Mod. Scale is +turned to right. Recommend to use limiter.

+

Block Diagram

+

If the image is small, use Ctrl + Mouse Wheel +or “View Image” on right click menu to scale.

+

Diagram only shows overview. It’s not exact implementation.

+

+

Parameters

+
+
Mix
+
+

Mixing ratio of input and modulated signal.

+

Note that mixing is done before hard clipping. In other words, hard +clipping is applied even if Mix is set to leftmost, and +Hardclip is not set to leftmost.

+

UltrasonicRingMod do not bypass multi-rate processing (oversampling). +To bypass completely, use mixer on DAW.

+
+
Pre Clip
+
+

A gain right before Hardclip.

+
+
Out
+
+

Output gain.

+

Beware that maximum gain is +60 dB.

+
+
Frequency
+
+

Modulator frequency.

+
+
DC Offset
+
+

Amplitude of direct current (DC) added to modulator.

+

Range of amplitude becomes [-1, 1] at leftmost, and +[0, 1] at rightmost.

+
+
Feedback
+
+

Amount of feedback from ring modulator output to modulator phase.

+
+
Mod. Scale
+
+

Ratio to make amplitude of modulator proportional to +Frequency.

+
+
Mod. Wrap
+
+

Mixing ratio of raw and wrapped-at-1 modulator signal.

+

Wrapped-at-1 is same operation as fmod(value, 1.0).

+
+
Hardclip
+
+

Mixing ratio of raw and hard-clipped ring modulator output.

+
+
Smoothing [s]
+
+

Parameter smoothing time in second.

+

Internally, inverse of Smoothing is used as cutoff +frequency. Therefore the time is not exact, but a rough estimate.

+
+
+

Note

+

Modulator frequency can be controled by note-on. To send note events, +please refer to the manual of DAW you are using.

+
+
Negative, Scale
+
+

Scale is a multiplier to note. When +Negative is lit, it negates the value of +Scale.

+

Provided note multiplies the value of Frequency. +Following is the equation to calculate modulator frequency.

+
sign = negative ? -1 : 1.
+modulatorFrequency = frequency * 2^(sign * scale * (midiNote + offset - 69) / 12).
+
+
Offset [st.]
+
+

A value added to input note number. Unit is semitone.

+
+
Slide Time [s]
+
+

Pitch slide time from previous note to current note.

+

Internally, inverse of Slide Time is used as cutoff +frequency. Therefore the time is not exact, but a rough estimate.

+
+
+

Change Log

+
    +
  • 0.0.2 +
      +
    • Added gains to hard clipping and to output.
    • +
    • Added parameter smoothing time, as a parameter.
    • +
    • Changed modulator amplitude clipping algorithm to floating point +number modulo.
    • +
    • Changed center note number to note offset from C4.
    • +
  • +
  • 0.0.1 +
      +
    • Initial release. Not distributed.
    • +
  • +
+

Old Versions

+

N/A.

+

License

+

UltrasonicRingMod is licensed under GPLv3. Complete licenses are +linked below.

+ +

If the link above doesn’t work, please send email to +ryukau@gmail.com.

+

About VST

+

VST is a trademark of Steinberg Media Technologies GmbH, registered +in Europe and other countries.

+ + + + + diff --git a/docs/manual/UltrasonicRingMod/UltrasonicRingMod_en.md b/docs/manual/UltrasonicRingMod/UltrasonicRingMod_en.md new file mode 100644 index 00000000..4a6d41db --- /dev/null +++ b/docs/manual/UltrasonicRingMod/UltrasonicRingMod_en.md @@ -0,0 +1,146 @@ +--- +lang: en +... + +# UltrasonicRingMod +![](img/ultrasonicringmod.png) + +UltrasonicRingMod is a ring modulator with 64-fold oversampling. Maximum modulator frequency is 1 MHz. That said, just modulating with ultrasonic frequency doesn't produce anything audible. Therefore, phase modulation and hard clipping are added to make some noise in audible frequency. + +- [Download UltrasonicRingMod {{ latest_version["UltrasonicRingMod"] }} - VST® 3 (github.com)]({{ latest_download_url["UltrasonicRingMod"] }}) VST compatible logo. +{%- if preset_download_url["UltrasonicRingMod"]|length != 0%} +- [Download Presets (github.com)]({{ preset_download_url["UltrasonicRingMod"] }}) +{%- endif %} + +The package includes following builds: + +- Windows 64bit +- Linux 64bit +- macOS universal binary + +Linux build is built on Ubuntu 20.04. If you are using distribution other than Ubuntu 20.04, plugin will not likely to run. In this case, please take a look at [build instruction](https://github.com/ryukau/VSTPlugins/blob/master/build_instruction.md). + +{{ section["contact_installation_guiconfig"] }} + +## Controls +{{ section["gui_common"] }} + +{{ section["gui_knob"] }} + +## Caution +Amplitude increases by 120 dB maximum when `Mod. Scale` is turned to right. Recommend to use limiter. + +## Block Diagram +If the image is small, use Ctrl + Mouse Wheel or "View Image" on right click menu to scale. + +Diagram only shows overview. It's not exact implementation. + +![](img/ultrasonicringmod.svg) + +## Parameters +Mix + +: Mixing ratio of input and modulated signal. + + Note that mixing is done before hard clipping. In other words, hard clipping is applied even if `Mix` is set to leftmost, and `Hardclip` is not set to leftmost. + + UltrasonicRingMod do not bypass multi-rate processing (oversampling). To bypass completely, use mixer on DAW. + +Pre Clip + +: A gain right before `Hardclip`. + +Out + +: Output gain. + + Beware that maximum gain is +60 dB. + +Frequency + +: Modulator frequency. + +DC Offset + +: Amplitude of direct current (DC) added to modulator. + + Range of amplitude becomes `[-1, 1]` at leftmost, and `[0, 1]` at rightmost. + +Feedback + +: Amount of feedback from ring modulator output to modulator phase. + +Mod. Scale + +: Ratio to make amplitude of modulator proportional to `Frequency`. + +Mod. Wrap + +: Mixing ratio of raw and wrapped-at-1 modulator signal. + + Wrapped-at-1 is same operation as `fmod(value, 1.0)`. + +Hardclip + +: Mixing ratio of raw and hard-clipped ring modulator output. + +Smoothing \[s\] + +: Parameter smoothing time in second. + + Internally, inverse of `Smoothing` is used as cutoff frequency. Therefore the time is not exact, but a rough estimate. + +### Note +Modulator frequency can be controled by note-on. To send note events, please refer to the manual of DAW you are using. + +Negative, Scale + +: `Scale` is a multiplier to note. When `Negative` is lit, it negates the value of `Scale`. + + Provided note multiplies the value of `Frequency`. Following is the equation to calculate modulator frequency. + + ``` + sign = negative ? -1 : 1. + modulatorFrequency = frequency * 2^(sign * scale * (midiNote + offset - 69) / 12). + ``` + +Offset \[st.\] + +: A value added to input note number. Unit is semitone. + +Slide Time \[s\] + +: Pitch slide time from previous note to current note. + + Internally, inverse of `Slide Time` is used as cutoff frequency. Therefore the time is not exact, but a rough estimate. + +## Change Log +{%- for version, logs in changelog["UltrasonicRingMod"].items() %} +- {{version}} + {%- for log in logs["en"] %} + - {{ log }} + {%- endfor %} +{%- endfor %} + +## Old Versions +{%- if old_download_link["UltrasonicRingMod"]|length == 0 %} +N/A. +{%- else %} + {%- for x in old_download_link["UltrasonicRingMod"] %} +- [UltrasonicRingMod {{ x["version"] }} - VST 3 (github.com)]({{ x["url"] }}) + {%- endfor %} +{%- endif %} + +## License +UltrasonicRingMod is licensed under GPLv3. Complete licenses are linked below. + +- [https://github.com/ryukau/VSTPlugins/tree/master/License](https://github.com/ryukau/VSTPlugins/tree/master/License) + +If the link above doesn't work, please send email to `ryukau@gmail.com`. + +### About VST +VST is a trademark of Steinberg Media Technologies GmbH, registered in Europe and other countries. diff --git a/docs/manual/UltrasonicRingMod/UltrasonicRingMod_ja.html b/docs/manual/UltrasonicRingMod/UltrasonicRingMod_ja.html new file mode 100644 index 00000000..6b31c943 --- /dev/null +++ b/docs/manual/UltrasonicRingMod/UltrasonicRingMod_ja.html @@ -0,0 +1,689 @@ + + + + + + + + +UltrasonicRingMod_ja + + + + + + +
+

Back to Index

+

+ Update: 2022-08-12 +

+
+ Table of Contents + +
+
+

UltrasonicRingMod

+

+

UltrasonicRingModウルトラソニック リング モッド +は 64 倍のオーバーサンプリングを行うリングモジュレータで、最高 1 MHz +のサイン波による変調をかけることができます。とは言っても単に変調すると可聴域外なので何も聞こえなくなってしまいますが、フィードバックによる位相変調やハードクリッピングができるので、いくらかノイズが出せます。

+ +

パッケージには次のビルドが含まれています。

+
    +
  • Windows 64bit
  • +
  • Linux 64bit
  • +
  • macOS universal binary
  • +
+

Linux ビルドは Ubuntu 20.04 でビルドしています。もし Ubuntu 20.04 +以外のディストリビューションを使っているときは、プラグインが読み込まれないなどの不具合が起こることがあります。この場合はビルド手順に沿ってソースコードからビルドしてください。

+

連絡先

+

何かあれば GitHub +のリポジトリに issue を作るか ryukau@gmail.com +までお気軽にどうぞ。

+

paypal.me/ryukau +から開発資金を投げ銭することもできます。現在の目標はよりよい macOS +サポートのための M1 mac の購入資金を作ることです。 💸💻

+

インストール

+

プラグイン

+

名前が .vst3 で終わるディレクトリを OS +ごとに決められた位置に配置してください。

+
    +
  • Windows では /Program Files/Common Files/VST3/ +に配置します。
  • +
  • Linux では $HOME/.vst3/ に配置します。
  • +
  • macOS では +/Users/$USERNAME/Library/Audio/Plug-ins/VST3/ +に配置します。
  • +
+

DAW によっては上記とは別に VST3 +をインストールできるディレクトリを提供していることがあります。詳しくは利用している +DAW のマニュアルを参照してください。

+

プリセット

+

解凍して出てきたディレクトリを OS +ごとに決められた位置に配置すると使えるようになります。

+
    +
  • Windows : +/Users/$USERNAME/Documents/VST3 Presets/Uhhyou
  • +
  • Linux : $HOME/.vst3/presets/Uhhyou
  • +
  • macOS : +/Users/$USERNAME/Library/Audio/Presets/Uhhyou
  • +
+

プリセットディレクトリの名前はプラグインと同じである必要があります。 +Uhhyou ディレクトリが無いときは作成してください。

+

Windows

+

プラグインが DAW に認識されないときは C++ redistributable +をインストールしてみてください。インストーラは次のリンクからダウンロードできます。ファイル名は +vc_redist.x64.exe です。

+ +

Linux

+

Ubuntu 18.0.4 では次のパッケージのインストールが必要です。

+
sudo apt install libxcb-cursor0  libxkbcommon-x11-0
+

もし DAW がプラグインを認識しないときは、下のリンクの +Package Requirements を参考にして VST3 +に必要なパッケージがすべてインストールされているか確認してください。

+ +

REAPER の Linux 版がプラグインを認識しないときは +~/.config/REAPER/reaper-vstplugins64.ini を削除して REAPER +を再起動してみてください。

+

macOS

+

注意: この節は英語で macOS +を使用しているユーザからの報告によって作成されました。日本語でのエラーメッセージが分からなかったので曖昧な書き方になっています。

+

プラグインの初回起動時に「破損している」という趣旨のメッセージが表示されることがあります。この場合は、ターミナルを開いて、解凍した +.vst3 +ディレクトリに次のコマンドを適用してみてください。

+
xattr -rc /path/to/PluginName.vst3
+

プラグインは署名されていない (unsigned) 、または公証されていない +(un-notarized) +アプリケーションとして認識されることがあります。この場合は以下の手順を試してみてください。

+
    +
  1. ターミナルを開いて sudo spctl --master-disable +を実行。
  2. +
  3. システム環境設定 → セキュリティとプライバシー → 一般 → +ダウンロードしたアプリケーションの実行許可、を開いて +「全てのアプリケーションを許可」 を選択。
  4. +
+

上記の手順を実行するとシステムのセキュリティが弱くなるので注意してください。元に戻すには以下の手順を実行してください。

+
    +
  1. システム環境設定 → セキュリティとプライバシー → 一般 → +ダウンロードしたアプリケーションの実行許可、を開いて 「App Store +と認証済みの開発元からのアプリケーションを許可」 を選択。
  2. +
  3. ターミナルを開いて sudo spctl --master-enable +を実行。
  4. +
+

参考リンク

+ +

GUI の見た目の設定

+

初回設定時は手動で次のファイルを作成してください。

+
    +
  • Windows では +/Users/ユーザ名/AppData/Roaming/UhhyouPlugins/style/style.json +。
  • +
  • Linux では +$XDG_CONFIG_HOME/UhhyouPlugins/style/style.json 。 +
      +
    • $XDG_CONFIG_HOME が空のときは +$HOME/.config/UhhyouPlugins/style/style.json
    • +
  • +
  • macOS では +/Users/$USERNAME/Library/Preferences/UhhyouPlugins/style/style.json +。
  • +
+

プラグインのウィンドウを開くたびに style.json +が読み込まれて更新されます。

+

既存の色のテーマを次のリンクに掲載しています。 +style.json にコピペして使ってください。

+ +

style.json の設定例です。

+
{
+  "fontFamily": "Tinos",
+  "fontBold": true,
+  "fontItalic": true,
+  "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"
+}
+

フォントオプション

+

以下はフォントオプションの一覧です。

+
    +
  • fontFamily: フォントファミリ名。
  • +
  • fontBold: ボールドスタイル (太字) を true +で有効、 false で無効。
  • +
  • fontItalic: イタリックスタイル (斜体) を +true で有効、 false で無効。
  • +
+

カスタムフォントを使用するには、プラグインディレクトリの +*.vst3/Contents/Resources/Fonts*.ttf +ファイルを配置します。

+

注意: fontFamily 、 +fontBoldfontItalic +で設定したフォントファミリ名とスタイルの組み合わせが +*.vst3/Contents/Resources/Fonts 以下のいずれかの +*.ttf ファイルに含まれていないときは VSTGUI +が指定するデフォルトフォントが使用されます。

+

fontFamily が長さ 0 の文字列 "" +のときはフォールバックとして "Tinos" +に設定されます。長さが 1 +以上かつ、存在しないフォントファミリ名が指定されると VSTGUI +が指定するデフォルトフォントが使用されます。

+

ボールドあるいはイタリック以外のスタイルは VSTGUI +がサポートしていないので動作確認していません。該当する例としては Noto +フォントの Demi Light や、 Roboto フォントの Thin や Black +などがあります。

+

色のオプション

+

16 進数カラーコードを使っています。

+
    +
  • 6 桁の色は RGB 。
  • +
  • 8 桁の色は RGBA 。
  • +
+

プラグインはカラーコードの 1 文字目を無視します。よって +?102938\n11335577 +も有効なカラーコードです。

+

2 文字目以降のカラーコードの値に 0-9a-f +以外の文字を使わないでください。

+

以下は設定できる色の一覧です。設定に抜けがあるとデフォルトの色が使われます。

+
    +
  • foreground: 文字の色。
  • +
  • foregroundButtonOn: オンになっているボタンの文字の色。 +foregroundboxBackground +のいずれかと同じ値にすることを推奨します。
  • +
  • foregroundInactive: 非アクティブなタブの文字の色。
  • +
  • background: 背景色。
  • +
  • boxBackground: 矩形の UI 部品の内側の背景色。
  • +
  • border: ふちの色。
  • +
  • borderCheckbox: チェックボックスの縁の色。
  • +
  • borderLabel: +パラメータセクションのラベルの左右の直線の色。
  • +
  • unfocused: +つまみがフォーカスされていないときの色。
  • +
  • highlightMain: +フォーカスされたときの色。スライダの値の表示にも使用されます。
  • +
  • highlightAccent: +フォーカスされたときの色。一部のプラグインをカラフルにするために使用されます。
  • +
  • highlightButton: +ボタンがフォーカスされたときの色。
  • +
  • highlightWarning: 変更に注意を要する UI +がフォーカスされたときの色。
  • +
  • overlay: オーバーレイの色。
  • +
  • overlayHighlight: +フォーカスを示すオーバーレイの色。
  • +
+

操作

+

パラメータが割り当てられているコントロールの上で +右クリック すると、 DAW +から提供されるコンテキストメニューが開きます。

+

つまみと数値スライダでは次の操作ができます。

+
    +
  • Ctrl + 左クリック : 値のリセット。
  • +
  • Shift + 左ドラッグ : 細かい値の変更。
  • +
  • ホイールクリック : +最小値、デフォルト値、最大値の切り替え。
  • +
+

注意

+

Mod. Scale を右へ回すと Frequency +の高さに比例して振幅が上がります。オーバーサンプリングの影響でやや低めになりますが、振幅が最大で +120 dB 上がるので、リミッタの使用を推奨します。

+

ブロック線図

+

図が小さいときはブラウザのショートカット Ctrl + +マウスホイール +や、右クリックから「画像だけを表示」などで拡大できます。

+

図で示されているのは大まかな信号の流れです。実装と厳密に対応しているわけではないので注意してください。

+

+

パラメータ

+
+
Mix
+
+

入力と変調された信号を混ぜる割合です。

+

信号を混ぜる処理はハードクリッピングの直前に行われます。つまり +Mix が左いっぱいで入力をバイパスしているときであっても、 +Hardclip +が左いっぱいでなければ、歪みが加えられる可能性があります。

+

また、マルチレート処理、つまりオーバーサンプリングによる音の変化はバイパスされません。完全なバイパスを行うときは +DAW 側のミキサーを使ってください。

+
+
Pre Clip
+
+

Hardclip +の直前に乗算されるゲインです。歪みを加えたいときに使えます。

+
+
Out
+
+

出力ゲインです。

+

最大値は +60 dB とやや高めなので注意してください。

+
+
Frequency
+
+

変調波の周波数です。

+
+
DC Offset
+
+

変調波に加える直流信号 (direct current, DC) の量です。

+

変調波の振幅の範囲は、左いっぱいで [-1, 1] +、右いっぱいで [0, 1] になります。

+
+
Feedback
+
+

リングモジュレータを通過した信号を変調波の位相へとフィードバックする量です。

+
+
Mod. Scale
+
+

変調波の振幅を Frequency の値に比例させる割合です。

+
+
Mod. Wrap
+
+

変調波と、変調波を振幅 1.0 で巻き戻した信号を混ぜる割合です。

+

1.0 で巻き戻す計算は fmod(value, 1.0) と同じです。

+
+
Hardclip
+
+

リングモジュレータの出力と、リングモジュレータからの出力をハードクリップした信号を混ぜる割合です。

+
+
Smoothing [s]
+
+

パラメータの値を変えたときに、変更先の値にたどり着くまでの大まかな時間です。

+

内部的には Smoothing +の値の逆数を平滑化フィルタのカットオフ周波数として使っているので、厳密な時間を表しているわけではない点に注意してください。

+
+
+

Note

+

ノートオン・ノートオフによって変調波の周波数を変えることができます。ノートイベントをエフェクトに送る方法については、使用している +DAW のマニュアルを参照してください。

+
+
Negative, Scale
+
+

Scale は入力されたノートのピッチに掛け合わされる値です。 +Negative をクリックして点灯させると Scale +が負の値として内部的に扱われるようになります。

+

ノートの音程は C4 を中心とした比率に置き換えられて +Frequency の値に乗算されます。以下は計算方法です。

+
modulatorFrequency = frequency * 2^((midiNote + offset - 69) / 12).
+
+
Offset [st.]
+
+

入力されたノート番号に加算される値です。単位は半音 (semitone, st.) +です。

+
+
Slide Time [s]
+
+

ひとつ前の音程から、新しく入力された音程に向かってピッチをスライドさせる大まかな時間です。

+

内部的には Slide Time +の値の逆数を平滑化フィルタのカットオフ周波数として使っているので、厳密な時間を表しているわけではない点に注意してください。

+
+
+

チェンジログ

+
    +
  • 0.0.2 +
      +
    • ハードクリッピングと出力のゲインを追加。
    • +
    • パラメータ平滑化時間をパラメータとして追加。
    • +
    • 変調波の振幅のクリッピングを浮動小数点数のモジュロに変更。
    • +
    • ノートの転調を行うパラメータの表現を C4 +からのオフセットに変更。
    • +
  • +
  • 0.0.1 +
      +
    • 初期リリース。未配布。
    • +
  • +
+

旧バージョン

+

UltrasonicRingMod

+

旧バージョンはありません。

+

ライセンス

+

UltrasonicRingMod のライセンスは GPLv3 です。 GPLv3 +の詳細と、利用したライブラリのライセンスは次のリンクにまとめています。

+ +

リンクが切れているときは ryukau@gmail.com +にメールを送ってください。

+

VST® について

+

VST is a trademark of Steinberg Media Technologies GmbH, registered +in Europe and other countries.

+ + + + + diff --git a/docs/manual/UltrasonicRingMod/UltrasonicRingMod_ja.md b/docs/manual/UltrasonicRingMod/UltrasonicRingMod_ja.md new file mode 100644 index 00000000..6f40ee64 --- /dev/null +++ b/docs/manual/UltrasonicRingMod/UltrasonicRingMod_ja.md @@ -0,0 +1,146 @@ +--- +lang: ja +... + +# UltrasonicRingMod +![](img/ultrasonicringmod.png) + +UltrasonicRingModウルトラソニック リング モッド は 64 倍のオーバーサンプリングを行うリングモジュレータで、最高 1 MHz のサイン波による変調をかけることができます。とは言っても単に変調すると可聴域外なので何も聞こえなくなってしまいますが、フィードバックによる位相変調やハードクリッピングができるので、いくらかノイズが出せます。 + +- [UltrasonicRingMod {{ latest_version["UltrasonicRingMod"] }} をダウンロード - VST® 3 (github.com)]({{ latest_download_url["UltrasonicRingMod"] }}) VST compatible logo. +{%- if preset_download_url["UltrasonicRingMod"]|length != 0%} +- [プリセットをダウンロード (github.com)]({{ preset_download_url["UltrasonicRingMod"] }}) +{%- endif %} + +パッケージには次のビルドが含まれています。 + +- Windows 64bit +- Linux 64bit +- macOS universal binary + +Linux ビルドは Ubuntu 20.04 でビルドしています。もし Ubuntu 20.04 以外のディストリビューションを使っているときは、プラグインが読み込まれないなどの不具合が起こることがあります。この場合は[ビルド手順](https://github.com/ryukau/VSTPlugins/blob/master/build_instruction.md)に沿ってソースコードからビルドしてください。 + +{{ section["contact_installation_guiconfig"] }} + +## 操作 +{{ section["gui_common"] }} + +{{ section["gui_knob"] }} + +## 注意 +`Mod. Scale` を右へ回すと `Frequency` の高さに比例して振幅が上がります。オーバーサンプリングの影響でやや低めになりますが、振幅が最大で 120 dB 上がるので、リミッタの使用を推奨します。 + +## ブロック線図 +図が小さいときはブラウザのショートカット Ctrl + マウスホイール や、右クリックから「画像だけを表示」などで拡大できます。 + +図で示されているのは大まかな信号の流れです。実装と厳密に対応しているわけではないので注意してください。 + +![](img/ultrasonicringmod.svg) + +## パラメータ +Mix + +: 入力と変調された信号を混ぜる割合です。 + + 信号を混ぜる処理はハードクリッピングの直前に行われます。つまり `Mix` が左いっぱいで入力をバイパスしているときであっても、 `Hardclip` が左いっぱいでなければ、歪みが加えられる可能性があります。 + + また、マルチレート処理、つまりオーバーサンプリングによる音の変化はバイパスされません。完全なバイパスを行うときは DAW 側のミキサーを使ってください。 + +Pre Clip + +: `Hardclip` の直前に乗算されるゲインです。歪みを加えたいときに使えます。 + +Out + +: 出力ゲインです。 + + 最大値は +60 dB とやや高めなので注意してください。 + +Frequency + +: 変調波の周波数です。 + +DC Offset + +: 変調波に加える直流信号 (direct current, DC) の量です。 + + 変調波の振幅の範囲は、左いっぱいで `[-1, 1]` 、右いっぱいで `[0, 1]` になります。 + +Feedback + +: リングモジュレータを通過した信号を変調波の位相へとフィードバックする量です。 + +Mod. Scale + +: 変調波の振幅を `Frequency` の値に比例させる割合です。 + +Mod. Wrap + +: 変調波と、変調波を振幅 1.0 で巻き戻した信号を混ぜる割合です。 + + 1.0 で巻き戻す計算は `fmod(value, 1.0)` と同じです。 + +Hardclip + +: リングモジュレータの出力と、リングモジュレータからの出力をハードクリップした信号を混ぜる割合です。 + +Smoothing \[s\] + +: パラメータの値を変えたときに、変更先の値にたどり着くまでの大まかな時間です。 + + 内部的には `Smoothing` の値の逆数を平滑化フィルタのカットオフ周波数として使っているので、厳密な時間を表しているわけではない点に注意してください。 + +### Note +ノートオン・ノートオフによって変調波の周波数を変えることができます。ノートイベントをエフェクトに送る方法については、使用している DAW のマニュアルを参照してください。 + +Negative, Scale + +: `Scale` は入力されたノートのピッチに掛け合わされる値です。 `Negative` をクリックして点灯させると `Scale` が負の値として内部的に扱われるようになります。 + + ノートの音程は C4 を中心とした比率に置き換えられて `Frequency` の値に乗算されます。以下は計算方法です。 + + ``` + modulatorFrequency = frequency * 2^((midiNote + offset - 69) / 12). + ``` + +Offset \[st.\] + +: 入力されたノート番号に加算される値です。単位は半音 (semitone, st.) です。 + +Slide Time \[s\] + +: ひとつ前の音程から、新しく入力された音程に向かってピッチをスライドさせる大まかな時間です。 + + 内部的には `Slide Time` の値の逆数を平滑化フィルタのカットオフ周波数として使っているので、厳密な時間を表しているわけではない点に注意してください。 + +## チェンジログ +{%- for version, logs in changelog["UltrasonicRingMod"].items() %} +- {{version}} + {%- for log in logs["ja"] %} + - {{ log }} + {%- endfor %} +{%- endfor %} + +## 旧バージョン +### UltrasonicRingMod +{%- if old_download_link["UltrasonicRingMod"]|length == 0 %} +旧バージョンはありません。 +{%- else %} + {%- for x in old_download_link["UltrasonicRingMod"] %} +- [UltrasonicRingMod {{ x["version"] }} - VST 3 (github.com)]({{ x["url"] }}) + {%- endfor %} +{%- endif %} + +## ライセンス +UltrasonicRingMod のライセンスは GPLv3 です。 GPLv3 の詳細と、利用したライブラリのライセンスは次のリンクにまとめています。 + +- [https://github.com/ryukau/VSTPlugins/tree/master/License](https://github.com/ryukau/VSTPlugins/tree/master/License) + +リンクが切れているときは `ryukau@gmail.com` にメールを送ってください。 + +### VST® について +VST is a trademark of Steinberg Media Technologies GmbH, registered in Europe and other countries. diff --git a/docs/manual/UltrasonicRingMod/img/VST_Compatible_Logo_Steinberg_negative.svg b/docs/manual/UltrasonicRingMod/img/VST_Compatible_Logo_Steinberg_negative.svg new file mode 100644 index 00000000..f03d67ac --- /dev/null +++ b/docs/manual/UltrasonicRingMod/img/VST_Compatible_Logo_Steinberg_negative.svg @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/manual/UltrasonicRingMod/img/ultrasonicringmod.odg b/docs/manual/UltrasonicRingMod/img/ultrasonicringmod.odg new file mode 100644 index 0000000000000000000000000000000000000000..42c9d6e30ed3d2fd6fee0094658d1afa55c281cc GIT binary patch literal 17046 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sine Oscillator + + + + + + UltrasonicRingMod + + + + + + Input + + + + + + Output + + + + + + + + UpSampler + + + + + + + + DownSampler + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Note + + + + + + Frequency + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + DC Offset + + + + + + + + + + + + + + + + + + + + + + Hard Clipper + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + lerp + + + + + + + + + + + + + 1.0 + + + + + + Mod. Scale + + + + + + + + lerp + + + + + + + + + + + + + Hardclip + + + + + + + + + + + + + Pre Gain + + + + + + + + + + + + + + + + + + + + Out + + + + + + + + + + + + + + + + + + + + + + + + + Mix + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + To frequency + + + + + + To phase + + + + + + + + Wrap + + + + + + + + + + + + + + + lerp + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Mod. Wrap + + + + + + + + + + + + + Feedback + + + + + + `lerp` is short forlinear interpolation. + + + + \ No newline at end of file