びぃえるくぅと。

ガラケーは打楽器。

2015年振り返り

本日大晦日ですね.自分でもあっという間で驚いています. もっと驚いているのがこの記事を研究室で書いているって事ですけどね.

簡単にですがかすかな記憶を頼りに今年印象に残ったこととかを,とりとめもなく書いていきますね.

1-3月

大学で,現在所属している研究室への配属が決まった頃でしたっけ?自分でも覚えていません. 年度末ごろに,研究室を卒業される方と新しく入る僕たちの代全員を巻き込んで歓迎会を開いてくださり, 今の研究室での人たちとの交流が本格的に始まったのを覚えています.

シンセデザイン研究部(以下,シンセ研.所属していた大学音楽サークル)では先輩の卒業コンサートがあり, 僕は確かメロコアいろいろバンドでドラムと,DJをされている先輩の横でVJをしたりしました.

メロコアいろいろバンドでは,NOAのUglyとか,Leftの僕らの歌とかやりました.もうめちゃくちゃ楽しかったです.

すごい覚えづらいドラムとか,BPM240なメロコアを4分続けるのとか,すごい大変した.多分今はもう叩けない.

あと,このころやってたVJではまだライセンスの生きているResolume Avenue使ってたはずです. 先輩がアニソン流したらそれをyoutubeで検索してブラウザ全画面で出すっていう超適当プレイしていました.

ちなみに,1月3日に別の先輩に誘われて,秋葉原のFreshというところでアイドル撮影に連行されました. 人をまじめに撮ったのは初めてですが,水着の人を撮ること自体もちろん初めてで,のぼせました.

そして1月30日には,ニコル君など大学でDJをやってる友達ときゃりーぱみゅぱみゅの誕生日イベントに行きました. 人生初のDJイベントなのに人生初のageHa,半端なかったです.

4-6月

研究室に正式に配属され,いろいろな話をきかされ,輪講(ゼミ)がスタートしました. CiNiiとかIEEExploreとかで面白そうなものを見つけて先生の前で発表して, それ本当に使えるの?って言われまくると同時に「卒研でやりたいこと見つかった?」って言われるようになります. このころから毎週のゼミに追われる感じになります.

同時に,なぜかNode.jsとElectronでTweetDeckもどきなオレオレTwitterクライアントを作ることに奮闘し始めました. 実装できたのはHome Timeline, Notification, My Tweetsみたいにタイムラインを分けたりマルチアカウントに対応したり, なにかとTweetDeckをパクっては機能を実装していましたが,HTML5, CSS3での複雑なレイアウトの設計や, JavaScriptでコードの見た目のきれいさを維持することや保守しやすいコードを書くことなどを意識して書く経験ができました.

そして,SHOW BY ROCK!! のアニメがありましたね.あれでアニメをよく見る体質へ変わり始めました.レトリーは至高.

また,先月ぐらいからニコル君に交響詩篇エウレカセブンをめっちゃ推されて,本編,AO,劇場版をレンタルしてぶっ通しで見てすごいいい気持ちになっていた所に, Back 2 Bellforestというエウレカセブン主体のDJパーティーに一緒に行こうとニコル君に誘われて行きました.人生初の「箱」です. この時期ごろからTwitterでクラブ界隈の人たちをフォローし始めます.

7-9月

卒研のテーマが大まかに決まって研究の中間発表等があった時期です.今ほどではないですが研究内容にすごく追われていました. その追われているときに,弊学の学祭の生放送企画に技術担当として助っ人で入ったりしてた記憶があります.配線から配置からシステム構築から技術系はなんでもやりました・・・.

そして先ほどから登場しているニコル君が,8月28日にGIG&TAKEでDJデビューしました.もちろん見に行きました. 彼はほとんどつながりのない状態から一人でこの界隈に入っていったので,この時は本当に尊敬しました.自分が今VJで出演できるのもニコル君がいてくれたおかげなので.

ちなみに先述の中間発表ですが,10/2に期待通り先生方にボコボコにされて終わりました.

10-11月

この頃からはブログにちゃんと書くようにしているので,詳細は過去の記事を見たほうが良いかもしれないです笑

中間発表が終わってホッとするのもつかの間,僕も10/10にmusabeat04にてVJデビューをすることになりました.自分にとっては記念日です.

10/31から11/1に,山梨大学のDJサークルBouncYが学祭でDJイベントをするということで, TwitterでしかつながりのなかったVDJ:gekkoさんなどメンバーにお会いしたくて中央線の鈍行で甲府まで行き,実際に現場に行ってきました. とても良い経験でした.プレイスタイルとか,その時の自分は考えもしなかったので,会話中ずっとおわおわしてました笑.あとMotion Jpegの良さを学びました.

11月20-22日にかけては学祭があり,店でチュロス揚げたりシンセ研のライブでMuseのコピーバンドやったりしました.

そして11/25でGIG6TAKE 9があり,ニコル君と一緒に僕もVJで参加することになりました.VVVVでVJ環境自作し始めました.

12月

研究そっちのけでVVVVで遊んで,いろいろ改良したりして遊んでいました.

クリスマスには GIG&TAKE 10 にレギュラーVJとして出演しました.

そして年末にARIAにハマりはじめ,さっそくBD-BOX買おうか悩んでいます.
アウグーリ・ボナーノ

まとめ

  • 研究って大変だけど結果でると楽しい
  • 本当にVJで活動することになってびっくり
  • ドラムをそんなに叩かなくなったな

最後に

本年は様々な方に大変お世話になりました.自分も今までとは全く違う新しい方々と知り合う事ができ,今まで以上に充実した1年だったと思います.

皆さまも,どうか良い新年をお迎えください.

追記

某学会に提出する予稿の初版がやっとできました.進捗ダメです.f:id:yadex205:20151231155539p:plain

FlipFlopで怪奇現象起こった

備忘録です。

  • FlipFlop (Animation) はOnOpen時に一瞬Ø(空集合)になる?
  • わりと関係なさげなものまでØになって壊滅的になることがある?
  • 今回、FlopFlopとFrameDelayを組み合わせた悪魔の回路を作ってたので起動時に爆死

FlopFlopの挙動はよくわかってませんし、逆に自分のミスの積み重なりの結果の可能性ももちろんあるという感じで、よくわかりません。。

好きだったフォントが消えた (UEC Advent Calendar 2015 16日目)

これは UEC Advent Calendar 2015 16日目の記事です。

好きだった、というより、慣れ親しんだフォントが消えた話です。

Agency FB

Font Bureau社が販売しているフォント製品の一つに Agency FB というものがあります。製品ページはこちら

そのほか歴史的な背景などは以下の記事などをご覧いただければと思います。

リンク先や画像検索で見ていただければわかると思いますが、とてもかっこいいです。自分は言葉足らずなので小学生並みの感想しか言えないですが、大好きです。

出会った経緯

このフォントに出会ったのはおそらく中学3年くらいの時だと思います。

当時鉄道ファンだった自分(今のハンドルネームの205はそれが由来)はそれこそ写真を撮りまくってた訳ですが、 僕の周りの鉄道ファンである友人達がなぜかみんな自分のホームページを持っていて、撮った写真を掲載していたのです。

自分もそれにならって、Infoseek(懐かしいw)で無料ホームページを作って、自分の撮った写真を載せ始めました。 そこで、サイトのタイトルはなんとか決まったけど、なんかロゴが欲しいと思い始めます。ちなみにタイトルは英語だったので使えるフォントはとても多かったわけです。

そして、Office Word を開いてタイトルを打ち込んで、フォントをいろいろ試しているときに「これだ」と思ったのが Agency FB でした。(アルファベット順でかなり上の方に来るってのもあると思いますが・・。) 当時のサイトはもう手放してしまいましたが、自分のロゴを作るときにも Agency FB を使ったりして、今でもお世話になっています。

余談ですが、当時のサイトはCSSを一切使わず作ったので、HTMLがFONTタグとかMARQUEEとかCENTERとか懐かしいタグで溢れかえってます。

なぜ Agency FB を持ってたか

Agency FB に出会った当時使ってたOSは Windows XP です(Vistaがもう出ていたけどみんな使ってなかった頃)。今の Win8.1 や Win10 のようにデフォルトで Segoe とかメイリオとか游ゴシックとか高品質フォントが最初から入ってるわけではないし、もちろんFont Bureau社の製品を買ったこともないです。

当時はわからなかったのですが、あの邪悪な創英角ポップ体などと一緒に、Agency FBも Microsoft Officeに標準搭載されているフォントだったのです(厳密にはAgency FBはOffice Publisherに搭載されていた)。 そういえば当時使ってた Office は2003だったなぁ。

前述のリンクで Microsoft Typography のページが何で存在するのかの答えは、MS Office に含まれてたから、かもしれませんね(未検証)。

Officeから消える

ここでタイトル回収です(違

最近自宅のデスクトップをWindows10しようと思ったとき、当時動いていたWin7だとブルースクリーンが頻発していてすごい不安定な状態だったので、Win10をクリーンインストールすることにしました。 もちろんこの時点で入っていたフォントは全部消えます。そしてWin10が入りある程度セットアップを終え、Microsoft Office 2016 を入れました。これで追加フォントも入ったわけです。

ところが、Illustrator を開いて、Agency FB を使おうとしてもリストの中に出てきません。Officeを開いてもフォントリストの中に入ってないです。

まさかと思って C:\Windows\Fonts を見たら本当に Agency FB がインストールされておらず、どういうことかと思って前述の Wikipedia の該当記事を読んだところ

Two styles were supplied with Microsoft Office in the 2007 and 2010 editions but removed from Office 2013. Microsoft has advised Office 2013 users missing the font to copy it from a computer running an earlier version of Office.

あ、もうOfficeに含まれなくなったんだ。。。

各Officeに含まれているフォントの一覧はこちらから見ることができます。確かに 2013 のリストに Agency FB がありません。

MSいわく、新しいOfficeに含まれなくなったフォントは以前のバージョンのものからコピーしてきて良いらしいので、Agency FB が残っていたノーパソから移してきました。 (コピーしてきても良い、ということについてはこちらを参照)

ということで、Office 2013 以降、僕の好きだった Agency FB が含まれなくなってしまったのです。

最後に

Office に搭載されるフォントがどのような基準で選ばれているのかはわかりませんが、まさか自分のお気に入りだったのが消えてしまうとは思いませんでした。残されたデータは大事に持っていたいと思います。

あ。

またしても電通大要素がなくなってしまったので。最後に、ドン。 f:id:yadex205:20151215141129j:plain

そして、明日17日と明後日18日の担当がまだ決まっておりません。UEC Advent Calendar 2015 に参加してみたい方是非是非、電通大に対するイメージなどでも良いので書いてみてください。

VVVVを使って初めてVJをした話 (UEC Advent Calendar 2015 13日目)

これは UEC Advent Calendar 2015 13日目の記事です。

おととしのUEC Advent Calendar でも確か記事を書いたような気がします。うちの大学の学園祭の歴代パンフをひたすら並べるだけのを。

今回は、先月末に GIG&TAKE というイベントでVJをした(その時の記事)ときに使ったツールの話などをしたいと思います。投稿が遅くなりすみません。

VVVV

早速ですが使ったツールの紹介です。

「VVVV」という読み方のわからない、ビジュアルプログラミング環境があります。公式サイトは vvvv.org です。 公式では a multipurpose toolkit という風に書かれています。日本語サイトだと「何でもできるツールキット」と書かれています。確かに、やれることは制限なく幅広く、という印象です。 (PCのパフォーマンスが一番の懸念事項。。

ビジュアルプログラミングですので、プログラムの組み方は

int calc (void) {
    int a = 1, b = 2;
    return a + b;
}

というのではなく。

f:id:yadex205:20151213225001j:plain

の用に、ノードと呼ばれるものを線で結んでいくことで行っていきます。

なんか興味が出てきた、という方は公式サイトでダウンロードして遊んでみてください。 公式の日本語チュートリアルもありますよ。

そして数あるノードを使っていくことで、音のリアルタイム処理、プロジェクションマッピング、はたまたテキスト処理のようなことまでできます。

ちなみに同ジャンルの環境としては

などでしょうか。

VVVVを使い始めた理由

VVVV を知る

実はVVVVに触れ始めたのは今年の11月頭なので、まだ触り始めて1か月ちょっとしか経っておらず、まだ使いこなせてない感じです。 11月頭に何があったかというと、ギグテク9へVJで出させていただく話になった時で、さらに前の10月のmusabeat04で体験版Resolume Avenue を使って撃沈したばかりです。

これ以上体験版で製品ロゴ出しながらやるのはダメだという思いは強くありましたが、ソフトを買うお金がないし、無償ソフトを見てみたけどいまいち使い方が。。という状態でした。

そんな状態で、Spout (Windows版Syphonのようなソフト)が利用できるソフト一覧を見ていたところ、(非商用などの制限も含め)無償で使えて、実運用に耐えられるかなと思ったものが

  • OpenFrameworks (C++ライブラリ)
  • Processing (Java)
  • Cinder (C++ライブラリ)
  • TOUCH DESIGNER
  • VVVV

・・・全部開発必須!!しかもうち2つはC++のライブラリ!!うああ!!

この中で、ノードをつないでいくタイプのものは VVVV と TOUCH DESIGNER です。その中で、日本語でもドキュメントがあり学習コストが低そうなのがVVVVでした。

後押し

そしてもう一つ自分がVVVVを使うきっかけになったのが、「あのタグで待ってる」というVJソフトの存在でした。Macなら簡単に使えるようです。

これは有志のVJさんたちが開発されたものなのですが、VVVVと同じくビジュアルプログラミング環境であるMAXを使って開発されてたので、VVVVでも簡単なVJソフトが作れるだろうという期待を持てたわけです。

作ったものを本番に持ち込む

こうしてVVVVを勉強しつつ自分のやりたいことができるようなものを作り始めました。

つぶやきの通り、VirtualDJのVJ機能みたいなことができればと、2つの映像をミックスするものを作った所です。フェードできた時はすっごくうれしかったです。 そんなこんなで、ギグテク9のときに使ったものが以下のような感じです。

左右3レイヤー系6つの動画を走らせる、PCにとっては鬼畜の所業。でも3つ重ねるのが好きなんです。 なお、マウスでもある程度の操作はできるよう設計しましたが、実際にはMIDIコンでほぼ動かしました。

なお、開発をThinkStation (Xeon E31230)で行ったのに対し実運用はThinkPad(Core i5)でやったので、出力がすごいちらつく時がありました。

その後

実はギグテク9の後に、レギュラーでVJやらない?というお声をかけていただき、実際に今月25日のギグテク10からレギュラーでVJすることになりました。大変うれしいし、ありがたいです。。

ですので、使った環境をさらにより良いものにするべく改良を加えていかなければいけません。ということで途中経過ドン。 f:id:yadex205:20151213233138j:plain

現在は、KORGのKaossPad Entrancer 的なエフェクト機構を実装できないかと頑張っている感じです。

最後に

なんだかとりとめもない記事になってしまい、すみませんでした。 UECアドベントカレンダ記事なのにUEC関係ないやんと思われそうなので、関係しそうなことを一つ。

今月上旬に、大学のある調布市の布田天神社で「調布あかり計画」というイベントがあったそうで、そこでプロジェクションマッピングが行われたそうです。 そして、その時使われていたソフトがVVVVだったということです。その方がブログを書かれてますので是非そちらの記事をご覧ください。

でどうやらその方とうちの大学で繋がりのある方がいらっしゃるとのことで、、一応これでUECとVVVVがつながったね、ということにしておいてください。。 何かあれば追記などしますので、コメント欄に希望など書いてくださるとありがたいです。

以上となります。長文になりましたが読んでいただきありがとうございました! 明日(20分後)の担当は @masawada さんです。

追記

前回などでVVVVを使ってVJして以来、「自作ソフトを使った」という感じで自分でも言ってしまっていたのですが、個性でもなんでも無いので、あくまで「VVVVというソフトを使ってVJをした」という程度にとどめていきたいと思います。

GIG&TAKE vol.9 にVJで出演しました!

こんにちは。前回に引き続いてまたVJ出演の話になります。

2回目のVJ出演

今回は、高円寺にある DJs Bar Cave (Homepage)にて開催された、 アニソンクラブイベント GIG&TAKE vol.9 (Tweetvite)で VJさせていただきました。出演された方々やイベントの詳細については上記のTweetviteを見ていただければと思います。

VJはユータローさんと交代しながらやっていました。

前回初めてVJやった時とは異なる点がいくつかあって

  • 純粋に2回目なので慣れてきている
  • 持ち素材が増えた
  • 以前GIG&TAKEに行ったことがある

といった感じです。どんな具合に素材を組み合わせてみようか、といったことについては少しは成長した状態で 考えることができたのではと思います。 一番大きかったのは、以前そのイベントに行ったことがあったので、VJがどんな感じでパフォーマンスされてたかを 知っていて、つまりはどんな感じにVJすればよいかの参考になった点です。ユータローさんにはホント頭が上がりません。。

よかったこと

まずは、この界隈に僕を引きずり込んでくれた僕の友達と共演(?)できたことです。彼がDJやってる時間帯に僕がVJを担当でき、 彼が流したアニソンRemixに合わせた映像を2, 3回ほど出すこともできたので、とても満足でした。なおアニソンVJとしては Fランな僕ですので、これからも精進します。

そして、今回のVJについて、他の方から褒めていただけたのが本当にうれしかったです。大学のサークルの外でVJ初めて良かったと思いました。 現地では眠さとコミュ障でアレでしたが実はめっちゃくっちゃ喜んでました。特に、僕が初出演したときに共演された方々に褒めていただけた ことが何よりもうれしかったです。

悪かったこと

一つは、前日徹夜していたので後半の方すごく眠くなってしまったことです。体調を整える基本的なことができてなかったので、今後は睡眠はしっかり取って臨もうと思います。

次に、コミュ障発揮して数人に挨拶できませんでした、ごめんなさい。。

そして、crankさんが「SUSHI食べたい」のRemixを流しているときにそのPVを出したのですが、さらに上に2レイヤー動画を重ねてしまった結果、 よく見ないとPVが見えないということに後々気付きました。今後の課題とします。。

自作(大爆笑)

  金がないからGrandVJやResolumeを買えない。ということで今回VJソフト的なのを作ってきました。本当に博打でした。

名前はとりあえずBERKUTって付けてます。なんか昔JavaScriptで同じ名前を付けた全く関係ない自作ライブラリあったけどもう気にしない。

仕組み的なことについていうと、VVVV(Homepage)という「ビジュアルプログラミング言語」な環境を用いて作りました。 同ジャンルのものでは、MaxやPureDataQuartz Composerなどがありますが、Windowsで使えて、非商用であればフリー、かつ日本語の文献があるものということでVVVVを選びました。

このVJソフトを作った話の詳細は、後日記事でまとめようと思っていますので、お待ちいただければと思います。ぶっちゃけほとんどライブラリに頼ってます。

機能としては、A, Bの二つのデッキが左右にあって、それぞれ3レイヤー動画を重ねられます。重ね方には乗算や差分など様々な方法が選べ、またOpacityも変更でき、バイパスすることも可能です。 そして、AとBをフェーダーで行き来するような感じです。なお、Roland V-4シリーズの「Transform」に相当する機能も付けているので、フェードじゃなくて一瞬で切り替えることも可能です。

目玉機能(?)はBPM Syncです。まず動画ファイルが「foo_beat_8.avi」のように「_beat_n」がファイル名の末尾に入っており、その動画を入れたレイヤーのBPM Syncスイッチをオンにすると、Syncしてくれます。 なおBPMはキーボードで入力はもちろん、Korg nanoPad 2でのタップをもとに調整してくれるようにしました。個人的に一押しなのは、BPMに合わせて画面の背景色が発光するところです。

この子の悪いところは、ひたすら重い点です。ThinkStationで開発していたので気付かなかったのですが、ThinkPadで動かしたら動画テクスチャが飛び飛びになったり不具合満載でした。 VVVVに仕方なく触り始めたのが11月入ってからで、最適化ガン無視で作ってたツケが回ってきた感じですね。何とかして軽量化を目指したいです。

おわりに

素直にGrandVJを買いたいです。

GIG&TAKE vol.9に出演された皆様、来てくださったお客様、DJs Bar Cave のスタッフの皆さま、本当にありがとうございました!!! とても楽しかったです!!!

初VJしました。

もうそんなに暑くはならないですね。Yadex205です。
今日インフルの予防接種してきました。歴代2番目くらいに痛かったです。はい。

初VJしました

twodar さんをはじめとする個性あふれる方々が主催されてるパーティー「musabeat」が10/10(土)にあり、 そこで初めてVJで出演させていただきました。

今回、ユータローさんとねいさんと僕で3人でVJすることになり、お客さんからも「今日VJ多いな!笑」というお言葉もいただきました。 本当にお二方に助けられっぱなしでした、、ありがとうございました。。

お店のレイアウト上DJされてる方のすぐ脇でVJする形になり、結果としてお客さんがこっちを向いてる感じだったので、 今までとまったく違う立場でアニソンパーティーに参加している、ということをひしひしと感じながらVJしていました。 自分は映像をガチャガチャするのに必死だったんですが、色々と考えさせられることもあって本当に良い体験でした。

反省

今まで大学のサークルで何回かVJをやったことがあったのでその調子でいけるかなと思ったのですが、完全に甘かったです。 ただカッコイイ映像流しときゃええんでしょってのは、特に今回のようなアニソンパーティーだとよくなかったですね。 お客さんが流れてる映像をよく見てらっしゃることに気づかされて、映像も単なる雰囲気作りのためだけじゃないなと。

今回のようなアニソン主体のパーティーでアニメ映像一切持ってこなかったのは一番の痛手でした。アニソンはアニメのソングですし、 せっかく映像出せる環境があるのに、アニメ映像を持ってこなかった訳です。 考えたらアニソンパーティーでアニメ流すだけじゃなくて、新木場のAgeha中田ヤスタカさんがDJされてるときもPerfumeのPVとか流してたなって。

カッコイイ映像とかは確かに必要だと思うのですが、そうじゃないメインの映像もこれからしっかりと用意していきたいと思いました。

よかった事

まず、初めてV-4をVJ用途で触れたということです。大学サークルだと4カメの映像を切り替えるためにV-4EXをつかってて、ビジュアルパフォーマンスとかそういうのではなかったので、 今回すごく面白かったです。ただサークルでV-4やV-4EX触った経験も少しは生きてて、「これ押したらこんなエフェクトがかかる」とか大まかにわかってたのは大きかったですね。 ただやっぱ雑にエフェクトかけたりしてしまったので今度は落ち着いてやりたいです。 あと、VJのユータローさんのV-4の使い方が面白くて、仕込んでおいたネタ画像をTransformでサブリミナル的に出すのはちょっと真似してみたいなと。

そして、今回持ってったThinkPadの内蔵ドライブをSSDにしていて正解でした。お客さんが跳ねてすごく揺れるのに加えて、自分が持っていったPCスタンドがすごい揺れてて、 これHDDだったらまともにデータ読み込めなかっただろうなと思いました。あと実際VJソフトが安定して動いてくれます。

失敗したこと

さっきの反省とは別に、小さな反省点がいくつかありました。

まず、接続したUSB機器が多すぎて給電が追いつかす機器の認識ができなくなり、そのたびにWindowsを再起動するハメになりました。 繋げていたのは

  • AKAI APC mini
  • KORG NanoPad2
  • KORG NanoKontrol2
  • Blackmagicdesign Intensity Shuttle

このうち一番電気食ってそうなのがIntensityだったので途中からはずしました。USB3.0を全力で使うHDMIキャプチャです。 予定としてはこれにGoProからの映像を入れて、VJソフトでエフェクトかけて~みたいなことをやるはずでした。 なので、次回までには外部電源の使えるUSBハブとかを手に入れておきたいですね。

あとは、さっきも書いたのですが自分のPCスタンドがえらく揺れるので、内蔵ドライブはSSDだから良いのですが、絶対映像ライブラリが肥大化して256GBのSSDに 入りきらなくて外付けHDDが必要になるので、ゆれると多分HDDが読み込んでくれなくて困るだろうと。PCスタンドはレビューみて安定とかその辺チェックしたほうが良いですね。。

そして、VJソフトを体験版モードで使って本当にごめんなさい。ソフトのロゴが終始映りっぱなしでした。ライセンスキーは大切に扱います。

おわりに

今回の musabeat 04 で本当に良い経験をさせていただきました。 主催されてる方々や今回一緒にDJ, VJされた方、武蔵小杉アルファクロスのスタッフの方々、来ていただいたお客さんに本当に感謝しています。

ありがとうございました。これからも頑張ってVJしていきたいです。

WinのResolume上でTwitterのタイムラインを表示させる (Spout, Processing)

VJどんな感じにすればいいかいろいろやってみているYadex205です。

以前、別のブログで「Windows7でProcessingとResolume Avenueとを連携させる」話を雑に書いていたのですが、 雑な管理でブログごと消し飛ばしてしまいました。

で、Win8.1でやろうとしてソフトの相性が悪くてうまくできてなかったのですが、Win10になって復活したので、 備忘録兼ねてもう一度簡単にまとめます。

本題

Resolumeは、AvenueとArenaという二つのVJソフトを手掛けているオランダの会社で、僕はAvenueを使ってます。前の記事に書いた通りライセンスふっ飛ばしたので体験版モードですが。

サークルのライブで友達がDJしている隣でVJしていた時、せっかくハッシュタグ用意してTLが盛り上がっているのだから、スクリーンにそのツイートを乗っけれたら面白いんじゃないかと思ったのが始まりです。ちょっと違うけどテレビ番組でもハッシュタグ拾ってリアルタイムに表示するやつとかあるじゃないですか。

ただし、Resolumeには(というかVJソフトで普通では)Twitterのタイムラインやツイートを表示する機能はデフォルトでは入っていません。ので、こちらで用意する必要があります。今回は、一つのクリップとしてツイートをリアルタイムに表示できるようにします。

なお今回は Resolume Avenue 4.2.1 でやってます。Arenaの場合やほかのバージョンの場合は適宜置き換えてください。

注意 1. この記事はWindowsが対象です。MacはSyphonがあるから羨ましいよ!! 2. 僕は、この後に出てくるProcessingについて初心者です

Processing

Processingは、Java言語でビジュアルな表現を可能にする環境(?)です。普通のJavaとは違って少し決まりごとがありますが、Javaオブジェクト指向言語の練習でよく用いられるイメージがあります。ビジュアルパフォーマンス等にも十分生かせますよね。

さて、ここでTwitterとの関係なのですが、Twitter4JというJavaで書かれたTwitterAPIの有名なライブラリがあります。今回はこのTwitter4Jを使ってProcessingでプログラムを書き、描画ウィンドウ上に特定のタイムラインのツイートを表示する仕様です。

ただ、今回この記事ではコードを割愛させていただきます、、すみません。 一番大事なところですが、手元にあるコードがガバガバすぎてお見せできません、もうちょっとましにしてからGistか何かで公開しますね。。

Processing のプロジェクトディレクトリに code というディレクトリを作成し、Twitter4Jの各種jarファイルをその中に入れて、それからいろいろやります。。なお出来たものが以下の画像のようになります。

f:id:yadex205:20151005235352p:plain

Spout

Processingでツイートを表示させるところまでは良いのですが、ではどうやってResolumeのクリップとして取り込めるでしょうか。MacOSXだとSyphonっていう神機能があって、アプリケーション間でそれぞれが描画しているものをやり取りできますが、Windowsだともちろんありません。

そこで登場するのがSpoutです。本当にWindows版Syphonと言えると思います。アプリケーションはSyphonより限定されるとは思いますが、これもアプリケーション間で描画しているものを送ったり受け取ったりできるようにするものです。

まず、Spoutがインストールされたディレクトリ C:\Program Files (x86)\Spout2\ に移動すると、その中の FFGL というディレクトリに SpoutReceiver2.dll が 入ってると思います。これを C:\Program Files (x86)\Resolume Avenue 4.2.1\plugins\vfx ディレクトリにコピーします。 その後Avenueを起動したときに、 Sources欄のFFGL SourcesSpoutReceiver2が入っていたら成功です。

次に確認のために、本当にSpout経由でAvenueで映像が取得できるか確かめます。Spoutディレクトリの中の DEMO というディレクトリの中に SpoutSender.exe という実行ファイルがあります。これをクリックしたら、Spoutのロゴがテクスチャとして張り付けられてる立方体がくるくる回る画面が出ると思います。その次にResolumeで Sources欄から先ほどの SpoutReceiver2 をクリップ欄に入れ、選択します。すると下部のプロパティ画面のClipセクションのパラメータ一覧に Select が出現すると思います。 このSelectボタンを押すと、Spout経由で描画内容を転送しようとしているSenderの一覧が表示されます。この中で Spout DX9 Sender があると思うのでそれを選びます。

うまくいけば、SpoutSender.exeを起動したときに出てきた描画内容とまったく同じものが、AvenueのOutput Monitorにも描画されてるはずです。

ProcessingとAvenueで連携

さて、先ほどのProcessingで描画している内容を、SpoutのSenderになるようにします。 具体的には、先ほどのProcessingのプロジェクトにファイルをいくつか追加し、書いたコードに数行追加するだけです。

まず作成したProcessingのプロジェクトのディレクトリ内の code ディレクトリに、 Spoutディレクトリの PROCESSING\x64\SpoutSender\code の中身をコピーします。なお使ってるProcessingが32bit版なら、Win32ディレクトリ に入ってるものをコピーしてください。

次に、Processingのプロジェクトディレクトリに、PROCESSING\x64\SpoutSender内にあるJSpout.javaspout.pdeをコピーします。

なので、ファイル配置は以下のようになりますね。

(Processingのプロジェクトディレクトリ)
|- code
    |- JSpout.class
    |- JSpout.dll
|- JSpout.java
|- spout.pde
|- 作成したProcessingファイル.pde

最後に、作成したプログラムファイルにSenderとして機能するためのコードを追加します。

まず、setup()関数の前に

Spout spout;

と書き、変数を宣言します。この時点ではまだ初期化されていません。

次に、setup()関数内の終わりに

spout = new Spout(); // Spoutクラスのインスタンスを作成
spout.initSender("Spout Processing", width, height); // Senderを初期化。

を追加します。spout.initSender()の第1引数には、Senderの識別用の名前を指定します。第2, 3引数のwidthとheightは、setup()関数中でsize()関数を実行した際に値が割り当てられるやつです、放置して大丈夫です。

次にdraw()関数内の終わりに

spout.sendTexture();

を追加します。これで描画内容をSendすることができます。

最後に、exit()関数内に

spout.closeSender();
super.exit();

を追加します。終了処理ですね。

以上の作業を終えてから、Runをクリックしてプログラムを走らせてみてください。正常に動いてProcessingの描画画面が出たのを確認したら、AvenueのSpoutReceiver2のClipのプロパティ画面で、先ほどと同じようにSender一覧から選択する画面をだして見てください。spout.initSender()の第1引数で指定した名前が入っていたらそれをSelectしてみてください。

これでProcessingで描画したツイートがAvenueのクリップとして描画できたら、勝ちです。いかがでしょうか?

f:id:yadex205:20151005235406p:plain

おわりに

Resolume Avenue/Arena上でTwitterの特定のタイムラインのツイートを表示する方法について、ProcessingとSpoutを使った方法を軽く紹介しました。 プログラムを書かなくてはいけないことや、導入方法が面倒ではありますが、ある意味VJソフトの拡張を作るような気分で楽しいのではないでしょうか。

なお、Spoutは現在、Max, OpenFrameworks, Unity, VirtualDJなどにも対応しているらしいです。ちょっと前より対応ソフトがすごい増えてて、作られてる方本当にすごいと思います。 なので、ProcessingとResolumeだけじゃなくて、OpenFrameworksとMaxとかもできるはずです。

今回使ったものや環境

Copyright © 2015 Yadex205