Jump to content

Stephane Boussuge

Moderators
  • Posts

    1,066
  • Joined

  • Last visited

Reputation Activity

  1. Thanks
    Stephane Boussuge got a reaction from opmo in Counterpoint Question - use of variable for harmony keyword   
    Try this :
     
    (progn ;; Global SEED (init-seed 15342) ;; Patterns (setf ;p1 '((-s c1 p g2 cs3) (3q fs3 - bb3) (-3q eb4 mf a4) (-s b4 d5 f5) ; (-5q gs5 e6 c1 mp g2) (-3q cs3 fs3 mf) (s bb3 - eb4 p a4) (s b4 mp d5 f5 -)) ;p2 '((5q bb2 mf g3 c4 e3 a3) (5q d4 mp fs4 gs4 b4 p cs5) (s f5 eb6 bb3 g3)) ;p3 '((5q fs4 p - bb3 f3 e4) (-3q g4 c5) (s eb5 a5 mf cs6 gs6) ; (5q gs6 pp cs6 mf a5 eb5 -) (-s c5 g4 e4)) ;p4 '((5q bb3 p a4 c6 cs6 cs6) (s g7 mp a6 c6 e5 - d4 cs4 g3 3h fs3 eb3 -) ; (-3q b6 pp a6 5q c6 - d5 bb4 b3 -s gs3 f1 eb3)) p5 '((5q c2 mf g2 e2 a2 b2) (5q fs5 p gs5 bb5 b5 cs5 mp) (s f5 eb6 c6 p g6)) p6 '(s a4 p e b5 s gs3 3h f3 3q e2 5h eb4 5q g5 fs2 f4) p7 '(5q cs5 mf d5 5h eb5 5q f5 fs5 gs5 5h a5 f 5q bb5 5h b5 5q cs6 5h) p8 '(t bb4 mp cs6 c5 b5 bb4 cs6 a3 gs2 3q a2 gs5 fs4) ) (setf p1 '(e d7 d7 d7 d7 d7 d7 d7 d7 s d6 d6 d6 d6 d6 d6 d6 d6 h)) (setf p2 '(e d5 d5 d5 d5 d5 d5 d5 d5 s d4 d4 d4 d4 d4 d4 d4 d4 h)) (setf p3 '(e d4 d4 d4 d4 d4 d4 d4 d4 s s s s s s s s h d3)) (setf p4 '(e d2 d2 d2 d2 d2 d2 d2 d2 s s s s s s s s h d1)) ;(pitch-transpose 2 p4) (setf patterns (list p1 p2 p3 p4 p5 p6 p7 p8)) (setf harmony2 '((a3b3e4gs4) (b3e4gs4a3) (e4gs4a3b3)(gs4a3b3e4))) (setf dictum-a `(((1 2 3 4) :harmony ,harmony2 :tempo 72) ((1 2 3 4) :harmony ((a3b3e4gs4) (b3e4gs4a3) (e4gs4a3b3)(gs4a3b3e4)) :tempo 72) ((2 1 3 4) :harmony ((a3b3e4gs4) (b3e4gs4a3) (e4gs4a3b3)(gs4a3b3e4)):methods (- ri - -) :tempo 72) ((3 2 1 4) :harmony ((a3b3e4gs4) (b3e4gs4a3) (e4gs4a3b3)(gs4a3b3e4)):methods (a d2 r -) :tempo 72) ((4 3 2 1) :harmony ((a3b3e4gs4) (b3e4gs4a3) (e4gs4a3b3)(gs4a3b3e4)) :tempo 72) ((4 2 1 4):harmony a3b3e4gs4) ((2 3 1 4):harmony a3b3e4gs4) ((3 2 1 4):harmony a3b3e4gs4) ((- - - -) :span 1/4 :harmony a3b3e4gs4)) dictum-b '(((- 5 2 -) :span 3/4 :methods (- ri - -) :tempo 64) ((- 2 2 6) :span 3/4 :methods (- d d3 -) :tempo (:rit 80 56 1/64)) ((4 6 6 8) :span 2/4 :methods (a d2 r -) :tempo 88) ((- - - -) :span 1/4)) dictum-c '(((7 4 - 5) :methods (a d i ?) :extend (s - s -) :tempo 64) ((1 2 2 3) :methods (a d i -) :extend (s - s -))) dictum-d '(((- 3 - -) :methods (- - - -) :tempo 80) ((- 2 - -) :methods (- - - -)) ((- 4 - -) :methods (< - - -)) ;((1 1 1 1) :methods (da ad (r d5) (i d2)) :polyphony (7 o) :tempo 72) ) ) ;; Sections (setf sec-a (counterpoint patterns dictum-a :global-methods '((dyn fl) - - -))) (setf sec-b (counterpoint patterns dictum-b :global-methods '((dyn fl) (dyn cl) (t-12 dyn hn) (t-12 dyn vc)) :global-polyphony '((10 p) (1 13)) :iterate t)) (setf sec-c (counterpoint patterns dictum-c :global-methods '((dyn fl) (dyn cl) (t-12 dyn hn) (t-12 dyn vc)) :global-polyphony '((7 p) (1 13)) :iterate t)) (setf sec-d (counterpoint patterns dictum-d :global-methods '((dyn fl) (dyn cl) (dyn hn) (dyn vc)))) ;; Assemble Voices (assemble-voices 'voice sec-a sec-b sec-c sec-d) (ps 'gm :sq ;(list (pitch-transpose 12 vh1-2) vh2-2 vh3-2 vh4-2) (list (pitch-transpose 0 voice1) (pitch-transpose 0 voice2) (pitch-transpose 0 voice3) (pitch-transpose 0 voice4) #| (pitch-transpose 0 (ambitus 'violin voice1)) (pitch-transpose 0 (ambitus 'violin voice2)) (pitch-transpose 0 (ambitus 'viola voice3)) (pitch-transpose -12 (ambitus 'cello voice4)) |# ) :key-signature 'atonal ;;;obs:it´s possible to bypass the time signature we did before opening the time signature here ;;time-signature timesig-proc are processed lists of time-signatures ;:time-signature timesig ;:tempo 90 :flexible-clef nil :title ;:flexible-clef nil "Quartet Harmony Control - JULIO HERRLEIN" :display :window) ;; Global SEED back to NIL (init-seed nil) ) SB
    The trick is here with backquote:
     
    `(((1 2 3 4) :harmony ,harmony2 :tempo 72)
  2. Like
    Stephane Boussuge reacted to edesert in Petite suite Partie 4/6   
    Nice work Stephane!
    best,
    peter
  3. Thanks
    Stephane Boussuge got a reaction from JulioHerrlein in A.S. MAILBOX (three serial miniatures for string quartet) - Julio HERRLEIN   
    I'm fully vaccinated too 🙂
     
    Best
     
    S.
  4. Thanks
    Stephane Boussuge got a reaction from JulioHerrlein in A.S. MAILBOX (three serial miniatures for string quartet) - Julio HERRLEIN   
    Great !
    Thank you for that piece Julio !
     
    Best
    Stéphane
  5. Like
    Stephane Boussuge reacted to JulioHerrlein in A.S. MAILBOX (three serial miniatures for string quartet) - Julio HERRLEIN   
    A.S. Mailbox
    (three serial miniatures for string quartet)
    dur: circa 4´30
    Composer: Julio HERRLEIN

    Porto Alegre - Jun/2021
     
    I. Email from Anton
    II. [SPAM] Re: Hauer
    III. Letter from Alban
     
    A.S. (Arnold Schoenberg) Mailbox are a set of three miniatures for string quartet using 12-tone serial techniques and parametric composition processes. The idea is a imaginary mailbox of Schoenberg dialogues with his main disciples Webern and Berg, and also Hauer, his rival in the creation of a 12-tone composition method.
     
    All the pieces are (loosely) based in the same all interval  12-tone row:
    c4 eb4 a4 db4 b4 ab4 g4 d4 e4 f4 bb4 gb4
     
    PERFORMANCE NOTE: The score and parts accidentals favor the FLATS (b) for easier enharmonic reading. 

    Some of the uses of the tone row are also related to the rhythmic span of the orchestration and the algorithmic method for spreading the tones through the lisp lists in the Opusmodus software.

    The first miniature “Email from Anton” are inspired by the pointilistic textures used by Webern in his op. 28. In a later section, the textures are intensified by melodic figures and tremolos across the instruments of the quartet.

    The second miniature “[SPAM] Re: Hauer” is an imaginary email from Hauer  (lost in “Arnie´s” spam box…) where he shows to A.S. his klangreihen method (as actually described by Dominik SEDIVÝ, 2011, pp. 25-30) to harmonize and make a smooth parsimonious voice-leading of a 12-tone row. 
     
    The last piece “Letter from Alban” set up some 6-attack melodic motifs based on the hexachords of the basic row, combined with rhythmic ostinato textures of accompaniment and sweet chords derived from retrograde version of the row.
     
    All the best !! Thanks to everyone in this forum who have patience with me !

         Julio Herrlein, 2021/JUNE
  6. Like
    Stephane Boussuge reacted to opmo in Opusmodus 2.2 (Upgrade)   
    rewrite-accidentals
    This function replaces all accidentals to a given map in an omn-form sequence. The chromatic map will rewrite all pitch accidentals with sharps when the pitch ascends and with flats when the pitch descends. The sharp map uses sharp accidentals only and the flat map uses flat accidentals only. The default map is as follows: c cs d ds e eb f fs g gs a bb b.
    Examples:
    (setf omn1 '((5q fs4 p - bb3 f3 e4) (-3q g4 c5) (s eb5 a5 mf cs6 gs6)              (5q gs6 pp cs6 mf a5 eb5 -) (-s c5 g4 e4)))
     
    (rewrite-accidentals omn1 :map :chromatic)
     
    (rewrite-accidentals omn1 :map :sharp)
     
    (rewrite-accidentals omn1 :map :flat)
     
     
  7. Like
    Stephane Boussuge got a reaction from opmo in Clusters of notes   
    One possible way among the infinity of possibility :
     
     
    ;;; Creating random notes that are played ;;; in clusters over random time periods ;; Create random notes (setf notes (rnd-sample 512 (make-scale 'c2 48))) ;; Create chords (setf chords (gen-chord 24 4 8 -6 6 notes)) ;; Create binary time periods (setf bin (gen-binary-rnd 24 16 1 8)) ;; Create rhythm from binary (setf ry (binary-map bin 's)) ;; Create random dynamics (setf dyn (rnd-sample (length chords) '(pp p mp mf f ff))) ;; Full OMN Assembly (setf rnd-chords (make-omn :pitch chords :length ry :velocity dyn ;:span :pitch )) (ps 'gm :pg (list rnd-chords) :tempo 64) SB.
  8. Like
    Stephane Boussuge reacted to edesert in "Covid" for String quartet   
    Dear Stéphane,  nice work for the Quartet!  Interesting and pleasing textures and unsurprisingly some feverish moments 🙂  Glad to hear you're feeling better!  Wishing you a swift recovery.
    cheers!
    Peter
    PS Thanks for your usual generosity in uploading the code.  
  9. Like
    Stephane Boussuge got a reaction from etu in Does Opusmodus come with sample library?   
    I've made a soundest for BBC Symphonic Orchestra Core version but it probably works as well with this one.
     
    You will find it attached to this post.
     
    best
     
    SB.
     
    BBCSO.lisp
  10. Thanks
    Stephane Boussuge got a reaction from AM in "Covid" for String quartet   
    All fine Julio, thanks, no worries !
    It's finish now.
    Best
     
    Stéphane
     
     
  11. Like
    Stephane Boussuge got a reaction from AM in "Covid" for String quartet   
    Nothing to do during my Covid period and a bit of fever, so...
     

    stephaneboussuge · Covid - For - String - Quartet  
     
    Covid-forStringQuartet.opmo
  12. Thanks
    Stephane Boussuge got a reaction from JulioHerrlein in "Covid" for String quartet   
    All fine Julio, thanks, no worries !
    It's finish now.
    Best
     
    Stéphane
     
     
  13. Thanks
    Stephane Boussuge got a reaction from JulioHerrlein in "Covid" for String quartet   
    Nothing to do during my Covid period and a bit of fever, so...
     

    stephaneboussuge · Covid - For - String - Quartet  
     
    Covid-forStringQuartet.opmo
  14. Thanks
    Stephane Boussuge got a reaction from opmo in "Covid" for String quartet   
    Nothing to do during my Covid period and a bit of fever, so...
     

    stephaneboussuge · Covid - For - String - Quartet  
     
    Covid-forStringQuartet.opmo
  15. Like
    Stephane Boussuge reacted to AM in Interval distance of a list (integers or pitches) in relation to a chosen note   
    (defun interval-distance (alist n) (let ((alist (if (pitchp (car alist)) (pitch-to-midi alist) alist)) (n (if (pitchp n) (pitch-to-midi n) n))) (loop for i in alist collect (- i n)))) (interval-distance '(c4 d4 b2 e7) 'c4) => (0 2 -13 40) (interval-distance '(c4 d4) 'c4) => (0 2) (interval-distance '(43 44) '41) => (2 3) (interval-distance '(56 48 11) 'c4) => (-4 -12 -49)  
  16. Like
    Stephane Boussuge reacted to opmo in Automatic opening last MIDI file files in Musescore (or Sibelius, etc)   
    In the next update:

    MUSICXML-TO-EDITOR
     
    The MUSICXML-TO-EDITOR function opens a MusicXML file or the last compiled score (DEF-SCORE, PS or snippet) in any notation editor like Sibelius, Dorico, MuseScore etc...
     
    In Opusmodus the default editor is set to Sibelius:
     
    (defparameter *default-notation-editor* "Sibelius.app")
     
    To change the default editor you need to replace the  "Sibelius.app" string with the name of your own editor and paste the expression into the ‘User Source.lisp’ file which you will find in the ~/Opusmodus/Extensions directory.
     
    For example:
     
    (defparameter *default-notation-editor* "Dorico 3.5.app")
    (defparameter *default-notation-editor* "MuseScore 3.app")
     
    Examples:
     
    To open the last compiled score (DEF-SCORE, PS or snippet) in the notation editor:
     
    (musicxml-to-editor)
     
    To open the 2nd instrument from the last compiled score (DEF-SCORE, PS or snippet) in the notation editor:
     
    (musicxml-to-editor :instrument 2)
     
    To open a MusicXML file in the notation editor:
     
    (musicxml-to-editor "file-name")
     
    To open the file in Finale:
     
    (midi-to-editor "file-name" :application "Finale")
     
    Should the application not open you can use the identifier keyword with the bundle-identifier.
    For example the Sibelius 7.5 version identifier is "com.avid.Sibelius75"
     
    (musicxml-to-editor "file-name" :identifier "com.avid.Sibelius75")
     

    MIDI-TO-EDITOR
     
    The MIDI-TO-EDITOR function opens a MIDI file or the last compiled score (DEF-SCORE, PS or snippet) in any notation editor like Sibelius, Dorico, MuseScore etc...
     
    In Opusmodus the default editor is set to Sibelius:
     
    (defparameter *default-notation-editor* "Sibelius.app")
     
    To change the default editor you need to replace the  "Sibelius.app" string with the name of your own editor and paste the expression into the ‘User Source.lisp’ file which you will find in the ~/Opusmodus/Extensions directory.
     
    For example:
     
    (defparameter *default-notation-editor* "Dorico 3.5.app")
    (defparameter *default-notation-editor* "MuseScore 3.app")
     
    Examples:
     
    To open the last compiled score (DEF-SCORE, PS or snippet) in the notation editor:
     
    (midi-to-editor)
     
    To open the 2nd instrument from the last compiled score (DEF-SCORE, PS or snippet) in the notation editor:
     
    (midi-to-editor :instrument 2)
     
    To open MIDI file in the notation editor:
     
    (midi-to-editor "file-name")
     
    To open the file in Finale:
     
    (midi-to-editor "file-name" :application "Finale")
     
    Should the application not open you can use the identifier keyword with the bundle-identifier.
    For example the Sibelius 7.5 version identifier is "com.avid.Sibelius75"
     
    (midi-to-editor "file-name" :identifier "com.avid.Sibelius75")
     
  17. Like
    Stephane Boussuge reacted to JulioHerrlein in Request: a gen-divide-attack function only to positive rhythmic values   
    Dear Stephane, 
     
    I´m planning to do a little video sooner or later.
    But basically, it´s the same stuff/template I´m working for some time. 
    Inside this template, some ideas about music and composition are emerging, 
    alongside with the constraints of my imagination and the different ways of realizing all
     this with this wonderful Opusmodus tool.
    Thanks in advance to all the support and inspiration you and Janusz bring to me
    and all the people in this forum.
     
    All the best !
    Julio
  18. Like
    Stephane Boussuge got a reaction from JulioHerrlein in Request: a gen-divide-attack function only to positive rhythmic values   
    Hi Julio,
     
    i will be very interesting to see your way to control harmony.
     
    Best
     
    S.
  19. Like
    Stephane Boussuge reacted to opmo in Request: a gen-divide-attack function only to positive rhythmic values   
    Done 🙂
     
    (gen-divide 3 '(q -q -e e e e q q -s s s s)) => ((1/4 -1/4 -1/8) (1/8 1/8 1/8) (1/4 1/4 -1/16) (1/16 1/16 1/16)) (gen-divide 3 '(q -q -e -e -e e q q -s s s s) :omit-rest t) => ((1/4 -1/4 -1/8 -1/8 -1/8 1/8 1/4) (1/4 -1/16 1/16 1/16) (1/16)) (gen-divide 3 '(q -q -e -e -e e q q -s s s s) :omit-rest t :omn t) => ((q - -e - - = q) (q -s = =) (s)) (gen-divide 3 '(q c4 -q -e d4 e e4 e f4 e g4 q a4 q b4 -s s c5 d5 e5)) => ((q c4 mf - -e) (e d4 mf e4 f4) (e g4 mf q a4 b4) (-s c5 mf d5) (s e5 mf)) (gen-divide 3 '(q c4 -q -e d4 e e4 e f4 e g4 q a4 q b4 -s s c5 d5 e5) :omit-rest t) => ((q c4 mf - -e d4 e4) (e f4 mf g4 q a4) (q b4 mf -s c5 d5) (s e5 mf))  
  20. Like
    Stephane Boussuge reacted to opmo in Traces for Ensemble   
    Good work Stephane, Nigel would love it. I wish Nigel could see the OM COUNTERPOINT and POLYPHONY in action.
    Soon I will make a new release with the enchantments to OMN-DICTUM and POLYPHONY functions.
  21. Thanks
    Stephane Boussuge got a reaction from lviklund in Traces for Ensemble   
    New piece made with OM:

    stephaneboussuge · Traces For Ensemble  
     
     
     
    SB.
  22. Thanks
    Stephane Boussuge got a reaction from opmo in Traces for Ensemble   
    New piece made with OM:

    stephaneboussuge · Traces For Ensemble  
     
     
     
    SB.
  23. Like
    Stephane Boussuge got a reaction from AM in Traces for Ensemble   
    New piece made with OM:

    stephaneboussuge · Traces For Ensemble  
     
     
     
    SB.
  24. Like
    Stephane Boussuge reacted to opmo in Per Measure processing of accidentals (flats, sharps)   
    Done.
     
    (omn-dictum '((e stacc 1) (:all :sharp 2) (3q leg 2)) omn2) (omn-dictum '((e stacc 1) (bb4 :sharp) (3q leg 2)) omn2)  
    (omn-dictum '((:all :sharp 1) (:all :flat 2))             '((q bb4 leg a4 mp leg gs4 a4 f) (q bb4 leg a4 mp leg gs4 a4 f)))
  25. Like
    Stephane Boussuge reacted to opmo in Per Measure processing of accidentals (flats, sharps)   
    This could be done.
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy