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
Rubyと戯れるOSS DTM
Search
Hirofumi Wakasugi
May 31, 2016
Programming
850
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rubyと戯れるOSS DTM
TokyuRuby会議10 (
http://regional.rubykaigi.org/tokyu10/
) (2016-05-29)
Hirofumi Wakasugi
May 31, 2016
More Decks by Hirofumi Wakasugi
See All by Hirofumi Wakasugi
Racc Introduction
5t111111
1
510
Keep Calm and Enjoy Gachima
5t111111
3
440
Swift Functional Programming
5t111111
0
330
Middleman on Production
5t111111
0
220
名古屋Ruby会議03 高速一言感想
5t111111
3
1.1k
ドキュメント翻訳懺悔のLT ~進捗ダメです~
5t111111
1
740
UFO演算子について
5t111111
0
460
Rubyの拡張をCrystalで書いてみる
5t111111
0
180
YARV INTRODUCTION
5t111111
0
120
Other Decks in Programming
See All in Programming
Apache Hive: Toward a Cloud Native Lakehouse
okumin
0
180
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
2
260
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
540
メールのエイリアス機能を履き違えない
isshinfunada
0
230
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
320
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
150
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
640
5分で問診!Composer セキュリティ健康診断
codmoninc
0
930
プロポーザルを書いてもらう
pvcresin
0
300
AI Engineeringは、AIプロダクトだけのものか? 〜AIがソフトウェアを作る時代の新しい当たり前〜 / No AI in your product. AI Engineering in your development.
rkaga
4
390
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
0
130
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.2k
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
57
14k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
310
Thoughts on Productivity
jonyablonski
76
5.3k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.5k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
280
Utilizing Notion as your number one productivity tool
mfonobong
4
530
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
sira's awesome portfolio website redesign presentation
elsirapls
0
320
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Scaling GitHub
holman
464
140k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
170
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
200
Transcript
3VCZͱٔΕΔ 044%5. Playing the computer music with OSS via Ruby
Hirofumi Wakasugi (@5t111111)
Hirofumi Wakasugi (@5t111111) ϓϩάϥϚʔ
04$ 0QFO4PVOE$POUSPM OSC Host Address (like URI) Message /oscillator/frequency 44100
/foo/bar/baz:12345 440 0.1 “Hello!” w ओʹԻָؔ࿈ͰΘΕΔ௨৴ϓϩτίϧ w 6%15$1ΛͬͯωοτϫʔΫܦ༝Ͱૹड৴Ͱ͖Δ w .*%*Λସ͢Δͷͱͯ͠։ൃ͞Εͨ
RUBY OSS DTM
1VSF%BUB 1E w ։ൃͨ͠ͷ.BYͷ։ൃऀͰ ͋Δ.JMMFS1VDLFUUF Իڹ߹ϚϧνϝσΟΞͷͨΊͷάϥϑΟΧϧ ϏδϡΞϧ ϓϩάϥϛϯάݴޠ w
ஔͨ͠ΦϒδΣΫτಉ࢜Λ ݁ઢ͠ϝοηʔδΛΓͱΓ ͢Δ͜ͱͰϓϩάϥϜΛ࡞Δ
ruby-puredata https://github.com/nagachika/ruby-puredata
ruby-puredata https://github.com/nagachika/ruby-puredata
·ͣϦϕϯδͰSVCZQVSFEBUBಉࠝͷαϯϓϧԻݯΛ໐Β͢ IUUQTHJUIVCDPNUURSLMUCMPCNBTUFSQFOUBOHMFFYBNQMFSC
࣍ʹγϯϓϧͳαΠϯͷγϯηΛىಈ IUUQTHJUIVCDPNUURSLMUCMPCNBTUFSQFOUBOHMFTZOUISC ͨͩ͜Ε୯ମͰ Ի͕໐Βͤͳ͍ͨΊɺ ผͷϓϩάϥϜ͔Β 04$ϝοηʔδΛૹΔ
+3VCZ"SU $PEFBT"SU w ·ͩ৽͍͠ϓϩδΣΫτͰɺ 1SPDFTTJOHSVCZQSPDFTTJOH 1SPDFTTJOH8SBQQFS-JCSBSZGPS3VCZ +3VCZ w ϏδϡΞϧΞʔτ͚ͷϓϩάϥ ϛϯάݴޠ1SPDFTTJOHΛ3VCZͰ
ॻ͘͜ͱ͕Ͱ͖Δ https://ruby-processing.github.io
+3VCZ"SUͰॻ͍ͨ04$ίϯτϩʔϥʔͰԋ IUUQTHJUIVCDPNUURSLMUCMPCNBTUFSKSVCZ@BSUPTD@DPOUSPMMFSSC ΫϦοΫͨ͠࠲ඪʹ Ԡͨ͡04$ϝοηʔδ͕ ૹ৴͞ΕͯԻ͕໐Δ
ͭͣͭհ͍ͯ͘͠ͷ͜ͷลʹͯ͠ ͬͺΓۂԋΓ·͢
OJMTUFQT "O04$DMJFOUXIJDIQSPWJEFTWFSZTJNQMFTUFQTFRVFODFS https://github.com/5t111111/nilsteps # C1 for 1st note and D1
for 8th note of 16 steps in a bar seq = Nilsteps::Sequencer.new(bpm: 128) seq.setup_steps(0 => 'C1', 8 => 'D1') seq.play(4) # Drum machine like sequence DSL kick 'oxxxoxxxoxxxoxox', times: 1 w υϥϜϚγϯͷΑ͏ͳ୯७ͳεςοϓγʔέϯαʔ w ϋογϡͰεςοϓΛࢦఆͯ͠04$ϝοηʔδΛૹ৴Ͱ͖Δ
ಉ࣌ʹͭͷԻ͔͠ ໐Βͤ·ͤΜ o w8 it sux cuz
΅͘͜ͷOJMTUFQTΛ ˒ฒߦ࣮ߦ͍ͨ͠ w ͳͥͳΒಉ࣌ʹෳͷԻΛ໐Β͍͔ͨ͠Βͩ ˒ґଘؔΛࢦఆ͍ͨ͠ w ͳͥͳΒ࣮ߦͷॱ൪Λࢦఆͯ͠ۂΛߏ͍͔ͨ͠Βͩ ˒3VCZͰॻ͖͍ͨ w ͳͥͳΒ3VCZͰॻ͖͍͔ͨΒͩ
None
3VLBXB )ZQFSTJNQMFXPSLqPXFOHJOFGPS3VCZ https://github.com/joker1007/rukawa ˒ ฒߦ࣮ߦͰ͖Δ ˒ ґଘؔΛࢦఆͰ͖Δ ˒ 3VCZͰॻ͚Δ
1MBZBSPVOEXJUIFDPTZTUFN 3VLBXBͰ OJMTUFQTͷδϣϒΛίϯτϩʔϧͯ͠ 1VSF%BUBͷԻΛग़͢͜ͱͰ ۂʹ͢Δͱ͍͏ͷΛΓ·͢
CVOEMFFYFDSVLBXBSVO4POH4FRVFODF IUUQTHJUIVCDPNUURSLMUUSFFNBTUFSTFRVFODF
͝ਗ਼ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠