はじめに
「VST3ホスト開発」では、数回に分けてVST3ホストアプリケーション(VST3プラグインを読み込めるアプリケーション。以下 VST3ホスト)を作成する方法を記載いたします。
対象のVST SDKバージョンは3.7.1としています。
前提となる知識について
VST3プラグイン開発についてある程度ご理解いただいていることを前提としています。
VSTプラグインの作成方法が全く分からないという方は、一度 下記ページの「はじめてのVST3プラグイン作り」などをご確認いただくようお願いします。
また、一部で音声の入出力やGUI(ウィンドウ)の表示など、プラットフォーム(「VST3ホスト開発」ではWindows)に依存する処理があります。
都度 概要については説明しますが、詳細については書籍やWebなどでご確認をお願いします。
作成方法の説明範囲について
「VST3ホスト開発」では特にVST3プラグインの読み込み方法とその扱い方を中心に説明しています。
VST3はVST-MAと呼ばれる規格に基づいて設計されていますが、この設計についてはほとんど説明いたしません。
VST SDKの内部の仕組みについても必要な範囲だけとなりますので、より理解を深めるためには下記のようなWebサイトやVST SDKマニュアルなどをご参照ください。
VST3 ホストを作ろう ~目次~
VST3ホストを作ろう!(公開用)
※ともに製作はhotwatermorningさんです。Twitter→https://twitter.com/hotwatermorning Webサイト→https://diatonic.jp/
また、VST3プラグインの読み込み方法とその扱い方を中心としているため、サンプルコードも極力 単純な処理だけを記載するようにしています。
サンプルをそのままアプリケーションとして利用するには不十分ですが、VST3プラグインをどう処理すればよいかがわかりやすいかと思います。
説明の方針について
基本的にVST3 SDKを使用した方法を説明いたします。
VST3 SDKにあるVST3ホスト用のクラスは、一部実装が不十分なところがあるようですが、その点については都度補足します。
そのうえで機能が不十分であれば、処理内容を確認の上、自分で実装いただくようお願いいたします。
VST3ホスト開発環境の準備
VST3ホストの開発環境の準備はVST3プラグインの準備と同じです。
下記のページを参考にしながら、「開発環境(Visual Studio)のインストール」「VST SDKのダウンロード」「VST SDK 3.6 基本ライブラリの作成」を実施してください。
VST3開発環境の準備
なお、VST3 SDKのファイルは上記のページと同様に、「C:\」配下に保存していることを前提に説明いたします。
それ以外の場所に保存している場合は、適時 読み替えてください。
Visual Studioのプロジェクト設定
作成するプロジェクト
Visual Studioのプロジェクトは次の「プロジェクト設定の変更」を実施していればどのプロジェクトでも構いません。
VST3ホストは通常 Windowsアプリになると思いますので基本的には「デスクトップアプリケーション」で作成しますが、「VST3ホスト開発」では「コンソールアプリケーション」で作成しています。
追加のオプションも特に指定はありません。
プロジェクト設定の変更
VST3ホストの開発では、VST SDKのヘッダファイルやVST SDK基本ライブラリをプロジェクトで利用できるようにする必要があります。
プロジェクトのプロパティページで構成「Debug」、プラットフォームを「x64」を確認したうえで、下記の項目の設定を行います。
カテゴリ | 設定項目 | 値 | |
---|---|---|---|
VC++ディレクトリ | インクルード ディレクトリ | C:\VST_SDK\VST3_SDK C:\VST_SDK\VST3_SDK\vstgui4 |
|
ライブラリ ディレクトリ | C:\VST_SDK\VST3_SDK/out/build/x64-Debug/lib | ||
リンカー | 入力 | 追加の依存ファイル | base.lib sdk.lib sdk_common.lib sdk_hosting.lib pluginterfaces.lib |
プロジェクトのプロパティページの開き方やプロジェクト設定の追加の方法は、VST3プラグイン作成で説明した、「VST3のプロジェクトの作成」の「プロジェクト設定の変更」と同様となりますので詳細は割愛いたします。
なお、インクルードディレクトリはVST SDKファイルのフォルダになります。ここではCドライブ(C:\)に保存されている想定です。
ライブラリディレクトリはVST SDK基本ライブラリの入っているフォルダになります。ここではVST SDK基本ライブラリを作成してから移動していない想定です。
Release用の設定もDebug用と同様で、「VC++ディレクトリ」がRelease用となるだけのため割愛いたします。
最後に
開発環境の準備とプロジェクト設定方法は以上となります。
VST3プラグイン開発をご理解いただいていることが前提となっているので、説明を割愛している部分がありますのでご了承ください。
次回は、VST3ホストとしてVST3プラグインを読み込む処理を説明します。
VST3プラグイン作りの情報はこちらにもございます → はじめてのVST3プラグイン作り
ご指摘やご質問などがございましたら、コメント欄か掲示板、Twitterでご連絡いただければと思います。
■掲示板
■Twitterアカウント:@vstcpp URL:https://twitter.com/vstcpp