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
Inside mml2wav.rb
Search
HORINOUCHI Masato
February 16, 2016
Technology
92
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Inside mml2wav.rb
社内LT大会 0x64物語 #05 Number 資料
HORINOUCHI Masato
February 16, 2016
More Decks by HORINOUCHI Masato
See All by HORINOUCHI Masato
balenaCloud
thermes
0
100
Church Numerals
thermes
0
54
CPS & CTO
thermes
0
250
FM synthesis
thermes
0
40
A440
thermes
0
66
Scheme Interpreter in Ruby
thermes
0
73
Clock / Timer
thermes
0
180
Hash Tree
thermes
0
82
POSIX Threads
thermes
0
59
Other Decks in Technology
See All in Technology
ruby.wasmとPicoRuby.wasmに対応した仮想DOMライブラリを作ってる話 #kaigieffect_kaigi
sue445
PRO
0
150
マルチアカウント環境でSecurity Hubの運用、その後どうなった? / SRE NEXT 2026 miniLT会
genda
0
110
企業でAWS Organizationsを動かすための組織設計の考え方
nrinetcom
PRO
1
110
人とエージェントが高め合う協業設計
kintotechdev
0
100
タスクの複雑さでモデルを選ぶ ── Thompson Samplingで動かす“トークン/コスト最適化
satohy0323
0
580
Genie Ontologyは銀の弾丸かを考える / Is Genie Ontology a Silver Bullet?
nttcom
0
420
AI時代のYAGNI:「爆速で無駄になった機能」からの学び / 20260720 Naoki Takahashi
shift_evolve
PRO
3
400
ヘルスケア領域における AI 活用と その安全性担保のための取り組み (Leveraging AI in Healthcare and Our Efforts to Ensure Its Safety) - Google I/O Extended Tokyo 2026, July 11, 2026
zettaittenani
0
430
ゴールデンパスは敷いただけでは道にならない ─ 企画部門のエンジニアが技術標準を事業価値に変えるまで
mhrtech
1
230
世界、断片、モデル。そして理解
ardbeg1958
1
130
Kaggleで成長するために意識したこと
prgckwb
2
420
非定型なドキュメントを効率よくリファクタする 〜えぇ!?仕様書27本の移行が1日で終わったって!?〜
subroh0508
2
570
Featured
See All Featured
Odyssey Design
rkendrick25
PRO
2
730
[SF Ruby Conf 2025] Rails X
palkan
2
1.2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
220
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
460
Amusing Abliteration
ianozsvald
1
230
Automating Front-end Workflow
addyosmani
1370
210k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
490
Prompt Engineering for Job Search
mfonobong
0
380
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Transcript
Inside mml2wav.rb 2016/02/16 0x64 Tales #05 Number Livesense Inc. HORINOUCHI
Masato
σϞ • εϖϥϯΧʔ ϝΠϯςʔϚ ΄͛ • spelunker.wav • h0p:/ /lifecycle.s165.xrea.com/mml1.html
͔ΒҾ༻ • FF4 ௨ৗઓಆۂ • ff4_bu0le.wav • h0p:/ /www.geociDes.jp/Dfa_adiru/57ff4 ͔ΒҾ༻
MML ઌఔͷԻσϞͷ MML 1. T120 V15 O4 L4 R CDEF
GAB>C< R C1& C1 F1& F1 G1& G1 2. T120 V15 O4 L4 R C1& C1& R R4E2.& E1 R4A2.& A1 R4B2.& B1 3. T120 V15 O4 L4 R R1 R1 R R2G2& G1 R2>C2& C1 R2D2& D1 track 1ʙ3 Ͱಉ࣌ൃԻ 3 ͱͳΔ ← ޡ༻͚ͩͲ͍ΘΏΔ 3Իɻ
ػೳ (1) • ྔࢠԽϏοτ: 8bit / 16bit • αϯϓϦϯάप: 8kHz
/ 44.1kHz / 48kHz (ҙมߋՄ) • ܗ: ਖ਼ݭ / ϊίΪϦ / ۣܗ
ػೳ (2) • ղೳ(ppq): 48 / 96 / 480 (ҙมߋՄ)
• τϥοΫ: ແݶ (ੑೳґଘ) • εςοϓ: ແݶ (ੑೳґଘ) • Իߴ: A440 / A442 / A444 (ҙมߋՄ) • Ի: 12ฏۉ / ७ਖ਼
Ͱ͖ͳ͍͜ͱ • εςϨΦग़ྗ • ࡾ֯ • Τϯϕϩʔϓ • ϊΠζग़ྗ •
σϡʔςΟʔൺมߋ
ରԠίϚϯυ • MML ͷओͳίϚϯυ΄ͱΜͲରԠɻ • O > < • C
D E F G A B + - • R • [0-9]+ (ࣈ) . (dot) • T L V Q &
ॲཧϑϩʔ 1. MML → ؆қ MIDI γʔέϯεσʔλʹม • note number
/ step5me / gate5me / velocity 2. γʔέϯεσʔλ → -1.0 ʙ 1.0 ͷܗσʔλʹม 3. τϥοΫຖͷܗσʔλΛ߹ 4. ߹ޙͷܗσʔλΛ WAV ʹΤϯίʔυ
·ͱΊ • MML ͷύʔε؆୯ɻ • ֤ॲཧΛநԽ͢ΔͱɺػೳΛޙ͚͍͢͠ɻ • ͦͷͨΊ࠷దԽ͕͞Ε͓ͯΒͣॲཧ͕Ͱॏ͍ɻ • ΑΓਖ਼֬ʹγʔέϯεԽ͢Δͱ
.mid ͷมͰ͖Δ༧ײɻ • ςʔϚ͔Βܹ͘͠ઢͨ͠ɻ • ͱ͍͑ͱָͯ͠ΊͨͷͰେຬɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠