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
APIs for VJ-ing
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Amagi
September 15, 2017
Technology
7.1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
APIs for VJ-ing
ToKyoto.js
https://kyotojs.connpass.com/event/64310/
Amagi
September 15, 2017
More Decks by Amagi
See All by Amagi
Enchant your website with VFX-JS
fand
0
180
How to hack VS Code: evil ways (Japanese)
fand
5
3.8k
READY FOR THE BATTLE? -Introduction to Live Coding-
fand
1
590
GLSL PostEffect in TouchDesigner
fand
2
2.1k
VEDA GLSL Livecoding workshop
fand
2
5.4k
PWA 方法 無料 今すぐ
fand
3
1.6k
Have you ever heard GPUs cry?
fand
2
4k
Real World GLSL
fand
0
320
Style your Components with styled-component!
fand
1
870
Other Decks in Technology
See All in Technology
AIコーディングの次。コードレビューと理解負荷を解消して組織の開発生産性を高める
moongift
PRO
2
2.7k
属人化を叩き割れ!「制作加速」と「安定化」の矛盾を打破する:8年目プロダクトが辿り着いた「ミスが起こり得ない」アセット制作フローの全貌
gree_tech
PRO
0
140
【CEDEC2026】Creative Approaches to Localizing the Dialects and Unique Speech of Umamusume: Pretty Derby Characters in English
cygames
PRO
4
26k
同じWAFが、攻撃の“形”は弾く── 正当な“形”の不正は通す
kuroneko13
0
270
Rust×eBPFでEDRっぽいものをつくる
sunlife3
2
830
自宅NWにISR4331を導入してみた話
okaits
0
120
社内の7割が使うデータ基盤を、 データチーム2人で回すためにやったこと
koh_yoshi
4
1.5k
【GCC2026】TrueHDRIを用いたルックデブ環境とライティングテクニック
bandainamcostudios
PRO
0
260
形式手法特論:Hyperproperty とモデル検査 #kernelvm / Kernel VM Study Tokyo 19th
ytaka23
0
660
三人寄ればチューリング完全
puhitaku
6
2.9k
LLM・AIエージェントシステムベストプラクティス
shibuiwilliam
6
1.6k
ハッカソンで入賞した話 @ Findy LT
asari194617
0
1.5k
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
250
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Statistics for Hackers
jakevdp
799
230k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.8k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
420
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
280
A better future with KSS
kneath
240
18k
AI: The stuff that nobody shows you
jnunemaker
PRO
9
940
Transcript
APIs for VJ-ing APIs for VJ-ing amagitaJayosi
@amagitakayosi
࠷ۙAtomύοέʔδΛ࡞ͬͯ·͢
ࠓ͕࡞ͬͨ "UPNύοέʔδΛ հσϞͭͭ͠ ͍ͬͯΔ"1*Λ ղઆ͠·͢ʂʂʂʂ
glsl livecoder
HMTMMJWFDPEFS w "UPNͰ7+Ͱ͖Δύοέʔδ w (-4-ͷ࣮ߦڥ w (-4-Ͱө૾ΛϦΞϧλΠϜʹੜͨ͠Γ w ಈըը૾Λϩʔυͯ͠ (-4-ͰՃͰ͖ΔΑ͏ʹͨ͠Γ
(-4-γΣʔμʔͷҰछ w %$(ͰӄӨΛܭࢉ͢ΔͨΊͷݴޠ w )-4- %JSFDU9 ͱ͔ɺ.FUBM NBD04 ͱ͔ w
ߦྻܭࢉʹศརͳϏϧτΠϯؔ w qPBUEPU WFDB WFDC ͱ͔
γΣʔμʔΞʔτ w (-4-(16ύϫʔΛϑϧ׆༻Ͱ͖Δ w ʮ(-4-͚ͩͰෳࡶͳάϥϑΟοΫදݱΛ ɹඳըͰ͖ΔͷͰʁʯ w Ұ෦ͷਓʑ͕େڵฃ
None
ࢀߟLJOUSPl&MFWBUFEz IUUQTXXXZPVUVCFDPNXBUDI WK#W#NJ5SP
ී௨ͷ%άϥϑΟοΫε w ઍʙສϙϦΰϯ γΣʔμʔ
൘ϙϦ w ࡾ֯ܗݸ γΣʔμʔ͚ͩͰશͯΛදݱ
طଘͷϥΠϒίʔσΟϯάڥ w ,PEFMJGFNFUBMͰॻ͚ΔσεΫτοϓΞϓϦ w 4IBEFSUPOF&NBDT $MPKVSF w ):-0(&/)BTLFMM"MU(-4-ڥ w 4ZOUIDMJQTFδϟό
4ZOUIDMJQTF
طଘڥͷෆຬ • ίʔυิ͍ͨ͠ • linter͍͍ͨ • ϞδϡʔϧγεςϜ͍͍ͨ • GLSLʹجຊincludeͱ͔ͳ͍
"UPNύοέʔδͱͯࣗ͠࡞ w طଘͷύοέʔδΛར༻Ͱ͖Δ w MJOUFS BVUPDPNQMFUF FUDʜ w &MFDUSPOͳͷͰɺϒϥβͷ༷ʑͳ "1*Λར༻Ͱ͖Δ
w +4(-4-όϯυϥʔΛ͑Δ
DeMO
IUUQTXXXqJDLSDPNQIPUPTIFMMPDBUGPPE API
HMTMMJWFDPEFSͰར༻ͯ͠Δ"1* w 8FC"VEJP"1* w 8FC.*%*"1* w (BNFQBE"1* w HFU6TFS.FEJB w
04$ 8*1
8FC"VEJP"1* w ݴΘͣͱΕͨԻΛग़ͭ͢ w γϯηͱ͔࡞ΕΔ w ༷͕ίϩίϩมΘΔ w (JU)VCͰ͕ٞݟΕΔ
Իೖྗ͔ΒछྨͷใΛऔಘ w Իྔ w ܗ w εϖΫτϥϜ w पଳ͝ͱͷԻྔΛղੳͨ͠ͷ
Իೖྗ͔ΒछྨͷใΛऔಘ w Իྔ w ܗ w εϖΫτϥϜ w पଳ͝ͱͷԻྔΛղੳͨ͠ͷ AnalyserNodeͰ
ҰؾʹऔಘͰ͖Δ
(-4-ʹσʔλΛ͢ w +4͔Β(-4-ʹͤΔσʔλͷ্ݶ͕͋Δ w େྔͷσʔλΛ͢ʹςΫενϟΛ͏ʂ w ܗΛ6JOU"SSBZʹม͠ɺ 5)3&&%BUB5FYUVSFͰ(16ଆʹૹΔ
ܗΛUFYUVSFͱͯ͠දݱ
εϖΫτϥϜಉ༷
8FC.*%*"1* w .*%*ָثͷԋใͷن֨ w ϒϥβ͔ΒָثΛ໐Βͨ͠Γ w .*%*ίϯτϩʔϥʔͰ 8FCΞϓϦΛૢ࡞ͨ͠Γ
.*%*ϝοηʔδͷߏ w .*%*ίϯͰΘΕΔϝοηʔδόΠτ 0xB0 0x00 0x7F ϝοηʔδͷछྨ ίϯτϩʔϧ൪߸
UFYUVSFʹม w YͷUFYUVSFʹϚοϐϯά w CZUFY࣠ w CZUFZ࣠ w CZUF
ྫY#YY' 256 128
ྫY#YY' x=0xB0=172 y=0 0x7F = 128 (/255) = ໌Δ͞
OPUFPOPGGಛผѻ͍͍ͨ͠ w OPUFPOP⒎όΠτ͕YY w YͷςΫενϟΛ࡞Δ x=Իͷߴ͞ ৭=Իྔ
(BNFQBE"1* w ήʔϜύουͷใΛऔಘ͢Δ w ϑϨʔϜຖʹϙʔϦϯά͢Δඞཁ͕͋Δ
ήʔϜύουͷଓΛͬͯ rAFͰຖϑϨʔϜ ϘλϯใΛऔಘ͢Δ
HFU6TFS.FEJB w ϚΠΫΧϝϥͷө૾ΛऔಘͰ͖Δ w WJEFPཁૉͷTSDʹࢦఆͰ͖Δ
getUserMediaͷ݁Ռ͔Β videoཁૉΛ࡞ͬͯ THREE.VideoTextureͰ GLSLʹ͢
04$ ະରԠ w .*%*ΑΓॊೈͰɺ ༷ʑͳϝοηʔδΛఆٛͰ͖Δϓϩτίϧ w ָثͱ͔ϥΠϒίʔσΟϯάۀքͰ σϑΝΫτʹͳΓͭͭ͋Δ w ରԠͯ͠Μͷʁͱ͍͏ཁ͕͋ͬͨ
04$ϝοηʔδͷߏ w Ϛδ͔Α /foo/bar 1 baz [1 2 3] OSCΞυϨε
ҙͷจࣈྻ OSCҾ ҙݸͷҾ
04$ʹରԠ͢Δʹ w NJEJYZ[Έ͍ͨͳΤϯυϙΠϯτͰ .*%*ͬΆ͘ରԠ͢Δ͔͠ͳ͍ʜʜʁ w 5PVDI04$ʹ.*%*ϒϦοδ͕͋Γɺ ࣅͨΑ͏ͳ͜ͱΛ͍ͬͯΔͬΆ͍
͓·͚TUBDLHMHMTMJGZ w CSPXTFSJGZͷ(-4-൛ w ͱ͔ॻ͘ͱόϯυϧͯ͘͠ΕΔ w HMTMJGZ༻ͷϥΠϒϥϦ͕ OQNͰଟެ։͞ΕͯΔ
ݟ֮͑͋Δ։ൃਞ
͍ΖΜͳϥΠϒϥϦ͕͋Δɻੈքʜʜ
ࡢHMTMJGZαϙʔτ͠·ͨ͠
·ͱΊ
(-4-ͨͷ͍͠ʂʂʂ w ࠷ۙझຯͰ8FCΞϓϦશવॻ͍ͯͳ͍ w ΈΜͳ(-4-Ζ͏ͥ
1BUDIFTXFMDPNF
eNJOY VJ-ING!!! eNJOY VJ-ING!!!