Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CLAPオーディオプラグイン is 何?
Search
Atsushi Eno
May 26, 2022
Technology
1
1.3k
CLAPオーディオプラグイン is 何?
at MusicLT vol.2 (2022/5/26)
Atsushi Eno
May 26, 2022
Tweet
Share
More Decks by Atsushi Eno
See All by Atsushi Eno
[COSCUP2024] Catching up Trends in Audio App Development
atsushieno
0
390
Building Kotlin Multiplatform Libraries in 2024
atsushieno
0
3.3k
Kotlin Multiplatformで MIDI 1.0/2.0 ライブラリを作っている話
atsushieno
1
650
building_audio_plugin_ecosystem_on_Android.pdf
atsushieno
0
1.1k
get updated to the latest realtime audio processings knowledge base (2023) (再履修: 2023年までの リアルタイムオーディオ処理)
atsushieno
1
1.1k
learning how DAWs work, with Zrythm
atsushieno
0
1.1k
What for, Where and How to Adopt MIDI 2.0
atsushieno
0
1.2k
audio plugin format study meetup 2022.7.6 (JP)
atsushieno
0
1.6k
MML to MIDI 2.0 to DAW
atsushieno
1
2k
Other Decks in Technology
See All in Technology
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
100
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
170
飲食店データの分析事例とそれを支えるデータ基盤
kimujun
0
160
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
870
強いチームと開発生産性
onk
PRO
35
11k
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
320
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
110
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
4
230
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
760
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
KATA
mclloyd
29
14k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Automating Front-end Workflow
addyosmani
1366
200k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Building Your Own Lightsaber
phodgson
103
6.1k
The Cult of Friendly URLs
andyhume
78
6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
Transcript
CLAPオーディオプラグイン is 何? atsushieno
CLAPとは 2021年末にu-heとBitwigがKVRでサポート表明して話題になった、 新しいオープンソースのオーディオプラグインフォーマット
オーディオプラグインフォーマットとは 「任意のDAW」と「任意の楽器やエフェクター」の任意の組み合わせでお互いが問題なく 動作する仕組み(API、ライブラリ、フレームワーク) Steinberg VST, Apple AudioUnit (AU), LV2 (LADSPA
v2), DirectX plugin (DX/DXi)など source
u-he? Bitwig? KVR? u-he : オーディオプラグインベンダーのひとつ (Zebra, Hive, etc.)
Bitwig : Bitwig Studio DAWの開発元 KVR : 音楽系ポータルサイト(新製品の告知などを自分で出せる)
新し…新しくない? 実は昔からあった Post
プラグインAPIってどんなやつ? プラグインはこういうやつを実装する(free-audio/clap-plugins のC++コード)
CLAPの特徴 (1) MITライセンス • 誰にも許諾を得ること無く商用プラグインをリリースできる • VST3はライブラリなのにGPLv3 = 実質商用ライセンス or
自由ソフトウェア ◦ JUCEとかもそう
CLAPの特徴 (2) C API 他言語でバインディングを作りやすい(ただRT audioの制約は厳しい) 実際にプラグインを作るときはC++等でいい
CLAPの特徴 (3) パフォーマンスが良い? プラグインリストの取得が高速 (LV2もそう) スレッドの生成をホストから指示できる (LV2もそう) プラグインのリソースを分離しており、ホストで共有できる (KVR)
CLAPの特徴 (4) シンプルで誤解の余地が小さい? Cヘッダコメントが想定される挙動を 細かく説明している (ドキュメントはほとんどない) events.h
CLAPでできること 全部拡張機能として作り込まれている
LV2でもよかったんじゃないの? (ISC, C API, cross-plat...) u-he「詳しくないんだけど、移植してもらったら投げ出されたことがあって…」 (LV2はわりと難解なのでまあわかる)
CLAP対応プラグイン u-he ※READMEのリンク先が死んでて見つけられず SurgeXT OSSのシンセサイザー メイン開発者がCLAPにも少しコミットしている nightly buildには含まれている(らしい) ※現状ほとんどない(free-audio/clap-plugins などはある)
CLAP対応DAW Bitwig Studio 4.2 beta1以降で隠しオプションを有効にすれば利用できるが古い 現在 = 2022/5/26 時点でのCLAPバージョンなら4.3beta ※現状ほとんどない(free-audio/clap-hostなどはある)
新しいオーディオプラグインフォーマットの課題 DAW「新しいプラグインフォーマットに対応するのは大変…」 プラグイン「新しいプラグインフォーマットに対応するのは大変…」 …でもC++の閉鎖空間とSteinberg(とApple)の独占状況は何とかなったほうがいい
展望: 対応プラグインは増えるのか…? マルチプラグインSDKを使う • JUCE + clap-juce-extension JUCEが想定しているプラグイン機能の全てに対応しているわけではないが、基本部分は使える • Avendish
CLAP export DSPなども作れる新手のメディア系 C++20ライブラリ(動作未確認) プラグインラッパーを作る • どのプラグイン規格も概ね同じなので、他の規格のプラグインを包み込むプラグインにする ◦ lv2vst (LV2をVSTとして使う) ◦ LinVst, yabridge (Windows VSTをwine経由で使う) →そこそこ楽観視してもいいのではないか
Resources 資料・コミュニティ https://github.com/free-audio/clap https://www.kvraudio.com/forum/viewtopic.php?t=574861 https://www.theaudioprogrammer.com/ のDiscord server (#clap)