Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
APIs for VJ-ing
Search
Amagi
September 15, 2017
Technology
7.2k
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
600
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
330
Style your Components with styled-component!
fand
1
880
Other Decks in Technology
See All in Technology
AWSDirectConnectの構築の進め方を整理してみた
masa_my
1
170
導入から定着へ ~コーディングエージェントを日常業務に組み込む実践知~
yukisakai1225
0
220
局所最適は悪ではない。壊れているのは指標です。量と質を同時に見る先行指標の設計
recruitengineers
PRO
2
1k
「作れる」と「リリースできる」の間にあったもの── PdMを外して見えた、PdMがやるべき仕事/Buildable ≠ Shippable: What Removing the PM Taught Me About the PM’s Job
yappli_developers
0
200
[FECONF-2026] 신대륙을 향한 카카오페이증권 프론트엔드 항해기 (이주승)
l1ghthouse
0
110
freeeにおける AI を用いた ブラウザ動作確認の自動化の取り組み
freee
PRO
0
180
その Valkey 使いこなしていますか?
onk
PRO
5
2k
「Learning Outcome」を書きたくない私が、Learning Outcomeと折り合いをつけるまで
mhlyc
0
200
Gemini Intelligence 入門 ― AppFunctions と Gemini Nano
takuroabe
0
370
野蛮なアジャイル [サイボウズ発!]組織の常識を覆した反骨のスクラム実践記 / Barbaric Agile - Enterprise Agile Study Group
ama_ch
0
140
Kiro Crewで「みのるん式」仕事術やってみた
minorun365
PRO
3
1.1k
Adversary Infrastructure Hunting101
disconinja
0
120
Featured
See All Featured
Color Theory Basics | Prateek | Gurzu
gurzu
1
490
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
310
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
67k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
890
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.9k
Navigating Team Friction
lara
192
16k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
470
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
640
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
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!!!