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を追加します。(「入力イベントバスの追加」とほぼ同じです。)
もっと見る

VST SDK 3.6.13が公開されました

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

参考→sdk.steinberg.net

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

  • インターフェイスの修正
    • プラグインのカテゴリとしてkInstrumentPianoが追加
  • CMake
    • Visual Studio 2019に対応
    • CMakeファイルについていくつかの修正を実施。
  • サンプルの追加・修正
    • HostChecker Plug-inサンプルでいくつかのチェック項目を追加
    • editorhostサンプルでいくつかのデバッグ出力を追加。
  • VST 3 Plug-in Test Hostの修正
    • IPlugInterfaceSupport・MPEをサポート
    • 同じプラグインのエディタを2つ開くことが可能に
  • その他の修正・改善の実施
    • AAX Wrapperのプリセット読み込み時にバイパス状態が上書きされる不具合を修正

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

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

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

VST内部での文字コードについて

VST内部での文字コードについて

VST SDKでは音声処理クラスパラメータ操作クラスVST GUIクラスでは扱っている文字コードが異なります。

音声処理クラスパラメータ操作クラスなどはUTF-16を使用しています。
(VST SDKドキュメントにあるSDK Helper Classesに関連するクラスがUTF-16を使います。)

一方でVST GUIクラスなどはUTF-8を使用しています。
(VST SDKドキュメントにあるVSTGUI 4に関連するクラスがUTF-8を使います。)

もっと見る

VST SDK 3.6.12が公開されました

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

参考→sdk.steinberg.net

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

  • VST GUI
    • スプラッシュスクリーンがクラッシュする不具合を修正。
    • Win32におけるVST GUIツールでの編集の不具合を修正。
    • その他 クリーンアップを実施。
  • インターフェイスの修正
    • イベントタイプにLegacyMIDICCOutEventを追加。プラグイン内で生成したMIDI CCを出力できるように。
    • IMidiLearnインターフェイスを追加。カスタムMIDI Learn機能を実装するために、操作中のMIDI CCを取得でいるように
    • IPlugInterfaceSupportインターフェイスを追加。ホストがプラグインにサポートされているかや使用中かどうかを取得でいるように
    • IVst3WrapperMPESupportインターフェイスを追加。MEP(MIDI Polyphonic Expression)を設定するためのWrapper
  • サンプルの追加・修正
    • LegacyMIDICCOutEvent用のサンプルを追加。
    • NoteExpressionSynthサンプルにIMidiLearnとIVst3WrapperMPESupportの機能を追加。
  • 修正・改善の実施
    • CMakeファイルについていくつかの修正を実施。
    • CMakeファイルでWIN_PDBをWIN_PDB32とWIN_PDB64に分離。
    • Audio Unit v3 (AUv3) Wrapperを更新。MEPを簡単に利用できるように。(macOS/iOSにサインインするための証明書が必要なことに注意)
    • Audio Unit v3 (AUv3) Wrapperのフォルダを再構成。
    • AAX Wrapperのオートメーションの不具合を修正
    • ST2 Wrapperのエディタの2重解放の不具合を修正
    • イベント用のヘルパークラス・関数を新たに追加(steventshelper.h)

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

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

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