$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Scalaで自動作曲の練習 / A study of automatic compositio...
Search
aereal
September 14, 2017
Programming
1
390k
Scalaで自動作曲の練習 / A study of automatic composition in Scala
aereal
September 14, 2017
Tweet
Share
More Decks by aereal
See All by aereal
盆栽転じて家具となる / Bonsai and Furnitures
aereal
0
5.9k
How to send distibuted traces to Datadog using build own OpenTelemetry-Lambda distribution
aereal
3
300
好きな技術《コト》で、 生きていく技術 / life with what you like
aereal
5
4.7k
qron: Cloud Native Cron Alternativeの今
aereal
2
3k
自動作曲入門 / introduction to programatic music composition
aereal
1
530k
はてなブログ タグとCDK / The epic of AWS CDK and Hatena Blog Tag
aereal
2
200k
はてなブログ タグの技術選択 / The technical details of Hatena Blog Tag
aereal
3
200k
ブログサービスのHTTPS化を支えたAWSで作るピタゴラスイッチ / The construction of large scale TLS certificates management system with AWS
aereal
3
400k
AWSではてなブログの常時HTTPS配信をバーンとやる話 / The Epic of migration from HTTP to HTTPS on Hatena Blog with AWS
aereal
14
18k
Other Decks in Programming
See All in Programming
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
210
ゲームの物理 剛体編
fadis
0
370
SwiftUIで本格音ゲー実装してみた
hypebeans
0
490
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
110
Cell-Based Architecture
larchanjo
0
140
フルサイクルエンジニアリングをAI Agentで全自動化したい 〜構想と現在地〜
kamina_zzz
0
280
Developing static sites with Ruby
okuramasafumi
0
320
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
280
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
3
1.3k
Tinkerbellから学ぶ、Podで DHCPをリッスンする手法
tomokon
0
140
AIコーディングエージェント(skywork)
kondai24
0
200
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
3
1.1k
Featured
See All Featured
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
200
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
170
4 Signs Your Business is Dying
shpigford
186
22k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
680
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
170
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.2k
Raft: Consensus for Rubyists
vanstee
141
7.3k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
0
63
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
WCS-LA-2024
lcolladotor
0
390
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
130
Transcript
ScalaͰ ࣗಈ࡞ۂͷ࿅श id:aereal
ࠓ͢͜ͱɾͶΒ͍ • ݹయతͳ࡞ۂͷϝιουͷհ • ͍ΘΏΔʮΫϥγοΫԻָʯͷ࡞Γํ • ↑ΛScalaͰ࣮ͨ͠ • ૉͳ࣮Λఏࣔͯ͠ɺ Իָͷߏɾϧʔϧͷ͓͠Ζ͞Λͬͯ΄͍͠
ࠓ͞ͳ͍͜ͱ • ϙϐϡϥʔԻָɾδϟζͳͲΑΓۙతͳԻָͷख๏ • ટ๏ (Ϟʔυ)ɺແௐ • ͦͷଞ͍Ζ͍Ζ͋Δख๏ɾϧʔϧ • ָث๏
(orchestration) • ͳʹ͔ͷ͔͍͍ͬ͘͢͜͝όʔϯͱ͍ͬͯΔײ
Ϟνϕʔγϣϯ • WebɾจࣈྻͬΆ͍ϓϩάϥϛϯά͔ΒΕͯΈ͍ͨ • ͳΜͱͳ͘ػցֶशͱੑߴͦ͏ • Scalaॻ͖͍ͨ • ࢥߟΛίʔυʹམͱ͠ࠐΉ࿅श
ࣗಈ࡞ۂͷৄ͍͠ࣄྫ • ͍Ζ͍Ζจͱ͔͋Δ • ౦ژज़େֶͷਓͱ͔͕จΛ͍Ζ͍Ζॻ͍͍ͯΔ • ύοέʔδιϑτΣΞച͍ͬͯΔ
github.com/aereal/music-study
࡞ۂ? • ͷ͍͘͢͝͠ͷͰ? • ͍͢͝ਓ͕ײੑΛۦͯ͠ર͖ͱڞʹΤΠοͱΔ? • ࣗಈ࡞ۂͬͯͳΜ͔ͷ͍͢͝ϊΠζ·ΈΕͳͷͰ?
ݹయతͳԻָͷߏཁૉ • ટ (melody) • (harmony) • ಈ (rhythm)
ݹయతͳԻָͷߏཁૉ • ͋Δ࣌Ͱ໐͍ͬͯΔԻָ = (melody, harmony, rhythm) • Θ͔͖ͬͯͨ
• ໐Βͯ͠Α͍Իͷू߹ΛఆΊΔϧʔϧ • → ટӨڹΛड͚Δ • ίΞυϝΠϯͬΆ͍!
• ໐Βͯ͠Α͍ԻͷϨΠΞτΛܾΊΔϧʔϧ • ਫฏ: ͋ΔԻͷ࣍ʹ໐ͬͯΑ͍Ի? • ௐ (key), Ի֊
(scale) • ਨ: ͋ΔԻͱಉ࣌ʹ໐ͬͯΑ͍Ի? • = Ի (chord)
ௐ (key) ͱԻ֊ (scale) • Ի֊: ԻΛԻߴॱʹฒͨྻ • ྫ: υϨϛϑΝιϥγυ
• ௐ: த৺Իͱؔ࿈͚
Ի֊ (major scale) 2 2 2 2 2 1 1
Ի֊ (minor scale) 2 2 2 2 2 1 1
ͭ·Γ? • Ի֊ɺج४ͱͳΔԻͱɺԻͷͱɺͷൺ͔ΒͳΔ • →ج४ͱͳΔԻΛ༩͑ΕੜͰ͖Δ
Ի • ҟͳΔߴ͞ͷԻ͕ಉ࣌ʹ໐͍ͬͯΔঢ়ଶ • 3ͭͷԻ͔ΒͳΔࡾԻ (triad) ͕جຊ
ࡾԻ (major triad) 4 7
ࡾԻ (minor triad) 3 7
ͭ·Γ? • Իͷੑ࣭ = ԻΛߏ͢ΔԻͷൺ • ࠜԻ (root; Ұ൪ԼͷԻ) ͱͷൺͰنఔ͞ΕΔ
• → ࠜԻͱԻͷੑ࣭Λ༩͑ΔͱੜͰ͖Δ
ػೳ • ͬ͘͟Γݴ͏ͱɺݱࡏͷঢ়ଶ͔Β࣍ʹͲͷԻʹਐߦͯ͠ Α͍͔ఆΊͨϧʔϧू • ԻͦΕͧΕʹػೳ͕͋Δͱߟ͑ͯɺ ͦͷػೳʹΑͬͯذ͢Δ • ྫ: ͜ͷԻۓு͢ΔͷͰΑΓϦϥοΫεͰ͖ΔԻ
• ίʔυΛݟ·͢
σϞ
ল • ࠷ॳ͔Βಈ͘ͱ͜Ζ͔Β࡞ΔͱΑ͔ͬͨ…… • ཧతͳͱ͜Ζ (प) ͔Β࡞͍ͬͯͬͨͷΑ͘ͳ͔ͬ ͨ • ͷਫ਼……
ࠓޙͷల • Web Audioͱ݁߹ͯ͠Ի໐Β͍ͨ͠ • ટͷੜ → ͠ΐ΅͍͍ͯ͘ͳΒ͙͢ʹͰ͖ͦ͏