Jump to content

opmo

Administrators
  • Posts

    2,903
  • Joined

  • Last visited

Posts posted by opmo

  1. With Plist

    (library 'metrons-middle-eastern '8-metrons 'Ghuriyaneh)

     

    With in OMN (no quotes) list.
    (library metrons-middle-eastern 8-metrons Ghuriyaneh)

     

     
    Expand library
    (expand-libraries '(library metrons-middle-eastern 8-metrons Ghuriyaneh))

     

    Generate lengths
    (gen-length (library 'metrons-middle-eastern '8-metrons nil :random 10) '(s))
    (gen-length (library 'metrons-lib '24-metrons nil :random 10) '(s))

     

  2. EXPAND-CHORD documentation:

    root pitch symbol.
    chord chord name.
    add an integer (additional intervals).
    remove an integer (remove intervals from the tonality).
    rotate and integer (chordal inversion).
    variant a variant symbol: o, r, i, ri, 4, r4, 5, r5 or ? (at random).
    mod an integer. The default is 12.
    assoc an integer. The default is 12.
    row NIL or T. If true then the output is melodize. The default is NIL
    seed NIL or an integer. The default is NIL.

    (expand-chord '(f4 m :add 9 :row t))

    The TONALITY-MAP function is fixed as from version 1.0.15685

    (setf chords '((c4 maj) (f4 m) (f4 m) (g4 maj) (c4 maj)))
    (setf rows (gen-repeat 5 (list '(q c4 cs4 d4 ds4 e4 f4 fs4 g4 gs4 a4 as4 b4))))
    
    (setf tonality1
          (tonality-series chords
           :add '(2)
           :closest '(up)))
    
    (tonality-map tonality1 rows)
    => ((q c4 d4 d4 e4 e4 e4 g4 g4 g4 g4 c5 c5)
        (q f4 g4 g4 gs4 gs4 c5 c5 c5 c5 c5 f5 f5)
        (q f4 g4 g4 gs4 gs4 c5 c5 c5 c5 c5 f5 f5)
        (q g4 a4 a4 b4 b4 b4 d5 d5 d5 d5 g5 g5)
        (q c4 d4 d4 e4 e4 e4 g4 g4 g4 g4 c5 c5))

    Thank you Torsten for finding the :add bug - the integer transposition was wrongly placed.

  3. I really don't have any great ideas about what is causing this.

    1. One guess at the moment is to try to move "/Library/Audio/Plug-Ins/HAL/Digidesign CoreAudio.plugin" somewhere else temporarily and see if that does anything.

    2. I also still think it's worth trying to start the application from a new account that has never been used.  At least make sure that "~/Library/Saved Application State/com.opusmodus.Opusmodus.savedState" doesn't exist (delete it if it does).

    Just to make sure I expect that Opusmodus.app is on the hard disk somewhere, and not on a mounted disk image file :-)

  4. 1. Create few IAC ports in the 'Audio MIDI Setup' app:

     

    audio-midi-setup.png

    2. Go to your virtual instrument, load an instrument and chose the port 1:

    kontakt2.png

     

    3. In Opusmodus composer panel type (midi-destinations) and evaluate the function:

    (midi-destinations)

     

    Note: We use the MIDI-DESTINATION function for reference only.

    The output will look something like that:

    => ((0 . "Bus 1") (1 . "Bus 2") (2 . "Bus 3") (3 . "Bus 4")
        (4 . "Bus 5") (5 . "Bus 6") (6 . "Bus 7") (7 . "Bus 8")
        (8 . "Bus 9") (9 . "Bus 10") (10 . "Bus 11") (11 . "Bus 12")
        (12 . "Bus 13") (13 . "Bus 14") (14 . "Bus 15") (15 . "Bus 16")
        (16 . "Session 1") (17 . "Keyboard") (18 . "MIDI OUT")
        (19 . "UM-ONE") (20 . "Kontakt 5 Virtual Input”))

     

    4. In the DEF-SCORE in the instrument section add the same port you have assigned to the Virtual Instrument.

    Note: Opusmodus port numbers are 0-based.

    (def-score goldberg-var7
               (:key-signature '(g major)
                :time-signature '(6 8)
                :tempo '("al tempo di Giga" e 155)
                :layout (piano-solo-layout 'rh 'lh))
      
      (rh :omn rh
          :port 0
          :channel 1
          :sound 'gm
          :program 0)
      
      (lh :omn lh))

     

    Or, you could use the port name if you prefer:

     (rh :omn rh
          :port "Bus 1"
          :channel 1
          :sound 'gm
          :program 0)
  5. There is no bug in the TONALITY-SERIES function.

    In order to use TONALITY-MAP and TONALITY-SERIES we need to understand how it works.

    TONALITY-MAP works with chords and chord progression.

    (tonality-map tonality rnd-melody-smooth)

    The :add value is an interval number (not a pitch) of the tonality in question. 

    Maybe EXPAND-CHORD function helps to understand the TONALITY-MAP function:

    (expand-chord '(c4 maj :row t))
    => (c4 e4 g4)
    
    (expand-chord '(c4 maj :row t :add (1 3)))
    => (c4 cs4 ds4 e4 g4)
    
    (expand-chord '(f4 maj :row t :add (1 3)))
    => (f4 fs4 gs4 a4 c5)
    

    Adding intervals:

    (setf tonality
    (tonality-series
           simple-cadence
           :root '(c4 f4 f4 g4 c4)
           :closest '(down up)
           :add '(1 6 1 8 6)))

    I suggest to start with chromatic row (input) to understand and see how TONALITY-MAP works.

    Example 1

    (setf chords '((c4 maj) (f4 m) (f4 m) (g4 maj) (c4 maj)))
    (setf rows (gen-repeat 5 (list '(q c4 cs4 d4 ds4 e4 f4 fs4 g4 gs4 a4 as4 b4))))
    
    (setf tonality1
          (tonality-series chords
           :root '(c4 c4 c4 c4 c4)
           :add '(1 6 8 11 6)
           :closest '(up)))
    
    (tonality-map tonality1 rows)
    => ((q c4 cs4 cs4 e4 e4 e4 g4 g4 g4 g4 c5 c5)
        (q c4 cs4 eb4 eb4 eb4 g4 g4 g4 g4 g4 c5 c5)
        (q c4 c4 eb4 eb4 eb4 g4 g4 g4 g4 g4 c5 c5)
        (q c4 c4 e4 e4 e4 e4 g4 g4 g4 g4 c5 c5)
        (q c4 c4 e4 e4 e4 fs4 fs4 g4 g4 g4 c5 c5))
    

    Example 2:

    (setf tonality2
          (tonality-series chords
           :root '(c4 f4 f4 g4 c4)
           :add '(1 6 8 11 6)
           :closest '(up)))
    
    (tonality-map tonality2 rows)
    => ((q c4 cs4 cs4 e4 e4 e4 g4 g4 g4 g4 c5 c5)
        (q f4 fs4 gs4 gs4 gs4 c5 c5 c5 c5 c5 f5 f5)
        (q f4 f4 gs4 gs4 gs4 c5 c5 c5 c5 c5 f5 f5)
        (q g4 g4 b4 b4 b4 b4 d5 d5 d5 d5 g5 g5)
        (q c4 c4 e4 e4 e4 fs4 fs4 g4 g4 g4 c5 c5))
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy