Jump to content

opmo

Administrators
  • Posts

    2,894
  • Joined

  • Last visited

Reputation Activity

  1. Like
    opmo got a reaction from etu 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
  2. Like
    opmo got a reaction from AM 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
  3. Like
    opmo got a reaction from torstenanders in Opusmodus and Emacs-Slime Setup   
    Build-in Slime in Opusmodus coming soon.
    Here is the 'Emacs-Slime Setup.lisp' extension file:
    ;;;--------------------------------------------------------- ;;; SLIME in Opusmodus ;;;--------------------------------------------------------- #! ;;; HOWTO If you're accustomed to Emacs and Common Lisp, you may prefer SLIME, the Superior Lisp Interaction Mode for Emacs, to editing lisp in regular Opusmodus windows and its listener. There are a number of places to get Emacs for MacOS. One that works well is:   https://emacsforosx.com SLIME ships with Opusmodus, in the "/Applications/Opusmodus.app/Contents/Resources/third-party/slime" directory. There are two parts to Slime:   1. Swank, the server, a Common Lisp system, which runs inside      of the Opusmodus App.   2. Slime, the client, which is an Emacs lisp package. To start the Swank server when Opusmodus starts, comment out the (start-swank) form at the end of this file, and restart Opusmodus (or execute (start-swank) in the Listener to do it now, but not next time Opusmodus starts). To load Slime into your Emacs, define the following in your ~/.emacs startup file:   (load "/Applications/Opusmodus.app/Contents/Resources/third-party/slime/emacs-opusmodus.el")   (load-opusmodus-slime) If you want to use the Mac Command key for Emacs meta, instead of the default of the Mac Option key, and make C-o in dired open the file at point, in the Mac application that is assigned for editing that type of file, also add, after that:   (opusmodus-options) Then, restart Emacs, and do 'm-x slime-connect'. For Host, use the default of localhost. For Port, use 4005, or the port you specified in the (start-swank) call. 4005 will likely be the default. With (ignore-errors (slime-connect "localhost" 4005)) in your ~/.emacs startup file, the slime will start automatically at Emacs start. A "*slime-repl ccl*" buffer should appear. You can get to that buffer at any time with 'c-c s r' in Emacs. It is a read-eval-print loop, executing inside the Opusmodus App. Use it just as you do the Opusmodus Listener. There are some Opusmodus commands that may be executed from Emacs. They are all on the "om-selector", accessible via "C-c o". That will bring up a query for a single character ("Select [?alqsv]"). You may type one of: ?:    Show this help buffer. a:    Audition and Notation (snippet). l:    Audition and Notation last score. q:    Quit selector. s:    Stop audition. v:    Voices Audition and Notation (snippet). The "snippet" is the lisp form before the insertion point, as in Opusmodus. The commands (other than ? and q) behave as the like-named commands in the Opusmodus Tools/Snippet menu, except they open a new (reusable) notation window, instead of a new notation panel. When connected to Slime, errors in the Opusmodus Listener will bring up a backtrace dialog in the connected Emacs, NOT the CCL debugger in the Listener. Be careful to use the "Return to toplevel" restart from there, not one of the ones that kills the thread, or you'll break your Opusmodus, and will have to restart it. !# ;;; End of HOWTO ;; To start the Swank server when Opusmodus starts, you need to ;; uncomment the (start-swank) expression below: It can take a first ;; arg to change the port from the default of 4005, and a second arg ;; to change the directory from which to load Swank from the default ;; of inside the application bundle (you should only do this if you ;; need to run a different version of Swank, to be compatible with a ;; different version of Slime in your Emacs). (in-package :om) ; (start-swank) Janusz
  4. Thanks
    opmo reacted to JulioHerrlein in Why I Use Opusmodus   
    Dear Janusz and Stephane,
    I'm very happy you like it !
    Opusmodus is a game changer. I love it !
    Thank you, guys ! You are doing something amazing !!
     
    All the best !
    Julio
  5. Like
    opmo reacted to lviklund in Why I Use Opusmodus   
    Thank you, Julio.
     
    That was fun and entertaining!
    I completely agree with that.
     
    Stay safe
    Lasse
  6. Thanks
    opmo got a reaction from JulioHerrlein in Why I Use Opusmodus   
    I love the humor and your love of music in this video statement, poem, manifest and a journey.
    Best wishes,
    Janusz
  7. Like
    opmo reacted to Avner Dorman in Negative Harmony Function   
    Hi Julio,
     
    The so called "negative harmony" is the same as "inversion and symmetrical axes" in set theory (which is the same as saying Neo-Riemannian theory - all transformations are In operations).
     
    An inversion of a pitch class is given by subtracting the pc from index of the inversion operation, n.
     
    In(pc1, pc2,pc3) = (n-pc1, n-pc2, n-pc3)
     
    If you want to think of it as an inversion around an axis, the axis would be n/2 (or 12-n/2 on the other side of the clock-face). 
     
    So the function could be written like this: 
     
    (defun axis-inversion (axis pitches) (integer-to-pitch (loop for i in pitches collect (- (* 2 axis) (pitch-to-integer i))))) And if you want to use Eb-E as the axis it would be 3.5 (e is pc3 and eb is pc4)
     
    (axis-inversion 3.5 '(c4 e4 g4)) ;;; results in (g4 eb4 c4)  
    This doesn't account for octaves etc. - for that you'll need to use midi. Now the axis is given in midi number - so 63.5 would be Eb4:
     
    (defun midi-inversion (axis pitches) (midi-to-pitch (loop for i in pitches collect (- (* 2 axis) (pitch-to-midi i))))) (midi-inversion 63.5 '(c4 e4 g4)) ;;; you get (g4 eb4 c4) (midi-inversion 60 '(c4 e4 g4)) ;;; you get (g4 eb4 c4) (midi-inversion 53.5 '(c4 e4 g4)) ;;; you get (b2 g2 e2)  
    If I missed any cases I am happy to check them out 🙂 
     
    All the best,
    Avner 
     
     
    p.s. - 
     
    (midi-inversion 63.5 '(a4 g4 fs4 a4 d5 a4 fs5 d5 a5 fs5 e5 d5)) ;;; results in (bb3 c4 cs4 bb3 f3 bb3 cs3 f3 bb2 cs3 eb3 f3) ;;; as you expected (I think? I only checked the first few notes :-)  
  8. Like
    opmo reacted to JulioHerrlein in Why I Use Opusmodus   
    WHY I USE OPUSMODUS SOFTWARE IN MY MUSICAL COMPOSITION PROCESS
     
    In this video I will describe some of the techniques I used in my compositional process and why I decided to use OPUSMODUS Software for compose music ! Also my experience with Pure Data and Nodal Software before moving to Opusmodus.
     
     
     
     
  9. Like
    opmo reacted to Stephane Boussuge in Session 6 - 20.06.20 - From Nothing (Part 2)   
    Hi folks,
    here's the file from the last session.
     
    Happy study !
    Stéphane
     
    FromNothingSuite-20-06-2020.opmo
  10. Like
    opmo got a reaction from hujairi 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:
     

       
  11. Thanks
    opmo got a reaction from Stoney in Error using ps to play chord sequence   
    list is missing:
    (ps 'gm :treble (list chords-1) :time-signature '(4 4) :tempo 120)
  12. Like
    opmo reacted to o_e in Session 3 - 30.05.20 - Sound-sets   
    Thanks again for your patience and help! I made a small piece, which is the result from the zoom session 3:
     
       
     
    best& stay healthy
    ole
     
  13. Like
    opmo reacted to Stephane Boussuge in Session 4 - 06.06.20 - Bassclarinet   
    Hi,
     
    here's the files from the last session.
     
    Cheers
     
    Stéphane
     
    BclElectrot.opmo Zoom-0606-Midi-to-logic.opmo
  14. Like
    opmo reacted to Stephane Boussuge in Session 3 - 30.05.20 - Sound-sets   
    Here's the file from today.
     
    Happy Opusmodusing !!
     
    Stéphane
     
    Zoom300520-Soundsets1.opmo
  15. Like
    opmo reacted to Nikos in Session 3 - 30.05.20 - Sound-sets   
    Thanks Stéphane for the livestream, great teaching as usual!
  16. Like
    opmo reacted to AM 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...  
  17. Like
    opmo got a reaction from EAIP in UNFOLD strategie example   
    This short example demonstrates how powerful and flexible the UNFOLD function is, especially when working with short patterns.
    The entire process is very compact and requires only a few lines of code.
     
    Source:
    (progn   (setf    mat1 '((h. eb4 pp q g3 -e q gs4 mf -s a5 p tie)           (e. a5 -e q bb4 mf -s q cs5 p -s q. e5 mf -e.)           (q cs5 p h. d5 mf -q c5 pp tie)           (h c5 pp h. gs3 -e a4 p<)           (h. fs5 mp q bb3 c5 p e4 mf tie)           (h e4 -e q cs4 mp h d5 p e f4))        mat2 '((q d4 pp s eb4 < leg g4 < leg bb4 < leg a4 q. cs5 mf -e                3q gs5 > leg fs5 > leg c5 > b4 > leg f4 leg e4)           (t d4 < leg eb4 < leg g4 < leg bb4 q. a4 marc              t fs4 mf leg gs4 leg e. c5 e b4 t f5 leg e5 leg d5 leg eb5              3q bb5 > a4 > bb5 > e a4 pp stacc -e))        p01 (unfold 'eg '(t7 dyn) mat1)    p02 (unfold 'eg '(t7 v? dyn ob) mat1)    p03 (unfold 'eg '(v? ra dyn) mat1)    p04 (unfold 'eg '(t-12 t-5 dyn v? raf hn) p03)    p05 (unfold 'eg '(t-12 t-5 ld ra dyn bn) p02)        p11 (assemble-seq (unfold 'eg '(t7 dyn) mat1) (unfold 'eg '(t7 dyn) mat2))    p12 (assemble-seq (unfold 'eg '(t-12 v? dyn ob) mat1)                      (unfold 'eg '(t-12 v? dyn ob) mat2))    p13 (assemble-seq (unfold 'eg '(v? raf dyn) mat1) (unfold 'eg '(v? dyn)  mat2))    p14 (unfold 'eg '(t-12 t-5 dyn v? raf dyn hn) p13)    p15 (unfold 'eg '(t-12 t-5 ld ra dyn bn) p12))      (ps 'gm :w5 (list                (assemble-seq p01 p11)                (assemble-seq p02 p12)                (assemble-seq p03 p13)                (assemble-seq p04 p14)                (assemble-seq p05 p15))))  
    Output:

     
    Best, JP
  18. Like
    opmo got a reaction from EAIP in Staccato playback   
    This was the original values but it was changed after some comments/discussion on our Forum.
    I agree, I will set the stacc back to 50% of the original value.
    With marc I will see what I can do.
  19. Like
    opmo got a reaction from EAIP in Simple question concerning gm-sounds   
    Of course you could use a list of program changes:
    :program '(1 2 3 4 5 6 7 8 9 10 11)  
    Here each pitch will be played by a different program.
  20. Like
    opmo got a reaction from loopyc 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:
     

       
  21. Like
    opmo got a reaction from EAIP 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:
     

       
  22. Like
    opmo got a reaction from Stoney in What determines the pitch used for auditioning pitchless snippets?   
    The natural sign is a bug, which I just fixed - condition was missing if length alone.
  23. Like
    opmo reacted to DanielJean in V2 on High Sierra (OSX 10.13)   
    Success ! No error message any more , could install Quick Start Workspace, Looks like deleting the trash helped. Thanks a lot !
  24. Like
    opmo got a reaction from Stephane Boussuge in [SOLVED] Midi In Collect (now Opusmodus have MIDI input)   
    Ver 2. will be able to import musicXML files and convert to omn.
  25. Thanks
    opmo got a reaction from etu in Opusmodus 2.0.25787   
    2.0.25787
     
    – New functions:
     MICROPOLYPHONY  MICRO-QUANTIZE  MAKE-BINARY  COLLATZ-SEQUENCE  ULAM-SPIRAL-ARRAY  ZIGZAG-ARRAY  
    – Key shortcut changes:
    Utilities Search: control-option-F
    Navigator Search: control-shift-F
     
    At the moment we have two versions of Opusmodus, one for macOS 10.15 (Catalina) and one for macOS 10.9 - 10.14 due to Apple Xcode bug.
    Therefore use the Forums Download link, which you find in the Forums menu.
     
    In the HowTo Score section you will find a few new examples to play with:
    HowTo Score/Polyphony/Micropolyphony 1.opmo
    HowTo Score/Polyphony/Micropolyphony 2.opmo
    HowTo Score/Rhythm/Rhythm.opmo
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy