Jump to content
Sign in to follow this  

vector-to-length (with pitch-figurate) - audition tape

Recommended Posts

On July 15, 2018 at 12:08 AM, AM said:

do you have some CODE to share?

Not much, but happy to share.


Somedays, I just set up a live audio host and some interesting instruments and samples, and then 'browse' the Opusmodus documentation. In these sessions, I am combining a playful way to add to my knowledge while generating audio materials via audition and MIDI Export for my library to be used as later combinatory/compound materials. As the title suggests, these are just live experimentations with 'vector-to-length',  along with variations on a theme to the value of 'vector-smooth' (from min to max value over session period).




(setf vector (gen-white-noise 10000))

(setf v2l-1 (vector-to-length '1/128 -3 13 vector))
(setf v2l-s-1 (vector-to-length '1/128 -3 13 (vector-smooth 0.1 vector)))

(setf chromatic-12 '(c2 cs2 d2 ds2 e2 f2 fs2 g2 gs2 a2 as2 b2))
(setf chromatic-16 '(c2 cs2 d2 ds2 e2 f2 fs2 g2 gs2 a2 as2 b2 c3 cs3 d3 ds3))


(setf voice-1 (make-omn
               :length (length-weight v2l-s-1 :weight '(34 1))
               :pitch (span v2l-s-1 chromatic-16)
               :velocity (messiaen-permutation '(ff f mf mp p))))



...and with pitch-figurate and additional permutation:


(setf voice-1 (make-omn
               :length (length-weight v2l-s-1 :weight '(67 1))
               :pitch (span v2l-s-1 (pitch-figurate 6 chromatic-12 :interval (messiaen-permutation '(1 -1 2 -2 3 -3 4 -4 5 -5))))
               :velocity (messiaen-permutation (messiaen-permutation '(ff f mf mp p)))))


 The pitch list is for the sequential triggering 'sample slices' via New Sonic Arts 'Vice',  each slice corresponding to a specific pitch (thus the pitch-figurate serves to add controllable variation of slice triggering). The exercise is focused on rhythm, but in the context of untraditional/non-percussion materials ;-) hth




Share this post

Link to post
Share on other sites
On July 15, 2018 at 2:42 AM, opmo said:

Grand improvisation, cool indeed 😎

Wow, thank you...that means a lot coming from you :)


Even at my extremely novice level with Opusmodus, the possibilities of what I can accomplish towards my own goals (experimental electronics) are seemingly endless :)


The combination of the online documentation and the continuing insights/inspiration derived from this forum and it's generous and talented contributors....is making this first leg of my learning Opusmodus an extremely exciting and rewarding period of education...and as I am able generate and collect these audio materials into a personal library, no doubt Opusmodus will allow me to develop unique approaches to electronic musiking which is my primary driving force ;-)





Share this post

Link to post
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.

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.

Sign in to follow this  

  • Similar Topics

    • By NagyMusic
      I was able to set up Logic or Opusmodus playback via IAC driver by loading a Logic setup file into my workspace (saved in Documents folder). In this way, I can audition short snippets and lines of code, which playback through Logic just fine (OMN Audition + Notation). However, I'm having difficulties with evaluating and auditioning the whole score (Evaluate Score Audition + Notation).
      I'm including a short code example for your reference in case you have any feedback. And here's the listener error code:
      > Error: OMN Parse Error: fail
      > While executing: omn-to-ast, in process Listener-8(63).
      Thank you for your time and help!

      (setf piano-righthand '((e. b4 s a4 e b4 e. d4 s g4 e b4) (e. a4 mordent2 s g4 e a4 q. d5) (e. g5 lmordent1 s fs 5 e g5 e. a4 s e5 e g5) (e. fs5 mordent1 s e5 e fs5 q. d5 tie) (q d5 t e5 leg fs5 leg g5 leg a5 leg e. b5 s g5 e d5) (q e5 t fs5 leg g5 leg a5 leg b5 leg e. c6 s a5 e e5) (e. fs5 s d5 e g5 e. a4 s b4 e c5) ((app. e c5) q._e. b4 s a4 g4 fs4) (q g4 e d5 q. g5 tie+lmordent1) (e g5 s a5 g5 fs5 e5 q. fs5 tie+lmordent2) (e. fs5 s g5 e fs5 e. e5 s cs5 e d5) (e. cs5 mordent1 s d5 e e5 q. a4 tie) (q a4 t b4 leg cs5 leg d5 leg e5 leg e. fs5 s d5 e a4) (q b4 t cs5 leg d5 leg e5 leg fs5 leg e. g5 s e5 e b4) ((app. e b4) e. cs5 s a4 e a5 e. d5 s e5 e cs5) ((app e cs5) q d5 tie h))) (setf piano-lefhand '((q g3 lmordent2 e g2 q. g3 tie+lmordent2) (q. g3 e. fs3 mordent1 s e3 e d3) (q e3 e d4 q cs4 e a3) (q._e. d4 s e4 e c4) (e. b3 s c4 e a3 e. g3 s a3 e b3) (e. c4 s d4 e b3 e. a3 s b3 e c4) (e. d4 s c4 e a3 q c4 e d4) (e. g3 s fs3 e g3 e. d3 s a3 e c4) (e. b3 mordent1 s a3 e b3 e. e3 s b3 e d4) (e. cs4 mordent1 s b3 e a3 e. d4 s cs4 e d4) (e. g3 s b3 e d4 q. g4 tie) (e g4 s a4 g4 fs4 e4 e. fs4 s g4 e a4) (e. d4 s a3 e fs3 e. d3 s e3 e fs3) (e. g3 s a3 e fs3 e. e3 s fs3 e g3) (e. a3 s g3 e fs3 e. b3 s g3 e a3) (e. d3 s fs3 e a3 q. d4))) (def-score goldberg-var7 (:title "Goldberg Variationen" :subtitle "Var 17 (extract)" :composer "J. S. Bach" :key-signature '(g major) :time-signature '(6 8) :tempo '("al tempo di Giga" e 155) :layout (piano-solo-layout 'piano-rh 'piano-lh)) (piano-rh :omn piano-righthand :port "Logic" :channel 1) (piano-lh :omn piano-lefthand) )  
    • By RST
      Greetings all:
      When I invoke this command (Evaluate and Audition and Notation) I get the compilation of the code and the notation but audition playback does not occur.  
      I get the following in the Listener:
      ambitus make-instrument viola ambitus make-instrument violoncello def-score, name: timeline 6 > audition-musicxml-last-score #<process play loop(17) [Reset] #x3020024491ED> 6 > compile-score #<score timeline>  
      However, when I invoke the command to audition the last score (from the menu or the keyboard shortcuts)  it plays.  I should note that I am playing out via MIDI to Logic.
      Am I doing something wrong?
      Many thanks,
    • By torstenanders
      Just an idea for an improvement, no idea how complex this is to fix.
      Snippet output currently works nicely when selecting an expression that returns a supported format (e.g., OMN), like the following.
      (vector-to-pitch '(c4 c5) (gen-white-noise 7))  
      It also works when selecting and then evaluating multiple statements for snippet output, as the following example demonstrates.
      (setf pitches1 (vector-to-pitch '(g3 b4) (gen-white-noise 10))) (setf pitches2 (reverse pitches1))  
      However, other cases result in an error. For example, the following two lines (creating random results, but allowing to fix the seed later in case we like the output) work fine when evaluating and showing their result in the listener.
      (setf seed (random 1000)) (setf pitches1 (vector-to-pitch '(g3 b4) (gen-white-noise 10 :seed seed)))  
      By contrast, when selecting both lines together then snippet output results in an error like.
      ? audition-musicxml-omn-snippet > Error: The value 976 is not of the expected type list. > While executing: parse-chord-form-from-stream, in process Listener-3(11). > Type cmd-. to abort, cmd-\ for a list of available restarts. > Type :? for other options.  
      As the error message suggested, problematic are seemingly variables that do not bind a list. E.g., this example results in the same error as above when selecting both lines together and generating snippet output, while their normal evaluation and snippet output of only the last line just works fine.
      (setf no 10) (setf pitches1 (vector-to-pitch '(g3 b4) (gen-white-noise no))) ? audition-musicxml-omn-snippet > Error: The value 10 is not of the expected type list. > While executing: parse-chord-form-from-stream, in process Listener-3(11). > Type cmd-. to abort, cmd-\ for a list of available restarts. > Type :? for other options.  
      Could that perhaps be fixed? Thanks!
  • Create New...