Jump to content

o_e

Members
  • Joined

  • Last visited

Posts posted by o_e

  1. Hi,

    Out of curiosity I asked the AI-promt Claude (https://claude.ai) and the code it spits out seem to work. Maybe it is useful as a starting point..?

    best

    (defun select-path (lists &optional start-num)
      (let ((current (if start-num start-num (nth (random (length (first lists))) (first lists))))
            (result nil))
        (push current result)
        (dolist (lst (rest lists))
          (let* ((higher (remove-if (lambda (x) (<= x current)) lst))
                 (next (when higher
                         (if (and (> (length higher) 1) (zerop (random 2)))
                             (second higher)  ; next-next higher
                             (first higher))))) ; next higher
            (when next
              (setf current next)
              (push current result))))
        (reverse result)))
        
    
    (select-path '((2 8 9 14 20 21 26) (1 2 3 7 13 14 19 25 26) (0 6 7 12 18 19 24) (0 5 11 12 17 23 24)) 8)
    
    
  2. Hi,

    You have to find out what the port name of the MIDI-Interface is, that you are using, you will find it in the Audio-MIDI-Setup/MIDI-Studio ((see screenshot above)(if you are on a mac, if you are a windows user, others have to chime in and explain how to find the port names in windows)),

    then you have to use that port (in my case its called "Port 1"), unless you changed it manually the disklavier is set to MIDIChannel 1.

    Complete score is attached.

    hth

    PS Evaluating (midi-destinations) shows all the ports seen by OM

    Bildschirmfoto 2025-04-05 um 21.07.41.jpg

    Glocken_dk.opmo

  3. Yes, I have a disklavier and as an interface a RME-Fireface 802 and I have for the use with ps a setup like this:

    Port 1 is the name of the Fireface as you can see in the screenshot of the Audio-MIDI-Setup, the attached "disklavier.opmo" file lives in the Def-Instrument-Sets folder and I call the disklavier with 'disk in ps.

    hth

    ole

    Bildschirmfoto 2025-03-14 um 18.58.06.jpg

    Disklavier.opmo

  4. Just play around a little with pitch-variation a little, why does it makes no difference in the output what

    :type

    I choose?

    What am I missing?

    (setf chords '((h a2a3c4 c4a3a3) (h d4f3g2 f4g3d4)))
    
    (pitch-variation 0 1 4 (chord-pitch-unique chords)
                     :type 'c :seed 23)  
    ==>((h a3 c4 a2 a3) (h c4 a3 c4 a3) (h g2 f3 d4 f3) (h d4 f4 g3 f4))
    
    (pitch-variation 0 1 4 (chord-pitch-unique chords)
                     :type 'm :seed 23) 
    ==>((h a3 c4 a2 a3) (h c4 a3 c4 a3) (h g2 f3 d4 f3) (h d4 f4 g3 f4))
    
    (pitch-variation 0 1 4 (chord-pitch-unique chords)
                     :type '? :seed 23) 
    ==>((h a3 c4 a2 a3) (h c4 a3 c4 a3) (h d4 g2 f3 g2) (h d4 g3 d4 f4))

     

    Thanks!

  5. I have lots of selfmade docs, which are embedded nicely in the old OM version (by putting them in the ~/Opusmodus/System Library folder).

    Where do I put them in the 3.x version so I can access them via the search function (There is no System Library folder any more)?

    And do they have to be in .pdf format (which will make them pretty useless too for me, because I often make new annotations, when calling them)?

     

    Thanks for an answer!

  6. (setf num '(4 3 2 2 3 4 5)) 
    (setf pitch '(a4 b4 c4 d4 e4))
    
    (if (< (length num) (length pitch)) pitch num) 
    =>(4 3 2 2 3 4 5)
    ;;;;;;
    (setf num '(4 3 2)) 
    (setf pitch '(a4 b4 c4 d4 e4))
    
    (if (< (length num) (length pitch)) pitch num) 
    =>(a4 b4 c4 d4 e4)

    hth

     

    Edit: I think you need cond to compare the length of three lists with each other:

    (setf durations '(q e q e s))
    
    (setf chords '(c4e4g4 e4g4c5)) 
    
    (setf repetitions '(7 1 6 2 5 3 4 4))
    
    (cond ((> (length chords) (and (length durations) (length repetitions))) chords)
          ((> (length durations) (and (length chords) (length repetitions))) durations)
          ((> (length repetitions) (and (length chords) (length durations))) repetitions))

     


Copyright © 2014-2025 Opusmodus™ Ltd. All rights reserved.
Product features, specifications, system requirements and availability are subject to change without notice.
Opusmodus, the Opusmodus logo, and other Opusmodus trademarks are either registered trademarks or trademarks of Opusmodus Ltd.
All other trademarks contained herein are the property of their respective owners.

Powered by Invision Community

Important Information

Terms of Use Privacy Policy