VST3ホストを作ろう（５） 〜VST3 のライセンスについて〜

[目次](https://qiita.com/hotwatermorning/items/5ab2a687a4cbc73a0f56)

## はじめに

　今回は VST3 SDK を利用する際のライセンスについて解説します。

　ただし、筆者はライセンス分野の専門家ではないため、筆者の解釈が間違っている可能性もあります。このため、読者は必ず VST3 SDK の中にあるオリジナルの記述を参照して、もし本記事の記述と VST3 SDK 側の記述との間に齟齬があった場合は、 VST3 SDK 側の記述に従ってください。

　また、 VST3 SDK の公式フォーラムにある VST 3 SDK Licensing FAQ のページも参考になるでしょう。

* https://sdk.steinberg.net/viewtopic.php?f=4&t=286

## VST3 SDK のライセンスについて

　VST3 SDK は Steinberg 社が公開していて無料で利用できますが、 VST3 SDK を利用して開発したソフトウェアを配布する際は、そのソフトウェアに VST3 SDK のライセンスを適用する必要があります。

　VST3 SDK はデュアルライセンスになっていて、"Open-source GPLv3" ライセンスか "Proprietary Steinberg VST3" ライセンスか、どちらかのライセンスを選択できます。

### "Proprietary Steinberg VST3" ライセンスについて

　このライセンスは VST3 SDK を利用したソフトウェアを、オープンソースプロジェクトにせずにバイナリ形式で配布する場合に適用するライセンスです。商用のプラグインやホストでは、こちらを選択することになるでしょう。

　このライセンスを選択した場合は:

* VST3 SDK を利用したソフトウェアをオープンソースプロジェクトとして公開する必要がありません。
* VST3 SDK を改変して利用した場合は、改変した版の VST3 SDK は公開してはいけません。（これを公開したい場合は、 "Open-source GPLv3" ライセンス を選択する必要があります）
* "Proprietary Steinberg VST3" License agreement という契約を Steinberg 社と交わす必要があります。
* Steinberg VST usage guidelines に沿って、ソフトウェアのドキュメントや "About Box" などに VST のロゴや商標を表示する必要があります。

### "Open-source GPLv3" ライセンスについて

　このライセンスは、 VST3 SDK を利用したソフトウェアを、 VST3 SDK を含む形でオープンソースプロジェクトとして配布する場合に適用するライセンスです。

　このライセンスを選択した場合は:

* VST3 SDK を [GPLv3](https://www.gnu.org/licenses/gpl-3.0.en.html) のもとで利用することになります。そして GPLv3 のコピーレフトの性質によって、あなたのソフトウェアも GPLv3 のもとで公開することになります。
* 改変した版の VST3 SDK を GPLv3 のもとで公開したり、他の人が改変した版の VST3 SDK を利用したりできます。
* "Proprietary Steinberg VST3" License agreement という契約を Steinberg 社と交わす必要はありません。
* Steinberg VST usage guidelines に沿って、ソフトウェアのドキュメントや "About Box" などに VST のロゴや商標を表示する必要があります。

　"Open-source GPLv3" ライセンスは、自身のソフトウェアのソースコードを VST3 SDK と一緒に配布する場合に適用するライセンスです。そのため、プロジェクトに VST3 SDK を含めずに、自分のソースコードだけを配布するのであれば、そのプロジェクトに "Open-source GPLv3" ライセンスを適用する必要はありません。

## Steinberg VST usage guidelines について

　Steinberg 社は、 VST3 SDK の利用者が従うべき条件を Steinberg VST usage guidelines として定めています。 VST3 SDK を利用する際は、 VST3 SDK が用意しているデュアルライセンスのどちらを選択したかに関わらず、このガイドラインに従う必要があります。

　このガイドラインでは、VST3 SDK 利用者に対して以下のような条件に従うように求めています。

* アプリケーションの包装、ウェブサイト、ドキュメントなどに、 "VST Compatible Logo" というロゴ画像を表示すること。
* また、宣伝素材や製品の About Box などにもロゴ画像を表示したり、以下の Copyright Notice に言及したりすること。
    * "VST is a registered trademark of Steinberg Media Technologies GmbH"
* 製品名に VST の文字を含める場合は、製品ロゴのデザインで VST の文字が他の文字にかぶらないようにすること。
* などなど。

 詳しい条件は、 VST3 SDK の中の VST3_Usage_Guidelines.pdf に記載されているのでそちらを参照してください。

## VST2 のライセンスについて

　VST2 は VST3 の前身となった規格で、 2019 年現在でも VST2 形式のプラグインは広く利用されています。しかし、 VST2 規格はすでに非推奨扱いになっていて、 VST2 規格に対応したプラグインやホストを配布する際はライセンスについて注意が必要になります。

　ここで紹介する VST2 のライセンスに関する問題は、普通に VST3 SDK を利用する場合は特に意識する必要はありません。ただし VST3 SDK に用意されている、 VST3 形式のプラグインを VST2 形式のプラグインとしてラップする仕組み（VST2 Wrapper[^detail_of_vst2_wrapper]）を利用する場合は VST2 SDK に含まれるソースファイルを使用することになるため、この問題を意識する必要があります。

[^detail_of_vst2_wrapper]: ここでは VST2 Wrapper の使い方については解説しません。詳しくは VST3 SDK ドキュメントの、 [VST 3 - VST 2.x Wrapper](https://steinbergmedia.github.io/vst3_doc/vstsdk/vst2xwrapper.html) のページを参照してください。

　VST2 SDK のソースファイルには、VST3 SDK のソースファイルに適用される "Proprietary Steinberg VST3" ライセンスと "Open-source GPLv3" ライセンスはどちらも適用できません。

　VST2 SDK のソースファイルを利用したソフトウェアを配布するには "Proprietary Steinberg VST2" ライセンスを適用する必要があります。また、そのためには VST2 用の Licensing Agreement 契約を Steinberg 社と交わしておく必要があります。

　ただし、 Steinberg 社は 2018/10/1 以降、新たな "Proprietary Steinberg VST2" ライセンスを発行しないようになりました。

　つまり、それまでに VST2 用の Licensing Agreement 契約を結んでいなかった開発者や企業は、新たにライセンスを取得できないため、 VST2 形式のプラグインや VST2 プラグインに対応したホストを配布できません。[^no_vst2_support_for_vst3_host] [^about_rejecting_of_vst2_license] VST3 プラグインを開発している場合でも、VST2 Wrapper の機能を使用したプラグインは配布できません。

[^no_vst2_support_for_vst3_host]: https://sdk.steinberg.net/viewtopic.php?f=4&t=819

[^about_rejecting_of_vst2_license]: このように、新たな開発者が VST2 プラグインやホストを配布できないようにするという対応は、いい加減に VST2 ではなく VST3 を主流にしていきたいという Steinberg 社の方針の表れという感じがします。

　また、 VST2 SDK のソースコードには VST3 SDK が用意している "Open-source GPLv3" ライセンスを適用できないことから、 VST2 SDK を利用するソフトウェアをオープンソースプロジェクトとして公開する場合は、そのなかに VST2 SDK のソースコードを含めてはいけません。 [^oss_with_vst2] [^vst2_license_violation] 

[^oss_with_vst2]: https://sdk.steinberg.net/viewtopic.php?f=4&t=286&sid=9bc4eed33f65c87fbcf85a25e984528b#p933

[^vst2_license_violation]: 現実的には、 VST2 用の Licensing Agreement 契約を結んでいない個人開発者が VST2 プラグインやホストを配布する程度であれば、（厳密に言えばライセンス違反であっても、）それに対して Steinberg 社が法的手段を行使する可能性はあまりないように思います。一方で企業にとってはこの問題は注意する必要があるでしょう。

## "Proprietary Steinberg VST3" License agreement について

　"Proprietary Steinberg VST3" License agreement は VST3 SDK を "Proprietary Steinberg VST3" ライセンスのもとで利用するために、 Steinberg 社と結ぶ契約です。この契約は製品単位ではなく企業単位で結ぶものなので、一度契約を結べば、それ以降はその企業がリリースする製品全てに "Proprietary Steinberg VST3" ライセンスを適用できます。

　この契約に関する細かい条件は、 VST3 SDK に含まれる VST3_License_Agreement.pdf に記載されています。

　"Proprietary Steinberg VST3" License agreement の契約を結ぶには、 VST3_License_Agreement.pdf に必要な情報を入力し、サインをして、 Steinberg 社にメール（reception@steinberg.de）か Fax（+49 (0)40 210 35-300）を送ります。入力した内容に不備がなければ、連署（countersign）された PDF ファイルがSteinberg 社の担当者から送り返され、契約が完了します。筆者の場合は、メールを送ってから返信が来るまでに一週間程度の時間がかかりました。

　VST3_License_Agreement.pdf へ入力する項目の意味は以下のとおりです。

　先頭ページの入力項目の意味:
![license_head.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/944/b9f0d519-906a-54b7-9f3e-2c9e6f52e478.png)

　末尾ページの入力項目の意味:
![license_tail.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/944/9d0995d4-1e3c-8520-14db-e69166c1f027.png)

　この契約書は PDF ファイルになっているので、 PDF ビューワー上でそれぞれのテキストエリアに直接テキストを入力することもできます。ただし、筆者の理解では PDF ファイル末尾ページの `By:` の項目だけは手書きでサインする必要があります。

　また、入力項目のうち、 Company については、個人開発者であれば空欄でも問題ないかもしれません。筆者の場合は、一応自身で持っているドメイン（diatonic.jp）を記入しました。

　以上を踏まえて筆者が行った手順を以下に示します。

1. PDF ファイルを開き、 `By:` 以外の必要な項目を直接テキスト入力する。
1. PDF ファイルの最後のページを印刷する。
1. `By:` の項目を手書きでサインする。
1. サインしたページをスキャンして、 PDF の最後のページをそのスキャンした画像と入れ替える。
1. この PDF ファイルを reception@steinberg.de にメールする。

## 別のライセンスのファイルについて

　VST3 SDK に含まれるファイルには、ライセンスが異なるものがいくつか含まれています。これが問題になることはあまりないでしょうが、参考として以下に載せておきます。[^files_under_another_licenses]

[^files_under_another_licenses]: https://steinbergmedia.github.io/vst3_doc/vstsdk/vst3License.html#lic4

* VST3 SDK に含まれるファイルのうち、以下に示すもの以外は、"Open-source GPLv3" ライセンスと "Proprietary Steinberg VST3" ライセンスのデュアルライセンス
* VSTGUI のファイルは BSD ライセンス
* base と public.sdk （VST2 のファイルを除く）は BSD ライセンス
* VST2 のファイルは "Proprietary Steinberg VST2" ライセンス
* mda-vst3 のサンプルコードは BSD ライセンス （コピーライトは `Copyright (c) 2008 Paul Kellett`）

## おわりに

　今回は VST3 のライセンスについて解説しました。[次回](https://qiita.com/hotwatermorning/items/e97089c12f5c4c542226) は VST3 プラグインのファイル構造について解説します。