新刊のお知らせ2: LV2オーディオプラグイン開発ガイド

昨日に引き続き技術書典9 & M3 2020秋の新刊リリースのお知らせです。2冊目、というか書いた順としては1冊目なのですが、8月に予定として発表した「LV2オーディオプラグイン開発ガイド」です。

techbookfest.org

書籍紹介は序文からのコピペなのですが、ここにもコピペしておきます:

LV2はLinuxを中心に使われている、しかしクロスプラットフォームで利用可能な、オーディオプラグインの仕様です。

LV2はオーディオプラグインとしてはかなり多岐にわたる機能を実現しており、加えてコア部分だけでもなかなか難解な仕様であり、LV2にかかる開発はオーディオ専門職であってもなかなか手を出せない領域です。LV2についてはユーザーガイドと言えるものもなかなか無く、特に日本語情報は非常に少ないので、LV2全般について幅広くまとめたものが必要であろう、と筆者は考えました。

本書ではLV2オーディオプラグインの「使い方」と「作り方」の両方を解説します。通常、ソフトウェア開発のための書籍では「使い方」について説明する必要はないのですが、LV2オーディオプラグインの場合は、まずそもそも使いこなせるようになるところまでの情報が十分ではありません。いくつかの章をまずユーザー用ガイドとして用意し、ある程度理解が整ったところで実際の開発ガイドに進みます。

とはいっても、開発ガイドを「ガチで何でも書ける」レベルまで書ききるのは無理があったので、今回は主に膨大なLV2モジュールを適宜重要度の順くらいで並べ替えて、近いものをグループにまとめて、体系的に説明することに主眼を置いています。細かいことはコードを書く時に調べれば良いですし、まずは参考書として手元に置いてもらえればと思います。LV2開発で一番難しいのは「ガイドとなる資料がないこと」「何を読めばいいのかよくわからないこと」だと思うので。

MIDI 2.0本もこちらも、半分くらい…は盛りすぎなので3割くらい…は「ユーザー」向けの内容になっていて、プログラミングガイドっぽくないところもあるのですが、LV2をサポートするDAWに慣れている人はそうそういないと思うので*1、「使い方」から書いています。スクショがずいぶん入ってます(当社比)。自分で書いたものがそこまで親切なことは無かったので、なんだか新鮮な気持ちです。

LV2開発そのものに興味のない人(VSTとかJUCEが使えれば十分という人)にとっては、この本の内容のうち、LV2開発固有の事情(たとえばTurtleの書き方とか)が役立つことは無いでしょう。LV2は音声処理とUIをしっかり切り分けたり、Atom Sequenceというリアルタイム処理に対応した構造化データを扱えたり、メタデータインスタンス生成前に様々な情報を取得できたりする、といった部分は隣の芝生の話として参考になるかもしれません。LV2が全体的にどんな機能を有しているのか把握できるかと思います。

今回新刊2冊とも表紙は自作なのですが*2、LV2本のほうはスクショをゴニョゴニョいじっただけのものです。本文のほうでも紹介している新進気鋭のLV2をサポートしているDAWZrythmの上でFM音源エミュレーターOPNplugとCarla経由でVST2のCollectiveを動かしている絵です(あれ、よく考えたらaria2webを動かせばよかったのでは…)。

MIDI 2.0本も合わせて昨日入稿したので、問題がなければ紙版も販売できる予定です。紙があってもなくても1000円という価格設定にしてあります。同じ値段なら紙が付いてこないともったいない…!という方には紙+電子版がおすすめです(紙だけ、はありません)。わたしみたいに同人誌を置くスペースが気になってきている人には電子版オンリーがおすすめです。

*1:かくいうわたしも普段DAWをあまり使わないので同じ穴の狢なのですが

*2:いつものイラストの依頼はM3のほうでお願いしてしまったので