smml 0.0.1.3 → 0.0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README_smml.md +3 -0
- data/lib/smml/msm.rb +7 -2
- data/lib/smml/version.rb +1 -1
- data/sample/midi-preModifier.txt +87 -0
- data/sample/midi-test.mml +20 -0
- data/smml.gemspec +3 -3
- metadata +6 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 75ff5842372ded20636c957cecf250fd9281aeaa
|
4
|
+
data.tar.gz: 9fa770527ddb702083efc7e8fadf3de322d2018c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 85190158c8daf8d4348b4b9a3bdab554296646d2177cd461cea9b31906b27c3595e23b7d12e4bb35a134f232c0822949eeb04271b873fff81e9c250aca2e03c3
|
7
|
+
data.tar.gz: aaad50efe9d52991caf0742f0144091cd4f407f8bb51feb14a91fe3cf1a91a07494c573e0bbbb0ee9c924682855174b311ef23a702f7af8268dc03d40b42728a
|
data/README_smml.md
CHANGED
data/lib/smml/msm.rb
CHANGED
@@ -39,6 +39,7 @@ syntax: ...( will be changed time after time)
|
|
39
39
|
(ch:1) =set this track's channel 1
|
40
40
|
(cc:10,64) =controlChange number10 value 64. see SMF format.
|
41
41
|
(pan:>64) =panpot right 64. ( pan:>0 set center )
|
42
|
+
(oct:2) =set octave 2
|
42
43
|
(bend:100) =pitch bend 100
|
43
44
|
(bendRange:12) =set bend range 12. default is normaly 2.
|
44
45
|
(bendCent:on) =set bend value unit cent (half tone = 100). default is 'off' and value is between -8192 and +8192.
|
@@ -1530,6 +1531,9 @@ module MidiHex
|
|
1530
1531
|
@h<<[:call,:preBefore,s]
|
1531
1532
|
when /^\(roll:(.*)\)/
|
1532
1533
|
@shiftbase=$1.to_i
|
1534
|
+
when /^\(oct(ave)?:(.*)\)/
|
1535
|
+
oct=($2.to_i+2)*12
|
1536
|
+
@h<<[:call,:basekeySet,oct]
|
1533
1537
|
when /^\(key:reset\)/
|
1534
1538
|
@h<<[:call,:basekeySet,@basekeyOrg]
|
1535
1539
|
when /^\(p:(([[:digit:]]+),)?(([[:digit:]]+)|([\?[:alnum:]]+)(,([[:digit:]]))?)\)/
|
@@ -1572,8 +1576,9 @@ module MidiHex
|
|
1572
1576
|
@h<<[:velocityFuzzy,$1.to_i]
|
1573
1577
|
when /^\(v:([0-9]+)\)/, /^v([0-9]+)/
|
1574
1578
|
@h<<[:velocity,$1.to_i]
|
1575
|
-
when /^\(g
|
1576
|
-
|
1579
|
+
when /^\(g(ate)?:([0-9]+)\)/
|
1580
|
+
g=$2.to_i
|
1581
|
+
@h<<[:call,:setGateRate,g]
|
1577
1582
|
when /^\(volume:(.*)\)/
|
1578
1583
|
@h<<[:masterVolume,$1.to_i]
|
1579
1584
|
when /^\(tempo:reset\)/
|
data/lib/smml/version.rb
CHANGED
@@ -0,0 +1,87 @@
|
|
1
|
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; comment start
|
2
|
+
|
3
|
+
this is a comment.
|
4
|
+
free for newline
|
5
|
+
multi line comment. abcdefg
|
6
|
+
|
7
|
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; comment end by same length ';;'s as start
|
8
|
+
|
9
|
+
;; title jazz-taste-something
|
10
|
+
;; midifilename preModifier.mid
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
;; track 1
|
15
|
+
|
16
|
+
;; System Exclusive Data
|
17
|
+
|
18
|
+
EFF:=(
|
19
|
+
F0,43,10,4C,02,01,00,01,01,F7 ;; room type
|
20
|
+
F0,43,10,4C,02,01,02,40,F7 ;; reverb
|
21
|
+
F0,43,10,4C,02,01,0B,77,F7 ;; dry/wet
|
22
|
+
F0,43,10,4C,02,01,14,70,F7 ;; feed back level
|
23
|
+
)
|
24
|
+
|
25
|
+
;; blues chord sequence
|
26
|
+
BL:=:c7,===:f7,===:c7,=== ==== :f7,=== ====:c6,===:am7,==:aaug, :dm7,===:g7,===:c6,=:a7,=:dm7,=:gaug,=
|
27
|
+
|
28
|
+
;; rythm
|
29
|
+
RY:=[{_k!,_o!}/:_c!r_o!//:_o!2_s!//:_c!r_o!/ {_k!,_o!}/:_c!r_o!/_o!/:_c!r_o!/]6
|
30
|
+
|
31
|
+
;; base line
|
32
|
+
BS:=ccecffcfccefgfec fffcffffcccbaacC dcbagGabccaadd-gg
|
33
|
+
|
34
|
+
(xg:on)
|
35
|
+
&( $delta(120) $se($EFF[1]) 00 $se($EFF[2]) 00 $se($EFF[3]) 00 $se($EFF[4]))
|
36
|
+
(tempo:120)
|
37
|
+
(accent:25)
|
38
|
+
|
39
|
+
(p:sax)v100
|
40
|
+
(mark:start) /:rr--'g//:+e'(+)dre/~/:rrr-g/ /:+ererrrr//:eabe+berrr/rr-
|
41
|
+
|
42
|
+
||| (mark:start) r*120 (p:orga)(stroke:4) v65 (g:63) r*10 r8
|
43
|
+
||| (mark:start) r*120 v65 r*24 r7/:rr_s!/
|
44
|
+
||| (mark:start) r*120 (p:bas)v80 -- (g:73) r*20 r8
|
45
|
+
||| (mark:start)
|
46
|
+
/////////////////////////////////////////////////////////////////
|
47
|
+
|
48
|
+
[
|
49
|
+
(V: o o 110 50,80,40,110 115 60 90 100,50 110,80 90)
|
50
|
+
(G: o - o - o -o 30 o o o- o-o)
|
51
|
+
r/:ede/~/:~~c/ /:fD^f/~~/:~~D/ r/:F~~^g/~/:~fD/ /:fD~/c~~
|
52
|
+
|
53
|
+
||| [$BL]12
|
54
|
+
||| [$RY]12
|
55
|
+
||| [$BS]12
|
56
|
+
///////////////////////////////////////////////////////////////
|
57
|
+
(V: o,80,110 90, o oo o oo,o 110, o o oo oo 100 o,o o )
|
58
|
+
(G: o oo o o oo o oo o -,)
|
59
|
+
rf/:ara/~ /:~~A//:~~c^d~A//:a~Ag~^a~//:~^ar/ rg/:~c~//:~Aa/ /:fgD//:~ef/~/:r~~a/
|
60
|
+
|
61
|
+
;; track 2 over are omitted by page seperater"///"
|
62
|
+
;;;;;;;;;
|
63
|
+
tracks time adjust mark is not yet ...
|
64
|
+
;;;;;;;;;
|
65
|
+
///////////////////////////////////////////////////////////////
|
66
|
+
|
67
|
+
(V: o, o, o, 100,o , o,o,o, 100,90, o 110, o , o,o, 110,110, )
|
68
|
+
(G: o o o o o o o o o o,80, -, o o - )
|
69
|
+
(A: o o o o o o o o (bend:200,-5000,-4700,-4700,-400,-200,0,0,10000,-10000) o, )
|
70
|
+
/:~-dd/~~+/:ar/ A~/:~~a//:gfg/ /:~~e//:~r2+d{e,a,+e}/(mark:p)rr ~/:-crf/~/0.51:~Df//0.49:g2f2D2cD2cAgf/ + ]12
|
71
|
+
|
72
|
+
|||
|
73
|
+
|||
|
74
|
+
|||
|
75
|
+
TR(x):=(mark:p@$x) r*120 /2:ergrre/
|
76
|
+
|||(p:trum)+(v:90)(g:70)(mark:p) r*120 /2:ergrre/ $TR(:4,9,10,11,12)
|
77
|
+
|
78
|
+
|
79
|
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
80
|
+
|
81
|
+
NOTE:
|
82
|
+
currently, delta-time data in raw hex part is not added to the total-time.
|
83
|
+
so mark adjusting etc. must be modified by hand.
|
84
|
+
in this case, in the room effect data '$delta(120)' is used, so a rest data 'r*120' will adjust the time shift (120 ticks).
|
85
|
+
|
86
|
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
87
|
+
|
@@ -0,0 +1,20 @@
|
|
1
|
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
2
|
+
|
3
|
+
for CI test script.
|
4
|
+
ver. 1.0
|
5
|
+
|
6
|
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
7
|
+
|
8
|
+
(tempo:200)
|
9
|
+
t:=abcde
|
10
|
+
tt(x):=ee$xff
|
11
|
+
|
12
|
+
a`b'cd (stroke:86) [ef{e,f,g}g_c!:cmaj7,<(stroke:3)]4>>>> (p:flut)(g:80)[/2:aAbcCdef/(g:20)-]2 (bendCent:off)[c(bend:200.2)/cc/(bend:0)c(bendCent:on)]2 (mark:tes)/2:c2gc/ (g:100) f*240e*120d*60 --(p:organ) $t (+3)a(+)b(0)c $tt(4:1,2,3)
|
13
|
+
|
14
|
+
|
15
|
+
//////////////////////////////////////////////////////////////////////
|
16
|
+
|
17
|
+
(mark:end)/arr/rar/gaa/rr
|
18
|
+
|||(pan:<50)(mark:tes)/2:e2ee/ (mark:end)(p:trum)/rbr/rbr/abb/
|
19
|
+
|||(pan:>50) (mark:end)(g:30)/rre/rer/dee/
|
20
|
+
///////////////////////////////////////////////////////////////
|
data/smml.gemspec
CHANGED
@@ -10,14 +10,14 @@ Gem::Specification.new do |spec|
|
|
10
10
|
spec.email = ["pianotoieba+smml@gmail.com"]
|
11
11
|
spec.summary = %q{Simple MML to MIDI}
|
12
12
|
spec.description = %q{compile a Music Macro Language file to a Standard MIDI file.}
|
13
|
-
spec.homepage = ""
|
13
|
+
spec.homepage = "https://github.com/tabasano/wavseq"
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
16
|
-
spec.files = Dir.glob("lib/*")+Dir.glob("lib/smml/*")+["Gemfile","Rakefile","LICENSE.txt","smml.gemspec","README_smml.md"]
|
16
|
+
spec.files = Dir.glob("lib/*")+Dir.glob("lib/smml/*")+["Gemfile","Rakefile","LICENSE.txt","smml.gemspec","README_smml.md"]+["sample/midi-preModifier.txt","sample/midi-test.mml"]
|
17
17
|
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
|
-
|
20
|
+
spec.required_ruby_version = '>= 1.8.7'
|
21
21
|
spec.add_development_dependency "bundler", "~> 1.6"
|
22
22
|
spec.add_development_dependency "rake", "~> 10.0"
|
23
23
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smml
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.1.
|
4
|
+
version: 0.0.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- tabasano
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-08-
|
11
|
+
date: 2014-08-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -55,7 +55,9 @@ files:
|
|
55
55
|
- LICENSE.txt
|
56
56
|
- smml.gemspec
|
57
57
|
- README_smml.md
|
58
|
-
|
58
|
+
- sample/midi-preModifier.txt
|
59
|
+
- sample/midi-test.mml
|
60
|
+
homepage: https://github.com/tabasano/wavseq
|
59
61
|
licenses:
|
60
62
|
- MIT
|
61
63
|
metadata: {}
|
@@ -67,7 +69,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
67
69
|
requirements:
|
68
70
|
- - ">="
|
69
71
|
- !ruby/object:Gem::Version
|
70
|
-
version:
|
72
|
+
version: 1.8.7
|
71
73
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
72
74
|
requirements:
|
73
75
|
- - ">="
|