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
p5.jsでHTML5を使って簡単に音楽アプリを作ろう
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
FirstFourNotes,LLC
September 03, 2016
Technology
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
p5.jsでHTML5を使って簡単に音楽アプリを作ろう
2016 HTML5 カンファレンス LT
FirstFourNotes,LLC
September 03, 2016
More Decks by FirstFourNotes,LLC
See All by FirstFourNotes,LLC
Ionic Meetup Tokyo #4
firstfournotesllc
0
180
Bowing Vision
firstfournotesllc
0
240
Bowing Vision
firstfournotesllc
0
69
LINEスタンプを作ってみよう 〜メディバンペイントを使って〜
firstfournotesllc
0
1k
JavaScript Study meeting Vol.1 in ROLE
firstfournotesllc
0
83
Other Decks in Technology
See All in Technology
AIエージェントの一手は 誰も見ていない - Falco拡張OSS「Prempti」とeBPFで サーバーレス実行基盤を二層防御する
keitah
1
580
JSONataとAWS Step Functionsで目指すRuntimelessな世界
mu7889yoon
1
500
Harness Engineering on Rails
joelq
0
520
CI/CDではもう遅い - 人とAIが迂回しないDevSecOps Verify基盤の再設計 -
kintotechdev
0
260
Claude Codeを「使うほど育つ」AI秘書にするノウハウ
minorun365
PRO
33
32k
負債のメタファと2026年 / Debt Metaphor in Agentic Engineering Age 202609 Edition
twada
PRO
13
7.5k
人にやさしく、AIにやさしく、書き手を選ばないIaCのガードレール再考 / Rethinking IaC Guardrails for Humans and AI Alike
kohbis
5
1.2k
プラットフォームを「作る」、 チームに「入り込む」
sansantech
PRO
0
150
AI 時代のスタートアップエコシステ厶から考究する技術的負債との向き合い方
m3m0r7
PRO
3
2.7k
品質と信頼性を地続きにする
grimoh
2
1k
Genieを崇めよ
kameitomohiro
0
170
地方移住と都心キャリアの両立は「金・時間・人」のリソースをフル活用すれば実現できる!〜Snowflake女子会 vol.8
snowwmn0824
0
120
Featured
See All Featured
Fireside Chat
paigeccino
43
4k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
920
The Invisible Side of Design
smashingmag
301
52k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.3k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
490
Agile that works and the tools we love
rasmusluckow
331
22k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Unsuck your backbone
ammeep
672
58k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
260
Transcript
)5.-$0/'&3&/$& 'JSTU'PVS/PUFT --$ QKTͰ)5.-Λͬͯ ؆୯ʹԻָΞϓϦΛ࡞Ζ͏
ձࣾհ ԻָΛԋ͢Δਓɺௌ͘ਓ͕͑ΔΑ͏ͳָ͍͠αʔϏεΛ։ൃதɻ ۙϦϦʔε༧ఆɻ 'JSTU'PVS/PUFT --$ IUUQGJSTUGPVSOPUFTDPN
ձࣾհ ελʔτΞοϓͷ ٕज़ίϯαϧˍٕज़ࢧԉ ͳͲ͍ͯ͠·͢ɻ
ϝϯόʔհ̍ ϑΫγϟνϣʔ αʔόʔαΠυɾΠϯϑϥ୲ "84 ("& EPDLFSΖΖ ອըɺΠϥετɺσβΠϯ ౦༸ܦࡁΦϯϥΠϯͰ ΤϯδχΞ͋Δ͋Δ̐ίϚອը ࿈ࡌͯ͠·͢ʂ
΅΅ IUUQUPZPLFJ[BJOFUDBUFHPSZEJBSZ
ϝϯόʔհ̎ γϟνϣʔ ిࢠ࡞͔ΒϑϩϯτΤϯυ։ ൃɺϩϘοτΞϓϦ·Ͱ୲ ࣥචɺ༁ɺେֶͰڭ͑ͨΓ͠ ͯ·͢ QKTͷຊࣥච͠·ͨ͠ʂ ༝୩ IUUQTXXXBNB[PODPKQEQ
QKTͱʁ ▪ +BWB4DSJQUͰը૾ΞχϝʔγϣϯͳͲΛ؆୯ʹ͑Δ Α͏ʹͨ͠ϑϨʔϜϫʔΫ ▪ ಈըɾԻͳͲѻ͑·͢ ▪ ࡞ͬͨͷ8FCϒϥβͰಈ͖·͢ ▪ IUUQPUPSPOFUQMBOLT
1SPDFTTJOHʢϓϩηογϯάʣ͕ϕʔε 1SPDFTTJOHͱɺσβΠφΞʔςΟετ͚ ʹ։ൃ͞Εͨϓϩάϥϛϯάݴޠ QKTͰɺ1SPDFTTJOHҎ্ͷ֦ு͕͞Ε͍ͯ ͯɺ)5.-ͱ+BWB4DSJQU͕Մೳʹ͢Δػೳͷ΄ ͱΜͲ͕ѻ͑·͢
QKTͱ)5.- ▪ )5.-ͷػೳΛϥοϓͯ͠ɺ͑͘͞͠ΔΑ͏ʹ͍ͯ͠Δ – Πϕϯτͳ͠ͰϚελονύωϧ͕ѻ͑Δ – ͓·͡ͳ͍ͳ͠ʹΧϝϥϚΠΫΛ͑Δ – ΞχϝʔγϣϯͷϨϯμϦϯάϧʔϓ͕༻ҙ͞Ε͍ͯΔ QKTͷओͳػೳ
ରԠ͢Δ)5.-ͷػೳ %άϥϑΟοΫε $BOWBT Ξχϝʔγϣϯ ʵ ΦʔσΟΦ 8FC "VEJP"1* ಈը 7JEFPཁૉ Χϝϥ 6TFS .FEJB %0.ૢ࡞ %0.ૢ࡞ εϚʔτϑΥϯʢ͖ɺՃɺճసʣ %FWJDF"1*ͷҰ෦ 8FC"1*ͷݺͼग़͠ 9.-)UUQ3FRVFTU Ի߹ɺೝࣝ $POUSJCVUFE 8FC4QFFDI "1* εϓϥΠτ $POUSJCVUFE ʵ "SEVJOP࿈ܞ $POUSJCVUFE ʵ
σϞΞϓϦ σδλϧϋϯυϕϧ
σϞ
ΞϓϦͷߏ ▪ ΦʔσΟΦͱεϚϗΛͬͨσϞΞϓϦ ΦγϨʔλʔ USJ0TD Τϯϕϩʔϓ FOW λονύωϧ εϚϗΛৼΔ 音階設定
スタート triOsc = new p5.Oscillator("triangle"); triOsc.amp(env); triOsc.start(); env = new p5.Env(); env.setADSR(attackTime, decayTime, susPercent, releaseTime); env.setRange(attackLevel, releaseLevel); function touchStarted() { keys.forEach(function(k) { if (!found && dist(x, y, k.x, k.y) < k.radius) { triOsc.freq(midiToFreq(one_oct_midi_note[k.note])); } ); } function deviceShaken() { env.play(triOsc); }
͝ਗ਼ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠ ΅΅-*/&ελϯϓ͋Γ·͢