Jump to content

Stephane Boussuge

Moderators
  • Posts

    1,059
  • Joined

  • Last visited

Everything posted by Stephane Boussuge

  1. Hi, here is a new piece, Prelude pour Piano. Happy listening ! Stéphane.
  2. Hi, often when we generate articulation and particularly legato articulation with functions like LENGTH-MAP, the legato slur could finished on marc or stacc notes like that: a possible way for improve this could be to use a post processing of LENGTH-MAP outputs with a MOTIF-MAP function: Attached to this post, a work in progress, Flux for ensemble, as an example of a possible use "in context" of this technique. Have a good day. SB. Flux-Extrait.pdf flux1.mp3 Flux1-02.opmo
  3. Hi Ole, This score have nothing new and all the techiques employed here are described in all my other post and scores. It is personal experimentation and not for sharing. Regards Stéphane
  4. Just for the pleasure to share a small track made as a small exercise and experimentation with my favorite software ;-)
  5. My way is to compose the piece as much as possible from my score algorithms but it remain frequently some local detail to refine and in that case, in past i used score editor like Sibelius, Notion or Finale but now i'm prefer to stay at the code level and have the possibility to change things at any time with this post processing approach. However, even with this post processing approach, i finish the score into Sibelius but in a much smaller extend than in past and i tend progressively, as my experience and Opusmodus software progress, to do more and more things in Opusmodus and less in score editor. SB.
  6. Hi, i have composed a short strings trio as an example of how to use score post processing techniques, ie. change things in a score after the OMN generation by the opmo functions. Score script and mp3 attached to this post. SB. StringsTrio210516g-GM.opmo StringsTrio210516g.mp3
  7. i am really sorry but i don't have a video of this performance, i have made it "on the moment" . But the code is very very simple and not very interesting. I attached to this post if you want to have a look. SB. Granite.lisp Test1.opmo
  8. Hi, when i compose with opmo, i use not so many different strategies , it is kind of patterns i use and reuse very often. For example, i like to use a vector for describe and drive some aspects of the piece like rhythmical density or instrumental density, harmonic tension/relaxation.... i have some strategies for every aspect like rhythm, harmony, density, dynamics etc...i combine some of them in every composition and i 'm trying to refine them and invent some news from composition to composition. I don't know nothing about UML but if it can describe the thinking of a composer more accuratly, it is pedagogically very interesting ! SB.
  9. Recorded LiveCoding improvisation performance. SB.
  10. Thank you very much Rangarajan for your help. As you can see i am more musician than programmer ;-) Your version is more concise. SB.
  11. ;;; ------------------------------------------------------------------------------ ;;; GEN-PITCH-LINE ;;; Pitch generation function based on noise vectors conversion with a large choice of ;;; types of noises, compress ratio for the vector, filtering repetitions and ambitus. (defun gen-pitch-line (nb-pitch &key (compress 1) (ambitus '(c4 c6)) seed filter-repeat (type :white)) (do-verbose ("gen-pitch-line") (rnd-seed seed) (labels ((white (nb-pitch &key (compress 1) (ambitus '(c4 c6)) seed filter-repeat type) (if filter-repeat (gen-trim nb-pitch (filter-repeat filter-repeat (vector-to-pitch ambitus (vector-smooth compress (gen-white-noise nb-pitch :seed seed :type type))))) (vector-to-pitch ambitus (vector-smooth compress (gen-white-noise nb-pitch :seed seed :type type))))) (pink (nb-pitch &key (compress 1) (ambitus '(c4 c6)) seed filter-repeat) (if filter-repeat (gen-trim nb-pitch (filter-repeat filter-repeat (vector-to-pitch ambitus (vector-smooth compress (gen-pink-noise nb-pitch :seed seed))))) (vector-to-pitch ambitus (vector-smooth compress (gen-pink-noise nb-pitch :seed seed))))) ) (cond ((equal type ':white) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :normal)) ((equal type ':binary) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :binary)) ((equal type ':cauchy) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :cauchy)) ((equal type ':chi-square-2) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :chi-square-2)) ((equal type ':double-exponential) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :double-exponential)) ((equal type ':exponential) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :exponential)) ((equal type ':extreme) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :extreme)) ((equal type ':gaussian) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :gaussian)) ((equal type ':logistic) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :logistic)) ((equal type ':lognormal) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :lognormal)) ((equal type ':triangular) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :triangular)) ((equal type ':low-pass) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :low-pass)) ((equal type ':high-pass) (white nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed) :type :high-pass)) ((equal type ':pink) (pink nb-pitch :compress compress :ambitus ambitus :filter-repeat filter-repeat :seed (seed))))))) #| USAGE (gen-pitch-line 24 :compress 0.42 :type :white :filter-repeat 1) (gen-pitch-line 24 :compress 0.42 :type :pink :filter-repeat 1) (gen-pitch-line 24 :compress 0.42 :type :extreme :filter-repeat 1) (gen-eval 8 '(make-omn :pitch (gen-pitch-line 24 :compress 0.42 :type :white :filter-repeat 1) :length (euclidean-rhythm 16 1 16 's :type 2) ) :seed 33) |# ;;; ------------------------------------------------------------------------------ SB.
  12. Thanks you for this interesting hysterical functions ;-) SB.
  13. hI André, thanks for this but it seem we need the function weighted-random: "In weighted-t/nil: Undefined function weighted-random" S.
  14. may be this: (setf phrase '(e fs4 c5 -w h gs5 -w e. d5 h cs5)) (motif-map '(((h gs5) (q fs4 gs5))) phrase) SB.
  15. Hi Wim, a possible solution: (setf chords (mclist (mapcar (lambda(x) ;; mapcar will apply the inversion to each chord (chord-inversion 3 x)) (harmonic-progression ;; harmonic progression definition (integer-transpose -1 '(1 2 3 4 5 6 7)) ;;degree for the chords '(c4 major) ;; scale used :size 4 ;; chords size )))) (setf drop2 (chordize-list (pitch-transpose-n '(0 0 -12 0) (pitch-melodize chords)))) SB.
  16. (mapcar (lambda(x) ;; mapcar will apply the inversion to each chord (chord-inversion 3 x)) (harmonic-progression ;; harmonic progression definition (integer-transpose -1 '(1 2 3 4 5 6 7)) ;;degree for the chords '(c4 major) ;; scale used :size 4 ;; chords size )) SB.
  17. This feature will be implemented in the V.2 of Opusmodus. SB.
  18. Hi Rangarajan you will find all the information into this book: https://www.amazon.co.uk/Serial-Composition-Tonality-Dominik-Sedivy/dp/3902796030/276-6904282-9885755?ie=UTF8&*Version*=1&*entries*=0 Best regards SB.
  19. Lasse, i write many many unfinished Bits and pieces, and in past almost only that. Long time ago, when speaking with a friend, i said i never finish my piece but i said it was not to important because it was only training, but this friend reply: i understand but finishing a piece is also a training and finishing a piece is a different training than starting a piece.... From this day and discussion with that friend, i have started to finish some of my pieces :-) SB.
  20. Hi Rangarajan, i have checked the program and it works absolutely perfectly. Thank you very much for you work and your help. It is really really useful stuff. Thanks a lot Stéphane
  21. Hi will have a look. Thank you very much Rangarajan. Stéphane
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy