5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

JUCEAdvent Calendar 2017

Day 16

JUCEのメモ書き

Last updated at Posted at 2017-12-15

はじめに

gyaboと申します。
まあ恥ずかしいことにJUCEはCEDEC2016の時に初めて知って、それ以来ウォッチし続けてたんですが、書き捨てまくってるせいでプライベートでちゃんとした開発環境がまだ無いなってことで整理整頓する意味でまとめます。

目標

VSTプラグインのひな型を作ります。
※推敲してたら実は前日のアドベントカレンダーが極めて優秀で(PCMシンセ)重複しまくってるのでぜひご覧ください。

@COx2
JUCEのAPIでPCMシンセサイザーを作る
https://qiita.com/COx2/items/e50e8f29bea633c6e5b0

前提環境

Windows 10 64bit, 適当なマシンです。
VSTホストは何かしらあればいいので、Reasonでもいいし、FL Studioでもいいかな。

初学者向けの設定は優秀な記事にゆずるとして

もろもろ登録終わらせると、以下のように出てきます。

image.png

音作れるVSTプラグインを作りたいので「Audio Plugin」を押します。

image.png

適当に入力してCreateします。

image.png

うまい感じでプロジェクトが作成されると上記の通り表示されます。

image.png
こんな感じ。次は、VStudioのアイコンがあるのでクリックするといつものが立ち上がったので、おもむろにビルドします。

image.png

ペンネームみたいな本名見えてるけど関係なし。淡々とビルドします。VS2017です。


ここで環境変数周りでコンパイルエラーになったんですが、Windows SDK最新周りが入っていないからとのこと。
JUCEプロジェクトは作ってくれるけどWindows SDK周りは見てくれていないので、淡々と本家からinstallする必要あります。

出来上がったVSTを確認する

うまくビルドできると、こんな感じでdllが作られています。こいつがVSTプラグインのようです。
image.png

VSTを入れる

こんな感じでコピペしてフォルダにいれます。

image.png

ホストアプリから起動する

FL Studioのライセンスを持ってるので、FLから起動します。
FL Studioは以下。
https://www.image-line.com/flstudio/

plugin databaseから新しく追加されてますね!ってVSTを選んでトラックに入れたりすると、
以下の通り出ます。
image.png

やったね。あとはやりたい放題だ!
すごいな。こんなあっさりとVST作れるなんて。

JUCEを使うメリットを考える

あとはMIDIのコントロール受け取ったりするだけのこまごまとした処理ばかりのはずなので、軽く感想。
生のVSTSDKを使った記事は過去に自分のサイトに書いています。

VSTプラグインを自作する
http://gyabo.sakura.ne.jp/tips/vst0.html

GHP - PROG-RAHAM - SOUND
http://gyabo.sakura.ne.jp/progsnd.html

で、VSTのSDKは割とちょくちょく変わる印象あって(?いつ頃の話だろう)めんどくさいなと思っていたんですが
JUCE frameworkでGUIのひな型を含めてすべてお世話してくれる環境を一撃でもらえる恩恵は非常にでかいです。

もちろんVSTSDK側のサンプルもそれなりにできてて良いのですが、本質的なところじゃないところで脳のリソース使うのは浪費だな~と思うくらいJUCE側よくできている印象があります。

JUCEのサンプルについて

2017/12現在、以下のフォルダにあります。
juce-huckleberry-windows\JUCE\examples\OpenGLAppExample\

私は本来はグラフィック屋さんなので特に目をひいたのがOpenGLのサンプルです。
juce-huckleberry-windows\JUCE\examples\OpenGLAppExample\Source

MainComponent.cpp側にゴリゴリシェーダーとか書いてあって、そのままいろいろ改造して使えそうな雰囲気もあります。
サウンド周りとグラフィック周りが同時にいろいろサポートしてくれるフレームワーク、サウンド周りがたいていおざなりだったりするのですが、
JUCEはよくできています。ここまでお世話してくれれば何か一つ作れそうな気がします。

終わりに

JUCE、サンプルを淡々と紹介するサイトとかあったら需要あるんですかね。
とにかく幅広がってて楽しいフレームワークなので触ってみてください。

レッツエンジョイJUCE!

おまけ

image.png

JUCEのロゴっぽいのをねらってたんですが、失敗しました。
以上です。

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?