Jump to content

AM

Members
  • Posts

    792
  • Joined

  • Last visited

Reputation Activity

  1. Like
    AM got a reaction from JulioHerrlein in gen-rotate extension   
    yes, of course - from "BOTs" to a lot of small simple FUNCTIONS... but: not very well/smart coded (🙄) - i'm musician but only an "amateur programmer" with few experience -  and it's really NOT well documentated for other users. and another point, i have no idea how do that professionally with GUTHUB and these installation-things 😕
     
    as ORDINARY text - no problem. perhaps i will share it like that on my website...
     
     
  2. Like
    AM got a reaction from lviklund in Looking for Repeating Function   
    i'm very interested in!! thx to you JULIO!!! 🙂
    strukturnetz is not a piece, it's "a kind of technique" he used 🙂
     
    you could read about it here:
    https://www.amazon.de/Differenzen-Poststrukturalistische-Beispiel-Lachenmann-Ferneyhough/dp/3931264157
     
    listen here...
    the STRUKTURNETZ is also "notated" in the score (on top)
     
  3. Thanks
    AM got a reaction from JulioHerrlein in Custom Seed List   
    like that? should work...
    it "loops" x-times (depends on length of seeds-list) and collect the rhythms...
     
    (setf seeds (vector-round 1 100 (gen-white-noise 8 :seed 13))) (setf rhythm (loop for i in seeds collect (euclidean-rhythm 16 4 16 's :type 2 :seed i)))  
     
    perhaps there is an OPMO-solution, this is LISP
  4. Thanks
    AM got a reaction from JulioHerrlein in Looking for Repeating Function   
    i'm very interested in!! thx to you JULIO!!! 🙂
    strukturnetz is not a piece, it's "a kind of technique" he used 🙂
     
    you could read about it here:
    https://www.amazon.de/Differenzen-Poststrukturalistische-Beispiel-Lachenmann-Ferneyhough/dp/3931264157
     
    listen here...
    the STRUKTURNETZ is also "notated" in the score (on top)
     
  5. Like
    AM reacted to JulioHerrlein in Looking for Repeating Function   
    Thanks, Andre ! I will check the Lachenmann piece, for sure.
     
    I was thinking in a possible algorithm for such function:
     
    1) Take an OMN expression
    2) Calculate the empty spaces (rest space)
    3) Fill the spaces with notes, based on each gap, using a predefined quantization (1/16, 1/8, random, etc) and a filling density level (0-100 %,  of the space)
    4) Fill the spaces with predefined pitch lists, motifs, rhythmmic sets, etc,  that can be trimmed, rotated and start on any note
    5) Fill the spaces like mentioned before with some pitch quality control (tonality-map) and pitch melodic direction control (up, down, repeat, vector).
    6) Fill the spaces like before with any predefined method
     
    populate-spaces
    populate-gap
    fill-spaces
    fill-gap
     
    This would be really useful, IMHO.
     
    All the best !
    Julio
  6. Thanks
    AM got a reaction from JulioHerrlein in Looking for Repeating Function   
    would be interesting. it has quite some (distant?) aspects of LACHENMANN's "strukturnetz", and could be nice to work in such an direction...
  7. Like
    AM reacted to opmo in Looking for Repeating Function   
    I will have a think.
  8. Thanks
    AM got a reaction from NagyMusic in Regression- Stasis-Progression   
    or...
     
    (loop for x from 7 downto 1 for y from 1 to 7 collect (list x 3 y))  
  9. Like
    AM got a reaction from opmo in Regression- Stasis-Progression   
    or...
     
    (loop for x from 7 downto 1 for y from 1 to 7 collect (list x 3 y))  
  10. Thanks
    AM got a reaction from torstenanders in IRCAM Solo Instruments 2   
    i have been working with conTimbre for a long time and it is exactly what i was looking for. playing techniques can easily be done by OPMO or SIBELIUS (vst3) via program changes. it has a great many different playing techniques. I always found IRCAM_LIB to be very inadequate, as there were not enough playing techniques etc. / you can also control CT via OSC (and as standalone or via MAXMSP). when I wrote for ensemble with additional e-player, CT-live always worked very well.
     
    (The only negative point I could say is that there are a few SAMPLES that weren't played / recorded very well. But with the size of the library, that's okay with me)
  11. Thanks
    AM reacted to Rangarajan in Created in Opusmodus   
    I am implementing a library of algorithms for music generation using Opusmodus. Here are 3 snippets generated using this library. The midi outputs are sent to Reaper DAW, which in turn uses instruments available in Propellerhead Reason 11 (through VST3i Reason Rack Plugin).
     
    - Rangarajan
    rnd-nil3-4_4.mp3
    rnd-nil2-4_4.mp3
    rnd5654328-4_4.mp3
  12. Like
    AM got a reaction from opmo in Opusmodus to Processing (by Midi)   
    Dear all
     
    Today I dealt briefly how to control PROCESSING (software and programming language) by Midi. There is a great interface for this: "rwmidi" by Giuseppe Torre. You can download and install it, it works fine!  
     
    A short Video (no Sound) with a very simple Processing Example
     

    movie.mov  
    I think this is a good combination if you want to visualize your midi output (or just use de midi-data in realtime)  or if you want to program a separate VISUAL track in OPMO. Here is a small example (I can't program usable in PROCESSING yet, sorry :-)) Downloads etc. are here ...
     
    https://processing.org
    https://gitlab.com/giuseppetorre/rwmidi-revival-master
     
    here's a video, how to install etc...
    https://www.youtube.com/watch?v=7iFUenT5B68&feature=youtu.be
     
    and as an attachm. my "sketch" in processing
    sketch_Processing_from_Midi.pde
     
    Greetings André
     
    P.S. I think there ist also a way to send data by OSC
     
  13. Like
    AM got a reaction from Stephane Boussuge in Opusmodus to Processing (by Midi)   
    Dear all
     
    Today I dealt briefly how to control PROCESSING (software and programming language) by Midi. There is a great interface for this: "rwmidi" by Giuseppe Torre. You can download and install it, it works fine!  
     
    A short Video (no Sound) with a very simple Processing Example
     

    movie.mov  
    I think this is a good combination if you want to visualize your midi output (or just use de midi-data in realtime)  or if you want to program a separate VISUAL track in OPMO. Here is a small example (I can't program usable in PROCESSING yet, sorry :-)) Downloads etc. are here ...
     
    https://processing.org
    https://gitlab.com/giuseppetorre/rwmidi-revival-master
     
    here's a video, how to install etc...
    https://www.youtube.com/watch?v=7iFUenT5B68&feature=youtu.be
     
    and as an attachm. my "sketch" in processing
    sketch_Processing_from_Midi.pde
     
    Greetings André
     
    P.S. I think there ist also a way to send data by OSC
     
  14. Like
    AM got a reaction from JulioHerrlein in Opusmodus to Processing (by Midi)   
    Dear all
     
    Today I dealt briefly how to control PROCESSING (software and programming language) by Midi. There is a great interface for this: "rwmidi" by Giuseppe Torre. You can download and install it, it works fine!  
     
    A short Video (no Sound) with a very simple Processing Example
     

    movie.mov  
    I think this is a good combination if you want to visualize your midi output (or just use de midi-data in realtime)  or if you want to program a separate VISUAL track in OPMO. Here is a small example (I can't program usable in PROCESSING yet, sorry :-)) Downloads etc. are here ...
     
    https://processing.org
    https://gitlab.com/giuseppetorre/rwmidi-revival-master
     
    here's a video, how to install etc...
    https://www.youtube.com/watch?v=7iFUenT5B68&feature=youtu.be
     
    and as an attachm. my "sketch" in processing
    sketch_Processing_from_Midi.pde
     
    Greetings André
     
    P.S. I think there ist also a way to send data by OSC
     
  15. Like
    AM reacted to opmo in Function MORPH   
    MORPH function will be part of the next release.
     
    (progn (setf chopin-28-4 (pitch-transpose 12 '(h gb2e3 g2b2e3 fs2a2e3 fs2a2eb3 f2a2eb3 q f2a2d3 f2gs2d3 h e2gs2d3 q e2g2d3 e2g2cs3 h e2g2c3 e2fs2c3 e2fs2c3 eb2fs2c3 d2fs2c3 d2fs2c3 d2f2c3 d2f2b2 q c2e2b2 c2e2a2 h c2e2a2 q b1e2a2 b1eb2a2 h c2e2a2 b1eb2a2 b1eb2a2 h b1eb2a2 -h g2b2e3 g2b2e3 fs2a2e3 f2a2eb3 f2gs2eb3 e2gs2d3 q e2g2d3 e2g2cs3 cs2e2bb2 c2e2a2 h a2c3fs3a3 q g2c3fs3 g2b2e3 a2c3e3 e2fs2c3 b1e2b2 c2e2a2 h b1e2b2 q eb2b2 b1eb2a2 h. c2g2bb2 q c2e2a2 b1e2a2 e2gs2 h b1e2g2 bb1c2g2 e2fs2b2e3 b1eb2fs2b2 e2g2b2))) (setf chopin-28-4-pitch (omn :pitch chopin-28-4)) (setf inv-num (gen-trim (length chopin-28-4-pitch) '(1))) (setf chopin-28-4i (chord-inversion inv-num chopin-28-4-pitch :variant '?)) (setf rh (pitch-transpose 12 (make-omn :length '(s) :pitch (melodize chopin-28-4i) :span :pitch))) (setf lh-length (mclist (get-span rh))) (setf lh (dechord (make-omn :length lh-length :pitch chopin-28-4i :velocity '(mp)) )) (setf rh-len (length rh)) (setf rh-morph (morph (rnd-number rh-len 0.2 0.5) rh)) (ps 'gm :p (list rh-morph lh) :tempo '((102 52) (:rit 102 34 1/64 4))) )  
       
     
    Best wishes,
    Janusz
  16. Thanks
    AM got a reaction from JulioHerrlein in generating realtime score / sending data from OPMO to POLYTEMPO NETWORK by OSC   
    dear all
     
    here's an example (from my current work)...
     
    this little video shows how i generate/display SCORE (instrumental parts) on a screen + virtual conductor (piano part). the example is "nonsense", but shows how it looks/works... you see the bars (generating), the cue, beat... and the arrow (that shows you where to read/play) ...also you hear some bad (sry) sound-simulation of the setup.
     
    in this way i can generate a whole piece in realtime on STAGE (all musicians will read their part from their own screen). this one will be for 5 instruments, ePlayer and modular synthesizer. during the performance an algorithm (or some data-streams) will generate the piece in OPMO. with OSC i can send all datas (score, beat, tempo..)  from OPMO to POLYTEMPO-NETWORK  (https://polytempo.zhdk.ch) and work and coordinate different independent tempo layers, conducting etc...
     
    for more POLYTEMPO informations... have a look here: https://polytempo.zhdk.ch
     
    greetings
    andré
     
    IMG_0083.MOV
     
  17. Thanks
    AM got a reaction from opmo in generating realtime score / sending data from OPMO to POLYTEMPO NETWORK by OSC   
    thanks... i will post the CODE and some videos etc. when i have finished the work - premiere will be in november...
     
    greetings
    andré
  18. Like
    AM got a reaction from opmo in generating realtime score / sending data from OPMO to POLYTEMPO NETWORK by OSC   
    dear all
     
    here's an example (from my current work)...
     
    this little video shows how i generate/display SCORE (instrumental parts) on a screen + virtual conductor (piano part). the example is "nonsense", but shows how it looks/works... you see the bars (generating), the cue, beat... and the arrow (that shows you where to read/play) ...also you hear some bad (sry) sound-simulation of the setup.
     
    in this way i can generate a whole piece in realtime on STAGE (all musicians will read their part from their own screen). this one will be for 5 instruments, ePlayer and modular synthesizer. during the performance an algorithm (or some data-streams) will generate the piece in OPMO. with OSC i can send all datas (score, beat, tempo..)  from OPMO to POLYTEMPO-NETWORK  (https://polytempo.zhdk.ch) and work and coordinate different independent tempo layers, conducting etc...
     
    for more POLYTEMPO informations... have a look here: https://polytempo.zhdk.ch
     
    greetings
    andré
     
    IMG_0083.MOV
     
  19. Like
    AM reacted to opmo in Opusmodus version 2.1, end of June!   
    MIDI ENTRY
     
    To start the MIDI input into your score file, select the command MIDI Entry from the Tools menu. When MIDI Entry is ON, the Listener echo bar will change to orange:
     

     
    Now you know the MIDI Entry is ON. Depending on the position of the pitch-bend wheel and the modulation wheel as well as the position of the sustain pedal the colour of the Listener echo bar will change.
     
    To make the MIDI Entry as functional as possible there are a number of commands that will increase the speed of your work without the need to move away form your MIDI keyboard.
     
    Every entry is octave independent, except the pitch entry.
     

     
     Pitch                                  
    Enter pitch symbols and chords into your score.
     
     Length and Tuplet                      
    Pitch-Bend: Up-Full
    C 1 D 1/2 E 1/4 F 1/8 G 1/16 A 1/32 B 1/64 Cs 3 Ds 5 Fs 6 Gs 7 Bb 9  
     Length-rest and Tuplet                 
    Pitch-Bend: Down-Full
    C -1 D -1/2 E -1/4 F -1/8 G -1/16 A -1/32 B -1/64 Cs -3 Ds -5 Fs -6 Gs -7 Bb -9  
     Velocity                               
    Pitch-Bend: UP-Half
    C   pppp Cs  ppp D   pp Eb  p E   mp F   mf Fs  f G   ff Gs fff A   ffff Bb < B   >  
     Attribute                              
    Pitch-Bend: Down-Half
    C stacc Cs ord D marc Eb fermata E mart F ten Fs pizz G leg Gs trem A tie Bb ped1 B ped  
     Microtonality and Commands             
    Modulation Wheel: Up
    Add a microtonal symbol next to the pitch symbol.
     
    F   + G   - A   . B   .. C   parenthesis pair D   open parenthesis E   close parenthesis Cs move forward char Eb move backward char Fs delete backward char Gs undo Bb new line and indent Note: If you enable MIDI input with the modulation wheel up, you need to move it down and up again in order for it to be considered up.
     
    Entries with Sustain Pedal Down
     
     Pitch                                  
    Add a pitch symbol next to the previous pitch (chord).
     
     Length and Tuplet                      
    Pitch-Bend: Up-Full
    Add a length entry to the previous length value (combine length).
     
     Length-rest and Tuplet                 
    Pitch-Bend: Down-Full
    Add a length-rest entry to the previous rest value (combine length).
     
     Velocity                               
    Pitch-Bend: Up-Half
    Add < or > dynamic symbol to the previous velocity value.
     
     Attribute                              
    Pitch-Bend: Down-Half
    Add (+) attribute to the previous attribute value (combine attributes).
     
    Examples:
    c4e4g4 Enter a chord c4e4g4 on your MIDI keyboard or pitch by pitch: c4 e4 g4 with sustain pedal down. (q c4 mp e4 g4) 1. Modulation wheel up then C => () 2. PB-UpF then E => (q) 3. Enter c4 => (q c4) 4. PB-UpH then E => (q c4 mp) 5. Enter e4 then g4 => (q c4 mp e4 g4) (q c4 mp e4 stacc g4 p fermata+trem) 1. Modulation wheel up then C => () 2. PB-UpF then E => (q) 3. Enter c4 => (q c4) 4. PB-UpH then E => (q c4 mp) 5. Enter e4 => (q c4 mp e4) 6. PB-DnH then C => (q c4 mp e4 stacc) 7. Enter g4 => (q c4 mp e4 stacc g4) 8. PB-UpH then Eb => (q c4 mp e4 stacc g4 p) 9. PB-DnH then Eb => (q c4 mp e4 stacc g4 p fermata) 10. PB-DnH then Gs + sustain => (q c4 mp e4 stacc g4 p fermata+trem) (q c4 mp e4 stacc g4 p fermata+trem 3q c4 eb4 fs4) 1. Modulation wheel up then C => () 2. PB-UpF then E => (q) 3. Enter c4 => (q c4) 4. PB-UpH then E => (q c4 mp) 5. Enter e4 => (q c4 mp e4) 6. PB-DnH then C => (q c4 mp e4 stacc) 7. Enter g4 => (q c4 mp e4 stacc g4) 8. PB-UpH then Eb => (q c4 mp e4 stacc g4 p) 9. PB-DnH then Eb => (q c4 mp e4 stacc g4 p fermata) 10. PB-DnH then Gs + sustain => (q c4 mp e4 stacc g4 p fermata+trem) 11. PB-UpF Cs/E (chord) => (q c4 mp e4 stacc g4 p fermata+trem 3q) 12. Enter c4 then eb4 then fs4 => (q c4 mp e4 stacc g4 p fermata+trem 3q c4 eb4 fs4) Best wishes,
    Janusz
  20. Like
    AM got a reaction from opmo in alternative binary-layer function   
    here is a sketch for an alternative "binary-(or element-)layer-FUNCTION
     
    (defun element-layer (lists &key (rnd nil)) (let ((lists (if (null rnd) lists (rnd-order lists :list t)))) (car (last (loop for x in (rest lists) with list = (car lists) collect (setf list (loop for i in list with cnt = 0 when (equal i 0) collect (nth cnt x) and do (incf cnt) else collect i))))))) (element-layer (list '(1 0 0 1 1 0 0 1 0 0 0 0) '(0 2 3 0 4 5 0 6 0 7 8 0) '(11 12 13 14 15 16 17)) :rnd nil) => (1 11 2 1 1 3 12 1 4 5 13 6) ;;; hierarchic: every 0's will be replaced by the values from the next/sub-list...  
  21. Like
    AM got a reaction from Stephane Boussuge in [SOLVED] Midi In Collect (now Opusmodus have MIDI input)   
    to wishlist: xml-import
  22. Like
    AM got a reaction from Stephane Boussuge in testing in opusmodus: videoplayer   
    testing videoplayer in OPMO.mov
    whitenoise.mov
  23. Like
    AM got a reaction from opmo in testing in opusmodus: videoplayer   
    testing videoplayer in OPMO.mov
    whitenoise.mov
  24. Like
    AM reacted to opmo in Micropolyphony (coming soon)   
    MICROPOLYPHONY is a polyphonic musical texture developed by György Ligeti which consists of many lines of dense canons moving at different tempos or rhythms, thus resulting in tone clusters vertically. According to David Cope, "micropolyphony resembles cluster chords, but differs in its use of moving rather than static lines"; it is "a simultaneity of different lines, rhythms, and timbres".
     
    Example with two choirs:
     

       
  25. Like
    AM reacted to Stephane Boussuge in split-point   
    Hi,
     
    here's a function i've made for my own usage and i think could be useful for others.
    It is a split point function which divide an OMN flux according to a list of split points.
     
    Attached, you will find the French doc of the function 😉
    ;;; SPLIT-POINT ;;; SB. 2020 ;;; Fonction utile pour séparer les 2 mains pour une partie de piano ;;; renvoie une liste de listes (defun split-point (split-points omn-seq) (do-verbose ("split-point") (let* ( (spltconvert (if (numberp (car split-points)) split-points (pitch-to-integer split-points))) (spltp (gen-trim (length omn-seq) spltconvert)) (p1 (loop for sp in spltp for l in omn-seq collect (ambitus-filter `(,sp 128) l) )) (p2 (loop for sp in spltp for l in omn-seq collect (ambitus-filter `(-128 ,(- sp 1)) l) )) ) (list p1 p2)))) #| (split-point '(c4 d4) '((e a3d4 c4e4 f4c5 q g3d4 e4)(e a3d4 c4e4 f4c5 q g3d4 e4))) => (((e d4 c4e4 f4c5 q d4 e4)(q d4 e4 f4c5 d4 e4)) ((e a3 - - q g3 -)(e a3 c4 - q g3 -))) ;;; Example (setf pmat (make-scale 'c2 32 :alt '(2 1 2 3))) (setf pch (rnd-sample 128 pmat)) (setf chrd (chordize-list (gen-divide (rnd-number 8 1 4) pch))) (setf mat (length-legato (gen-filter-euclidean 8 16 4 16 chrd 's '(mf)))) (setf split (split-point '(c4) mat)) (setf piano-rh (ambitus-chord 12 (first split))) (setf piano-lh (ambitus-chord 12 (second split))) (ps 'gm :p (list piano-rh piano-lh) ) |#  
    SB.
    split-point.rtfd.zip
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy