Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
How to send distibuted traces to Datadog using build own OpenTelemetry-Lambda distribution
aereal
3
210
好きな技術《コト》で、 生きていく技術 / life with what you like
aereal
5
2.3k
qron: Cloud Native Cron Alternativeの今
aereal
2
2.1k
自動作曲入門 / introduction to programatic music composition
aereal
1
530k
はてなブログ タグとCDK / The epic of AWS CDK and Hatena Blog Tag
aereal
3
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
17k
ScalaとPerlでMicroservices in production / Building microservices with Perl and Scala in production
aereal
0
5.4k
Other Decks in Programming
See All in Programming
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
790
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
1
100
The Efficiency Paradox and How to Save Yourself and the World
hollycummins
1
210
Cursorでアプリケーションの追加開発や保守をどこまでできるか試したら得るものが多かった話
drumnistnakano
0
280
Serverless苦闘史
mosh_inc
0
140
AWS認定資格を勉強した先に何があったか
satoshi256kbyte
2
190
カンファレンスの「アレ」Webでなんとかしませんか? / Conference “thing” Why don't you do something about it on the Web?
dero1to
2
160
今からはじめるAndroidアプリ開発 2024 / DevFest 2024
star_zero
0
770
かんたんデザイン編集やってみた~「完全に理解した」までの道のり~
morit4ryo
1
120
物流システムにおけるリファクタリングとアーキテクチャの再構築 〜依存関係とモジュール分割の重要性〜
deeprain
1
690
[FlutterKaigi2024] Effective Form 〜Flutterによる複雑なフォーム開発の実践〜
chocoyama
1
4k
たのしいparse.y
ydah
3
110
Featured
See All Featured
Facilitating Awesome Meetings
lara
50
6.1k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Code Reviewing Like a Champion
maltzj
520
39k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
Visualization
eitanlees
145
15k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Making the Leap to Tech Lead
cromwellryan
133
9k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
How to train your dragon (web standard)
notwaldorf
88
5.7k
The Cost Of JavaScript in 2023
addyosmani
45
6.9k
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ͱ݁߹ͯ͠Ի໐Β͍ͨ͠ • ટͷੜ → ͠ΐ΅͍͍ͯ͘ͳΒ͙͢ʹͰ͖ͦ͏