任意のフォントの利用

任意のフォントの利用

VST GUIにおいてテキストを表示させるコントロールのフォントを変更する方法を説明いたします。

なお、VST GUIの基本的な作成方法、テキストラベルコントロールの作成方法として下記をご理解いただいている前提で進めさせていただきます。

フォントを変更すると下記のようになります。

同様の手順でテキストエディットコンボボックスチェックボックス等のコントロールのフォントも変更可能です。

もっと見る

VST GUIにおけるコンテキストメニューの実装

VST GUIにおけるコンテキストメニューの実装

VST GUIにおいて右クリックでポップアップするコンテキストメニューを実装する方法を説明いたします。

なお、VST GUIの基本的な作成方法として下記をご理解いただいている前提で進めさせていただきます。

また、コンテキストメニューはCOptionMenuクラスを使用したり、valueChanged()関数でメニュー項目の選択処理などを行うため、「コンボボックスの実装」や「複数コントロールの同期」についても参考にしてください。

もっと見る

VST GUIにおける「ファイルを開く」ダイアログの実装

「ファイルを開く」ダイアログの実装

VSTでファイルを読み込む際に必要なファイル読み込み用の”「ファイルを開く」ダイアログ”の実装方法を説明いたします。

なお、VST GUIの基本的な作成方法として下記をご理解いただいている前提で進めさせていただきます。

また、こちらのTipsで紹介している各コントロールを作成する関数も使用しています。

もっと見る

VST SDK 3.6.14が公開されました

VST SDK 3.6.14が公開されました。

参考→sdk.steinberg.net

変更点は下記のようです。(公式サイトとマニュアルからの翻訳ですが英語は自信がないです。)

  • CMAKEの修正
    • リファクタリングの実施
    • SMTG_VST3_SDK.cmakeファイルの追加
    • FindJackとLinuxクロスコンパイラのサポートの強化
  • VSTサンプルの追加・修正
    • HostCheckerプラグインで64bitプロセッシングといくつかのチェックの追加
    • AAXバージョンのHostCheckerプラグインを追加
    • Validatorでいくつかのチェック機能の追加(別スレッドでの処理、バイパス機能の保存、実行テストで新しいオプションの追加、MIDIMappingテストのパフォーマンス改善)
  • プラグインラッパーの修正
    • AAXラッパーでSMPTEサポートを追加
    • InterAppAudioラッパーは次期SDKで排除される予定とした
  • VST3 ヘルパークラスの修正
    • EditControllerEx1にあるprogramList、programIndexMap、unitsを終了時にクリアするよう修正
  • VST3 Plug-in Test Hostの修正
    • Windowsのメニューを変更
    • 新しいテストを追加
  • VST GUIの修正
    • VST GUIが4.9に
    • VSTGUI::CListControlを追加
    • カスタムフォントのサポート(Windowsの場合、Windows 10のみ)

VST3.6についての情報は下記にもございます。

また、質問やご指摘はコメント欄や掲示板Twitterでいただけばとおもいます。

掲示板
■Twitterアカウント:@vstcpp   URL:https://twitter.com/vstcpp

Visual Studio 2019でVST基本ライブラリをコンパイルできない不具合の回避策

Visual Studio 2019でVST基本ライブラリをコンパイルできない不具合の回避策

最新(2019年11月時点)のVisual Studio 2019でVST SDK 3.6.13の基本ライブラリをコンパイルできないという不具合が出ています。

原因は「public.sdk/source/vst/hosting/module_win32.cpp」でMicrosoftが非推奨とした「experimental/filesystem」を使用しているためです。
これにより、下記のエラーが発生しコンパイルできない状態になっています。

このエラーを回避するにはプリプロセッサ「_SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING」を定義する必要があります。

回避策1

一つ目の回避策は、「public.sdk/source/vst/hosting/module_win32.cpp」に直接定義する方法です。
もっと見る

MIDIノートオン・オフの出力

MIDIノートオン・オフの出力

VSTではMIDIメッセージを出力することができます。
これにより、MIDIエフェクトのようなものや音声信号からMIDIへの変換などを行うことができます。

ここでは、音声処理クラスからMIDIメッセージを出力する方法を説明いたします。

なお、MIDIメッセージの入力などについては下記をご参照ください。

MIDIメッセージの受取1 MIDIのNote On、Note Offメッセージを受け取る方法の記載しています。簡単なモノフォニックシンセサイザーを作成しています。
MIDIメッセージの受取2 MIDIのControl Change、Pitch Bendなどのメッセージを受け取る方法の記載しています。

サンプルでは、入力されたMIDIノートオン・オフメッセージそのまま出力するだけのものを作成しています。
まずは音声処理クラスのinitialize関数に出力用のEventBusを追加します。(「入力イベントバスの追加」とほぼ同じです。)
もっと見る