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
Amagi
September 15, 2017
Technology
1
6.7k
APIs for VJ-ing
ToKyoto.js
https://kyotojs.connpass.com/event/64310/
Amagi
September 15, 2017
Tweet
Share
More Decks by Amagi
See All by Amagi
Enchant your website with VFX-JS
fand
0
53
How to hack VS Code: evil ways (Japanese)
fand
5
3.5k
READY FOR THE BATTLE? -Introduction to Live Coding-
fand
1
470
GLSL PostEffect in TouchDesigner
fand
2
1.9k
VEDA GLSL Livecoding workshop
fand
2
5.1k
PWA 方法 無料 今すぐ
fand
3
1.5k
Have you ever heard GPUs cry?
fand
2
3.7k
Real World GLSL
fand
0
250
Style your Components with styled-component!
fand
1
680
Other Decks in Technology
See All in Technology
組織成長を加速させるオンボーディングの取り組み
sudoakiy
2
180
オープンソースAIとは何か? --「オープンソースAIの定義 v1.0」詳細解説
shujisado
9
1k
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
390
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
SREが投資するAIOps ~ペアーズにおけるLLM for Developerへの取り組み~
takumiogawa
1
360
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
4
220
Taming you application's environments
salaboy
0
190
Can We Measure Developer Productivity?
ewolff
1
150
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
670
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
170
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1030
460k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
890
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
Being A Developer After 40
akosma
87
590k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Music & Morning Musume
bryan
46
6.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
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!!!