musa-dsl 0.22.1 → 0.22.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/musa-dsl.rb +1 -1
- data/lib/musa-dsl/sequencer/sequencer-dsl.rb +3 -2
- data/lib/musa-dsl/series/quantizer-serie.rb +19 -7
- data/musa-dsl.gemspec +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 700593377e2427ac571b039197f3fdb0c3d904dbe0ed74725e54f1c4421f074c
|
4
|
+
data.tar.gz: a0bb8dbf80d824eaf5543db333964d5cb449819c22a60fb54670a007c9b327b6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: de57aaaf8a10d8a1b6ab68ae8ae9e6660488cbc3efce53fa7a1c9a4bd84872a8225ab6d854f9101deb5c7b872389789fbe653dc5b608c809cdd387f1351e53c5
|
7
|
+
data.tar.gz: 2719f0f97281138feb53542ea842759e965d0c1f756fdbd92797935963c9adaffe91e67212f5efd3ac2e3e2ef2d956da60cce73efbefce764aef224d8042f0bf
|
data/lib/musa-dsl.rb
CHANGED
@@ -18,12 +18,13 @@ module Musa
|
|
18
18
|
:event_handler
|
19
19
|
|
20
20
|
def_delegators :@context, :position, :logger, :debug
|
21
|
-
def_delegators :@context, :with, :now, :at, :wait, :play, :every, :move
|
21
|
+
def_delegators :@context, :with, :now, :at, :wait, :play, :play_timed, :every, :move
|
22
22
|
def_delegators :@context, :everying, :playing, :moving
|
23
23
|
def_delegators :@context, :launch, :on
|
24
24
|
def_delegators :@context, :run
|
25
25
|
|
26
|
-
def initialize(beats_per_bar
|
26
|
+
def initialize(beats_per_bar = nil,
|
27
|
+
ticks_per_beat = nil,
|
27
28
|
sequencer: nil,
|
28
29
|
logger: nil,
|
29
30
|
do_log: nil, do_error_log: nil, log_position_format: nil,
|
@@ -65,7 +65,7 @@ module Musa
|
|
65
65
|
case n
|
66
66
|
when nil
|
67
67
|
time = value = nil
|
68
|
-
when AbsTimed
|
68
|
+
when Musa::Datasets::AbsTimed
|
69
69
|
time = n[:time].rationalize
|
70
70
|
value = n[@value_attribute].rationalize
|
71
71
|
when Array
|
@@ -144,7 +144,9 @@ module Musa
|
|
144
144
|
|
145
145
|
return { time: first[:time],
|
146
146
|
@value_attribute => first[:value],
|
147
|
-
duration: durations_to_sum.sum { |_| _[:duration] } }
|
147
|
+
duration: durations_to_sum.sum { |_| _[:duration] } }
|
148
|
+
.extend(Musa::Datasets::AbsTimed)
|
149
|
+
.extend(Musa::Datasets::AbsD)
|
148
150
|
else
|
149
151
|
i += 1
|
150
152
|
end
|
@@ -179,7 +181,9 @@ module Musa
|
|
179
181
|
|
180
182
|
return { time: first[:time],
|
181
183
|
@value_attribute => first[:value],
|
182
|
-
duration: durations_to_sum.sum { |_| _[:duration] } }
|
184
|
+
duration: durations_to_sum.sum { |_| _[:duration] } }
|
185
|
+
.extend(Musa::Datasets::AbsTimed)
|
186
|
+
.extend(Musa::Datasets::AbsD)
|
183
187
|
else
|
184
188
|
i += 1
|
185
189
|
end
|
@@ -400,7 +404,9 @@ module Musa
|
|
400
404
|
if time > first_time
|
401
405
|
result = { time: first_time,
|
402
406
|
@value_attribute => round_to_nearest_quantize(first_value, value),
|
403
|
-
duration: time - first_time }
|
407
|
+
duration: time - first_time }
|
408
|
+
.extend(Musa::Datasets::AbsD)
|
409
|
+
.extend(Musa::Datasets::AbsTimed)
|
404
410
|
else
|
405
411
|
result = _next_value
|
406
412
|
end
|
@@ -409,7 +415,9 @@ module Musa
|
|
409
415
|
next_time = @crossings[1][:time]
|
410
416
|
result = { time: time,
|
411
417
|
@value_attribute => value,
|
412
|
-
duration: next_time - time }
|
418
|
+
duration: next_time - time }
|
419
|
+
.extend(Musa::Datasets::AbsD)
|
420
|
+
.extend(Musa::Datasets::AbsTimed)
|
413
421
|
|
414
422
|
@crossings.shift
|
415
423
|
|
@@ -417,7 +425,9 @@ module Musa
|
|
417
425
|
if @last_time && @last_time > @crossings[0][:time]
|
418
426
|
result = { time: @crossings[0][:time],
|
419
427
|
@value_attribute => @crossings[0][@value_attribute],
|
420
|
-
duration: @last_time - @crossings[0][:time] }
|
428
|
+
duration: @last_time - @crossings[0][:time] }
|
429
|
+
.extend(Musa::Datasets::AbsD)
|
430
|
+
.extend(Musa::Datasets::AbsTimed)
|
421
431
|
|
422
432
|
@last_time = nil
|
423
433
|
end
|
@@ -427,7 +437,9 @@ module Musa
|
|
427
437
|
if @first && @last_time && @last_time > first_time
|
428
438
|
result = { time: first_time,
|
429
439
|
value: round_to_nearest_quantize(first_value),
|
430
|
-
duration: @last_time - first_time }
|
440
|
+
duration: @last_time - first_time }
|
441
|
+
.extend(Musa::Datasets::AbsD)
|
442
|
+
.extend(Musa::Datasets::AbsTimed)
|
431
443
|
|
432
444
|
@first = false
|
433
445
|
@last_time = false
|
data/musa-dsl.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'musa-dsl'
|
3
|
-
s.version = '0.22.
|
3
|
+
s.version = '0.22.2'
|
4
4
|
s.date = '2020-11-11'
|
5
5
|
s.summary = 'A simple Ruby DSL for making complex music'
|
6
6
|
s.description = 'Musa-DSL: A Ruby DSL for algorithmic music composition, device language neutral (MIDI, OSC, etc)'
|