Jump to content

Rhythmic Curve between defined values


Veit

Recommended Posts

How do I create a rhythm that accelerates or slows down between defined rhythmic values?

For example: A constant rhythm of repeated 1/136 notes should gradually slow down until it reaches 1/88. This should really be achieved with note values, not with tempo changes.

Link to comment
Share on other sites

Maybe like this .That is the first that came to mind. Probably a better way.

(setf ll (gen-integer 144 88))

(make-omn 
:pitch  '(c4 ) 
:length   (loop for i in ll collect (/ 1 i))
)
;; result is this:
'(1/144 c4 mf 1/143 1/142 1/141 1/140 1/139 1/138 1/137 1/136 1/135 1/134 1/133 1/132 1/131 1/130 1/129 u 1/127 1/126 1/125 1/124 1/123 1/122 1/121 1/120 1/119 1/118 1/117 1/116 1/115 1/114 1/113 1/112 1/111 1/110 1/109 1/108 1/107 1/106 1/105 1/104 1/103 1/102 1/101 1/100 1/99 1/98 1/97 1/96 1/95 1/94 1/93 1/92 1/91 1/90 1/89 1/88)

But I get this error  when I try to get notation with cmd-1 :

 

OM 40 > audition-musicxml-omn-snippet

Error: Failed to create interface #<om-capi::notation-view "Notation Viewer: Snippet [10]" 812054F143> in its process #<mp:process Name "Cocoa Event Loop" Priority 70000000 State "Running (inside foreign code)">. Errors during display:  
 -->> The value 3217 of cl-midi::numer inside CL-MIDI:MAKE-TIME-SIGNATURE-EVENT is not of type (unsigned-byte 8). 

 

The values are ratios that should be valid.I tried several  by themselves and they show in notation.

Any idea?

Link to comment
Share on other sites

This can't be displayed in notation. How do you display 1/139 etc...

 

(setf step 8)
(setf den (gen-integer 144 88 step))
=> (144 136 128 120 112 104 96 88)

(loop for i in den
      collect (/ 1 i))
=> (1/144 1/136 1/128 1/120 1/112 1/104 1/96 1/88)

 

This ratios making no sense in notation, this is why we use tempo changes - rit. and accel.

Link to comment
Share on other sites

I assume your example was a working example.

It also throws an error on cmd-1 on my Mac(Sonoma) newest Opusmodus.

In case it is working on your system I can send a bug report.

 

I tried the following:

'( 1/139 c5 1/99)

'( 1/139 c5 1/101)

'( 1/139 c5 1/101 1/99)


(setf step 1)
(setf den (gen-integer 144  2 step))

(setf xx (make-omn 
:pitch  '(c4 ) 
:length   (loop for i in den collect (/ 1 i))
))

(single-events xx)

The first 2 lines are shown in notation . The third throws error.

For xx: midi and audition  works. Notation throws error.

(single-events xx) shows all length in notation and plays them.

 

The problem seems not to be that the length can't be displayed but calculating the beat I guess. 

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

Terms of Use Privacy Policy