2013どうやら、Max6.1で、Genに(Vstプラグインとかを書くときに使える)Cのコードを吐き出す機能が追加されたようです。僕の記憶では、確かMaxの4(Max/MSPと呼ばれてた時代)のときには、vstを吐き出す機能があったと思うのだけれど、5,6でなくなっていました。この記事は既にC++でvstプラグインを書いたことがある人を対象にしています。イメージがつかめていないひとは、こことかを読むと良いと思います。手順は、Cycling’74のwikiに乗っている通りですが、解説します。僕はwinユーザーなので、VisualStudioを使ってコンパイルする場合で書きます。http://cycling74.com/wiki/index.php?title=Gen_Code_Export_VST1Maxを6.1にアップグレードする上にもかきましたが、Max6.1じゃないとこの機能は使えません。あと当たり前ですが、Genも買ってないとだめ。2コンパイル環境を入手するvstプラグインを書く人なら大丈夫だとは思いますが、XcodeもしくはVisualStudioの2010以降が必要。(僕はVS2012で試しました。Developer登録をして、SDKを入手します。Genのexportcode機能はVST2.4までしか対応してなくて3.x以降は未対応なので注意。4Max上で,gen~の中にvstプラグインに吐き出したい処理を書く5作ったgen~オブジェクトにexportcodeメッセージを送るこの辺はMax上でgen~のヘルプを読んでも良いかもですね。メッセージを送ると、gen_exported.cppとgen_exported.hというファイルが生成されます。6wikiからサンプルコードを落とすhttp://cycling74.com/wiki/index.php?title=Gen_Code_Export_VSTからMyVSTPlugin.zipをダウンロードします。7落としたサンプルコードのプロジェクトを開くwinの場合はVS2010用のプロジェクトが用意されてますが、VS2012で開いて、それ用にコンバートしてしまっても大丈夫みたいです。開いたらリソースに、先程落としたVST2.4のSDK内のvstsdk2.4\public.sdk\source\vst2.xの中身を加えます。ここは普通にC++で直接vstプラグインを書く時と同じですね。さっきgenでexportした2つのファイルを、サンプルコードのフォルダにある同名ファイルに上書きします。8コンパイルコンパイルします。するとdllが吐き出されます。ヽ(‘ω’)ノ三ヽ(‘ω’)ノ普通にVS2012でvstプラグインを書くときは、プロジェクトの設定とかdll吐き出すときの設定をしないといけないですが、今回はサンプルコードを改造する形で作るのでそのへんは必要ないです。‘ω’)┘まとめ音声処理を行う部分を、genで吐き出すことができる感じです。dllが吐き出されるわけではない。それでも十分有用なので、max6.1+genを持っているvstプラグイン開発者の人は、使ってみると面白いと思います。Maxでvstプラグイン書けるって、すごいことです。実際にどんな音がでるのか確かめながらパッチを作っていって、完成したらそれがそのままCのコードになるんだからすごい。手で書くときは、いちいちコードを書き換えて→コンパイルして→聴いて確かめて→ってことを繰り返さないといけないわけですからめっちゃめんどいわけです。この機能はベータ版らしいですが、十分使えます。僕も折角持っているので、使っていこうと思います。雑な感じでしたが、おしまい。※余談ですが、Max6.1の日本語化パッチが出てるっぽいです。https://www.mi7.co.jp/products/cycling74/downloads/6.0は日本語から英語にもどすのがファイル操作とかしなくちゃいけなくてちょっと面倒でしたが、6.1では楽になってます。Conferanceに行ってきました。blogイベント告知,技術的な備忘録など。