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
暴カワでビデオシンセサイザーを導入する技術
Search
Naoki Katahira
October 18, 2024
Technology
1.2k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
暴カワでビデオシンセサイザーを導入する技術
ビジュアル演出概論 #001
https://peatix.com/event/4152074
Naoki Katahira
October 18, 2024
More Decks by Naoki Katahira
See All by Naoki Katahira
Hakodate in Real-Time CG: Building a GML Converter and Live Visual Performance
yuchi
1
90
SREが考えるハイブリッド開催の技術イベントのライブ配信における信頼性
yuchi
2
3.5k
The Naya Vol.5を開催するための映像技術
yuchi
2
110
How to Start RP2040
yuchi
0
1.7k
Other Decks in Technology
See All in Technology
新しい SLO が良い感じにハマっている話
z63d
1
1.3k
セキュリティ研修【MIXI 26新卒技術研修】
mixi_engineers
PRO
32
26k
脱Jenkins、インターン生が挑んだCIツールGitHubActions移行
mixi_engineers
PRO
1
280
ソフトウェアアーキテクチャ研修【MIXI 26新卒技術研修】
mixi_engineers
PRO
2
1k
GMOフィナンシャルゲートが挑む、「止まらない」決済インフラ構築の裏側【SORACOM Discovery 2026】
soracom
PRO
0
110
AI研修(Day2)【MIXI 26新卒技術研修】
mixi_engineers
PRO
2
1.6k
なぜ、あなたのAPIは使われないのか? AX時代の設計原則、ガードレール、運用体制
yokawasa
1
270
実践が先生だった— 新卒サーバーエンジニア1年目のリアル
mixi_engineers
PRO
0
210
VPCセキュリティ対応の最新事情
nagisa53
2
350
なぜ、あなたのエージェントは言うことを聞かないのか
segavvy
1
590
WEBフロントエンド研修【MIXI 26新卒技術研修】
mixi_engineers
PRO
2
820
QAと開発の両側から進める AI活用 -QAプロセスAI支援ツールキットと Inner Loop / Outer Loopの取り組み-
legalontechnologies
PRO
2
380
Featured
See All Featured
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
Agile that works and the tools we love
rasmusluckow
331
22k
Paper Plane (Part 1)
katiecoart
PRO
1
9.9k
Ethics towards AI in product and experience design
skipperchong
2
330
Discover your Explorer Soul
emna__ayadi
2
1.2k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
200
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
780
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
190
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Transcript
暴カワで ビデオシンセサイザーを 導入する技術 yuchi 2024/10/18 ビジュアル演出概論 #001
自己紹介 yuchi / Naoki Katahira ソフトウェアエンジニア(SRE) 主にECサイト構築サービスのインフラを見ている 趣味で様々なことをしている Link: yuchi.io
Twitter(現X): @F_YUUCHI
様々な趣味 • ハードウェア設計(自作キーボード等) • VJ • DJ • 配信(の機材)
VJ 配信DJイベント”The NAYA”を主催しているパイクサイスというチームでVJを やったりしている 個人宅の納屋にLEDテープを数百メートル施工し、業務用プロジェクターを入 れて演出を行っている
None
None
本題
暴カワでビデオシンセサイザーを導入した話 暴カワとは • 正式名:暴力的にカワイイ というイベント • 去年と今年はお台場で野外音楽フェスとして開催 • 昨年は4000人の来場者数 ビデオシンセサイザーとは
• 音に合わせて映像を出してくれる装置(ざっくり) • あまり機種は多くない
暴カワでビデオシンセサイザーを導入した話 • LanPageさんで使用したビデオシンセのプリセット作成をした • DJブースから gaburyuさんが操作をして映像を作っている ◦ ジェネ系VJをDJの人にやってもらった
暴カワでビデオシンセサイザーを導入した話 • 具体的には写真の青い背景の箇所に出ているオブジェクトの映像
https://x.com/YACAINDAHOUSE/status/1843241756093276351/
使用したビデオシンセサイザー Critter & Guitari社のEYESYという機種 • それぞれの映像モードを元に、音声入力、5つのノブ、1つのトリガーで映 像を作ることができる • 中身はRaspberry Pi
Compute Module 3(組み込み版ラズパイ) • 出す映像のカスタマイズが可能でオリジナルの映像モードを作成可能 https://www.critterandguitari.com/eyesy
https://www.youtube.com/watch?v=xIxchxVhVI0
使用したビデオシンセサイザー • Python2+pygameを使用してEYESYの映像生成機能が動いている • Pythonでオリジナルのモードを作成できる • マニュアルにも”5. EYESY のプログラミング ”として簡単な関数やAPIの
例が載っている ◦ https://umbrella-company.jp/manuals/critter_and_guitari_eyesy_manual.pdf https://www.critterandguitari.com/eyesy
ライブ使用しにくい問題点 • 問題点: HDMI出力がMASTERの1本しかない ◦ OSD(= On Screen Display)画面と呼ばれている機能でタイトル や、入力音量、現在の設定などを表示できる
◦ これらはMASTER出力に表示される • 音量ゲインが映像の動きと直結しているため、入力音量のメーターの確認 /調整が必須 →ライブ本番中に設定を確認しようとすると会場のLEDディスプレイにも出てし まう
https://www.critterandguitari.com/manual?m=EYESY_Manual
今回の演出は EYESYの映像の上にフレームを重ねる表現をすることに なった →OSD画面を隠すスペースができる!!!
None
None
None
結構はみ出てる
クロップする?
いいえ
OSD画面のカスタマイズ EYESYはモデル以外もシステムレベルでカスタマイズ可能&オープンソースで 公開されている https://github.com/critterandguitari/EYESY_OS • engines/python/osd.py にOSDの設定がpygameで書かれている ◦ すべてカスタマイズ可能
例:音量メーター # input level pygame.draw.rect(screen, etc.BLACK, (20, 205, 220, 30))
mode_str = " Input Level:" text = font.render(mode_str, True, etc.WHITE, etc.BLACK) text_rect = text.get_rect() text_rect.x = 20 text_rect.centery = 220 screen.blit(text, text_rect) draw_vu_480(screen, etc, 115, 210) 1行目で背景の黒い長方形の 描画処理が書かれている • pygame.draw.rect: pygame を使って長方形を描画 • etc.BLACK: 色は黒 • 20: 左(x:0)からx:20 • 205: 上(y:0)からy:205 • 220: 長方形の幅x(px) • 30: 長方形の高さy(px)
None
None
うまく隠れた
例:音量メーター # input level pygame.draw.rect(screen, etc.BLACK, (400, 20, 220, 30))
mode_str = " Input Level:" text = font.render(mode_str, True, etc.WHITE, etc.BLACK) text_rect = text.get_rect() text_rect.x = 400 text_rect.centery = 35 screen.blit(text, text_rect) draw_vu_480(screen, etc, 490, 25) 素朴に座標をずらす • pygame.draw.rect: pygame を使って長方形を描画 • etc.BLACK: 色は黒 • 400: 左(x:0)からx:400 • 20: 上(y:0)からy:20 • 220: 長方形の幅x(px) • 30: 長方形の高さy(px)
OSD画面のカスタマイズ もっとカスタマイズすれば、VUメーター以外を消したり、サイズを小さくしたり、 VUメーターのデザインも変えられる • 今回のように、上からフレームを被せない場合も、極力目立たないようなデザイン にカスタマイズ可能 ◦ 今回は開発時間の制約上座標を移動させるに留めました • かなりライブユースなビデオシンセにできる
今回作成したモードについて LanPage 3名それぞれのイメージカラーや新曲の歌詞から着想を得て、1か ら作成したり、既存モデルのカスタマイズを行ったりしました
まとめと感想 • 一癖あるビデオシンセだったが、カスタマイズによってライ ブで十分使えるレベルに出来ることが分かった • オープンソース & システムレベルでカスタマイズできるの は最高 •
ビデオシンセ(EYESY)を少しでもライブで使いたいと思った 人に参考になれば幸いです
ご清聴ありがとうございました