musa-dsl 0.22.1 → 0.22.2
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/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)'
|