Jump to content

Stephane Boussuge

Moderators
  • Posts

    1,058
  • Joined

  • Last visited

Reputation Activity

  1. Like
    Stephane Boussuge got a reaction from JulioHerrlein in Session 23 - 14.11.20   
    Yes, it is because the randomness in tonality-map process call randomly the parameter up or down in the :closest option.
     
    You can fix this by setting up or down explicitly:
     
    (setf path (tonality-series modes :map '(octave) :root roots :closest '(up))) S.
  2. Thanks
    Stephane Boussuge got a reaction from NagyMusic in Session 23 - 14.11.20   
    Yes, it is because the randomness in tonality-map process call randomly the parameter up or down in the :closest option.
     
    You can fix this by setting up or down explicitly:
     
    (setf path (tonality-series modes :map '(octave) :root roots :closest '(up))) S.
  3. Like
    Stephane Boussuge reacted to Nikos in IRCAM Solo Instruments 2   
    I own IRCAM Solo Instruments Vol.1 and 2.  The classical articulations do not sound very convincing, but it is a good library for educational purposes in my opinion. I have created a s custom soundset with corresponding files for IRCAM string quintet. It is not perfect but may you will find it useful. Please keep it is for the first IRCAM version.
     
     
    Nikos
    IRCAM-String-Quintet-Files.zip
  4. Like
    Stephane Boussuge reacted to edesert in Interested in continuing Zoom into OM on own expenses?   
    Hi Ole - my name is Peter Measroch from Electric Desert Music,  Edesert is my forum name, and I would be very happy to continue on this basis.  Hope you are successful in putting the group together.  My email is pmeasroch@mac.com and my phone number here in Montreal is +1 514 898-9972   
     
    I think the 50 euros is a good way to go and I could send via email or PayPal.  Fingers crossed for more sessions with Stéphane!  
     
    best wishes,
     
    Peter
  5. Thanks
    Stephane Boussuge got a reaction from torstenanders in IRCAM Solo Instruments 2   
    I've tried a bit Ircam instruments2 but still feel a lack of dynamics variety...
    S.
  6. Like
    Stephane Boussuge got a reaction from erka in Un jardin à Keranchaudel   
    Here's a minimalist style soundtrack made as one of the tests for my new orchestral template.
     
     

    SB.
  7. Thanks
    Stephane Boussuge got a reaction from torstenanders in IRCAM Solo Instruments 2   
    A possibility is to use plogue Bidule to create a kind of meta-instrument with keyswitch to switch from classical to extended techniques.
     
    I will have a look.
     
    S.
  8. Thanks
    Stephane Boussuge got a reaction from NagyMusic in Session 17 - 26.09.20 Extrapolation for Pierrot Ensemble   
    Hi,
     
    The values for density control has to be between something greater than 0, for example 0.01, and 1.00.
     
    Here's a better code:
    (setf size (car (rnd-number 1 12 32))) (setf psets '(c4 fs4 g4 e4 gs4 f4 a4 cs5 ds5 as4 d5 b4)) ;;; RHYTHM (setf dens-tend (vector-round 0.01 1.00 (pitch-to-integer psets))) (setf dens1 (vector-round 0 100 (gen-tendency size dens-tend))) (setf dens2 (vector-round 0 100 (gen-tendency size dens-tend))) (setf dens3 (vector-round 0 100 (gen-tendency size dens-tend))) (setf dens4 (vector-round 0 100 (gen-tendency size dens-tend))) (setf dens5 (vector-round 0 100 (gen-tendency size dens-tend))) (setf dens6 (vector-round 0 100 (gen-tendency size dens-tend))) SB.
  9. Haha
    Stephane Boussuge got a reaction from NagyMusic in Session 17 - 26.09.20 Extrapolation for Pierrot Ensemble   
    Hi,
     
    here it is:
     
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;; ADD-INTERVAL-IF-LENGTH ;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (in-package :Opusmodus) ;;; USAGE #| (setf seq '((e c4 p stacc d4 stacc e4 stacc f4 stacc q g4 g3) (q c4 mf e c6 b5 a5 g5 f5 d5) (s e4 f4 e4 d4 q g4 b4 d5) (q g5 ff marc g4 marc h c5 ))) ; with default parameters (add-interval-if-length '(1/4 c4 d4 e4 1/8 e4 f4)) (add-interval-if-length seq) ; with specified condition (add-interval-if-length seq :condition '<) (add-interval-if-length seq :condition '=) ; with specifird conditions en length value specification (add-interval-if-length seq :condition '= :length-val '1/4) |# ;;; VERSION REVISEE PAR TORSTEN ;;; ============================================== ;;; UTILITY FUNCTIONS ;;; (defun add-interval-if-length-aux (omn &key (test #'>) (length-val 1/8) (interval-list '(4 3 4 7 4 3 5 4 7 3))) (let ((s-events (single-events omn))) (loop for e in s-events for i in (gen-trim (length s-events) interval-list) when (funcall test (omn-encode (first e)) length-val) append (omn-replace :pitch (chord-interval-add (list i) (list (second e))) e) else append e))) ;(add-interval-if-length-aux '(q c4 d4 e4 f4 e g4 a4) :interval-list '(10 11)) ;;; ============================= ;;; MAIN FUNCTION (defun add-interval-if-length (omn &key (test #'>) (length-val 1/8) (interval-list '(4 3 4 7 4 3 5 4 7 3))) (do-verbose ("add-interval-if-length") (let ((test-fn (case test (> #'>) (< #'<) (= #'=) (otherwise test)))) (if (listp (car omn)) (mapcar #'(lambda (x) (add-interval-if-length-aux x :test test-fn :length-val (omn-encode length-val) :interval-list interval-list)) omn) (add-interval-if-length-aux omn :test test-fn :length-val (omn-encode length-val) :interval-list interval-list))))) ;(add-interval-if-length '((q c4 d4 e4 f4 e g4 a4) (e f4 e4 q d4 c4 a4 g4 f4)) :interval-list '(10 11)) ;(add-interval-if-length '((q c4 d4 e4 f4 e g4 a4) (e f4 e4 q d4 c4 a4 g4 h f4)) :interval-list '(3 4) :test #'>= :length-val 'q)  
  10. Thanks
    Stephane Boussuge got a reaction from NagyMusic in Session 17 - 26.09.20 Extrapolation for Pierrot Ensemble   
    (setf size 8) (setf ph1 (ambitus '(g3 g6) (filter-tie (make-omn :pitch (gen-loop size (interval-ambitus 6 (rnd-sample 12 (make-scale 'd4 12 :alt '(2 1 3))))) :length (gen-loop size (length-legato (rnd-sample 4 '(s -s)))) :velocity (rnd-pick '((pp)(p)(mp)(mf)(f))) )))) ;;; Controled repetitions of ph1 with vector-map (with index numbers) (setf reps1 (vector-map ph1 '(0 0 1 3 3 3 2 3 4 3 2 4 5 6 6 7 7 7))) ;;; Apply variations to this repetitions with unfold: (setf reps1.proc (unfold 'om '((ld23 (4 5 6 12 16))(ld24 (2 8 13 16))(t4 (1 3 5 7))) reps1))  
  11. Like
    Stephane Boussuge 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
    Stephane Boussuge got a reaction from lviklund in Session 23 - 14.11.20   
    Here's the video files from this session.
    The score files are already inside Opusmodus in score examples documentation section in Utility panel.
    This is the scores : Craft for alto and piano. and the score Duet for violin and piano.
     
    All the best to all of the Opusmodus community !
     
    SB.
     
    ZoomIntoOM-Videos141120.zip
  13. Like
    Stephane Boussuge reacted to AM 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
    Stephane Boussuge reacted to DanielJean in Session 23 - 14.11.20   
    Thank you so much Stephane for your tremendous support with these sessions.
  15. Like
    Stephane Boussuge reacted to edesert in Session 23 - 14.11.20   
    Yes - thank you so much for doing these sessions, Stéphane, its always very inspiring and they have done so much to increase my zone of comfort with this software.
     
    Peter
  16. Like
    Stephane Boussuge reacted to Rene in Session 23 - 14.11.20   
    Thank you very much, Stéphane, for your interesting sessions!
  17. Like
    Stephane Boussuge reacted to torstenanders in Deployment, etc.   
    I cannot answer this for Janusz, but I can provide some further reflection on this.
     
    You could investigate how the Emacs-Slime interface talks to the CCL compiler, on which Opusmodus is based, and then use that same protocol for your purposes. Of course, this will always only work if on the machine in question Opusmodus is installed. Also, Opusmodus must be started first (which currently always starts the full IDE as well, AFAIK -- at least it does for me, and I use Opusmodus meanwhile mainly via  the Slime interface). It is likely possible in principle to get around starting the full IDE each time and instead only start CCL with the relevant Opusmodus definitions, but users of your plugins or custom applications will always need to buy Opusmodus themselves, so this is pretty much a niche in a niche market...
     
    Not sure whether there is a market here for Opusmodus Inc. to spend development resources, which would make this more suitable for your purposes. Obviously, this company is not someone like Apple. It cannot afford  throwing out development tools for free, I guess.😅 
     
    Perhaps Opusmodus Inc. could ask for a licence fee from developers who build applications based on Opusmodus definitions. That might open a market that would pay Opusmodus for investing the necessary development resources for something like that. If there are a few developers willing to pay such a fee, this might actually be quite workable for both sides, the developers and Opusmodus Inc. It then might be possible to use Opusmodus definitions in a "normal" Common Lisp application (perhaps even supporting tools like roswell for easy executable creation). 
     
    Just my 2 Euro-cent on this question...
  18. Like
    Stephane Boussuge reacted to opmo in Function: vector-to-pitch   
    (vector-map '(c4 d4 e4 c5 d5) (gen-gaussian-noise 10 :seed 89)) => (d5 d4 c4 e4 d4 e4 c4 d4 e4 d5)  
    🙂
  19. Like
    Stephane Boussuge reacted to Rangarajan in Function: vector-to-pitch   
    Thanks to suggestion by Janusz, I have been able to solve my requirement thus:
    ;; Returns a list of pitches from the given list, satisfying the supplied noise ;; pitch-list => arbitrary list of pitches ;; noise => Any noise (defun noise-to-pitch-map (pitch-list noise)   (mapcar #'(lambda (n)                (nth n pitch-list))           (vector-round 0 (1- (length pitch-list)) noise))) Examples: (noise-to-pitch-map '(c4 d4 e4 f4) (gen-white-noise 10 :seed 89)) => (c4 f4 e4 c4 d4 e4 f4 c4 f4 e4) (noise-to-pitch-map '(c4 d4 e4 c5 d5) (gen-gaussian-noise 10 :seed 89)) => (d5 d4 c4 e4 d4 e4 c4 d4 e4 d5) (noise-to-pitch-map (expand-tonality '(c4 major)) (gen-pink-noise 10 :seed 89)) => (c4 d4 d4 e4 e4 f4 g4 a4 b4 b4)  
    - Rangarajan
  20. Thanks
    Stephane Boussuge got a reaction from NagyMusic in Session 2 - 23.05.20   
    Unfortunately not.
     
    Sorry.
     
    S.
     
     
  21. Like
    Stephane Boussuge got a reaction from JulioHerrlein in Simple part extraction example from piano reduction to string quartet with pitch-demix   
    Hi,
     
    just a small example here about parts extraction with pitch-demix, from piano part to string quartet.
    Not a perfect solution but do the job in many cases and it is always possible to refine a bit the output manually.
     
    S.
     
    (setf base '(#|1|# (z^h. c4e4a4 h.^w fs3 q b4) #|2|# (z^h c4e4a4 h^h. fs3 q c5 b4) #|3|# (z^h. c4e4a4 h.^w fs3 e g4 a4) #|4|# (z^h. c4e4a4 h.^w fs3 q g4) #|5|# (z^h. d4f4 h.^w c3gs3 q e4) #|6|# (z^q f4 q^h. c3gs3 g4 f4 e4) #|7|# (z^h d4e4 h^w c3gs3 tie f4) #|8|# (h. c3gs3d4 q e4) #|9|# (z^h. cs4fs4 h.^w as2fs3 q gs4) #|10|# (z^h. cs4as4 h.^w as2fs3 q c5) #|11|# (z^e a2 e^h. e4d5 he^h.. f3 tie q e5) #|12|# (z^w f3 h c4e4d5 q c5 b4) #|13|# (w f3c4e4a4))) (setf base-merged (dissolve-voices base)) (setf v1 (pitch-demix 1 base-merged)) (setf v2 (pitch-demix 2 base-merged)) (setf v3 (pitch-demix 3 base-merged)) (setf v4 (pitch-demix 4 base-merged)) (ps 'gm :sq (list v1 v2 v3 v4))  
  22. Like
    Stephane Boussuge got a reaction from lviklund in Session 22 - 07.11.20 - Vertical harmonic control - Density - Auto-explode4   
    Hi folks,
     
    here's the material from this session.
     
    Best !
     
    Stéphane
     
     
    auto-explode.lisp auto-split.lisp split-point.lisp Zoom07112020a.opmo ZoomIntoOMVideos071120.zip
  23. Thanks
    Stephane Boussuge got a reaction from opmo in Two variations on Chopin 28-4   
    Fab !!
     
     
  24. Like
  25. Like
    Stephane Boussuge reacted to opmo in Two variations on Chopin 28-4   
    Two variations on Chopin 28-4
     
       
     
       
     
    Janusz
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy