Jump to content

Recommended Posts

when i evaluate this:

(make-omn
         :pitch '(c5)
         :length '(3/12 -1/12 4/12 -1/20 3/20 1/20)                           
         :velocity '(mf))

 

the result is wrong (look at (3/12 -1/12 4/12).... but i would like to notate something like valeur ajoutée

isn't it possible? thanx a.

 

example.thumb.jpg.70547778e4c126771e3f34

 

Link to comment
Share on other sites

seems to be a bug...

evaluate this: 

(make-omn
         :pitch '(c5 c3 c2 c3 c4)
         :length '(-2/12 2/12 -1/12 6/12 -1/12 3/12 1/12)                           
         :velocity '(mf))

 

after the 6/12 the next value -1/12 is shown as -1/8 in the score

score 
exa.thumb.jpg.d3953e489ff5da45f0eb5f85da

Link to comment
Share on other sites

a solution: perhaps it's interesting for anyone (or as an example for OPMUSMODUS-implementation) - a simple function (programmed by a friend and myself)  - not very smart but it (should) work(s) :-)

greetings

a.

(defun time-sign-changes (durations rhys &key (complex-bars 'nil))
  (if (equal complex-bars 'nil)
      (loop 
        for i in durations
        for j in rhys
        with sum = 0
        with last-j = (first durations)
        when (and (/= j last-j) (/= sum 0))
        collect (list (numerator sum) (denominator sum) 1) into bag and do (setq sum 0)
        do (setq sum (+ sum (abs (* i j))))
        when (> sum 1/4)
        collect '(1 4 1) into bag and do (setq sum (- sum 1/4))
        do (setq last-j j)
        finally (return (append bag (list (list (numerator sum) (denominator sum) 1)))))
    (loop 
      for i in durations
      for j in rhys
      with sum = 0
      with last-j = (first durations)
      when (and (/= j last-j) (/= sum 0))
      collect (list (numerator sum) (denominator sum) 1) into bag and do (setq sum 0)
      do (setq sum (+ sum (abs (* i j))))
      when (> sum 1/2)
      collect '(1 2 1) into bag and do (setq sum (- sum 1/2))
      do (setq last-j j)
      finally (return (append bag (list (list (numerator sum) (denominator sum) 1)))))))

 

(setq durations '(-1 2 3 4 3 2 -5 4 3 2 4 3 1 7)) 
(setq rhythms '(1/32 1/32 1/32 1/32 1/20 1/20 1/20 1/20 1/20 1/12 1/12 1/12))

;;creating the lengths
(setq lengths (loop 
                for i in durations
                for j in rhythms
                collect (* i j)))

;; creating the bar-changes -> :complex-bars 'nil or 't
(setq bars (time-sign-changes durations
                              rhythms
                               :complex-bars 'nil))

 

(def-score solo 
           (:title "example" 
                   :key-signature 'atonal
                   :time-signature bars
                   :tempo '90 
                   :layout (treble-layout 'example)) 
  (example 
   :omn  (make-omn
         :pitch '(c4)      
         :length lengths)
   :channel 1  
   :volume 100 
   :sound 'gm))

 

Link to comment
Share on other sites

thanx, but midi don't like such VALUES  :-( - so it works only for notation (or sibelius/finale)...

 

for the future it would be nice for my work (and perhaps interesting for other composers), when the time/rhythm-things could be more flexible - i think the biggest bounderies in opusmodus are the time/rhythm-things and it's notation (paper/pencil is the most flexible way, and i don't want to be a limited by software). if you work really "experimental" you want to map rhythm-values in a complexer way...

 

for me it would be great and very nice, when it would be possible to notate/play such rhy-sequences like '(1/4 1/4 1/12 1/12 3/16 1/16....) with values that are not completing 1/4. at the moment OPUSMODUS is "correcting" this... (would be nice to have irregular time-signatures or bars with no time-signature!!!)....  

 

in my work for example: i have programmed BOTS/non-trivial-machines, who are generating values "step-by-step" and the inner-state of the non-trivial-machine always changes its datas/memory (in a rnd-way). the result is, that the rhythm-values all the times are changing (more or less like in the special-bars-examples). and because it's not possible to calculate the output of the non-trivial-machine (that's the natural constitution of them), it's not possible to "fit the rhyhm-values" into prefiexed-bar-structures. that's a problem for my work and so i have to write such strange programs who fix the complicated rhy-changes :-)

 

thanx for your great work!!!

andré

 

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