Jump to content

Stephane Boussuge

Moderators
  • Posts

    1,058
  • Joined

  • Last visited

Everything posted by Stephane Boussuge

  1. Hello Cliff, yes naturally, you can export as midi file: (compile-score *last-score* :output :midi :file "TempScores/section.mid" ) SB.
  2. Use ambitus function with the desired ambitus like: (setf chords.cls (ambitus '(bb2 eb5) (closest-path chords :start '(bb3fs4g4d5)))) S.
  3. merge-voices function is made for OMN expressions, not length lists. S.
  4. This piece was totally composed with Opusmodus but the rendering of audio was made with Sibelius. S.
  5. Ps function is not a problem if you stay in GM but could become a bit complicated for a new comer if you want to use it with plugins, external ports etc... Basically the def-score is indeed the most "normal" and powerful way for OM to manage final score. PS is for drafting/sketching or teaching. But with def-score you can assemble them into complex pieces etc... I can't give a full course here, the subject is too big... For instrumentation, orchestration I may use several strategies but some of my favorites are to use do-timeline or do-timeline2 functions or a different approach like counterpoint function as you made in your exercise file who is working well now with the small possible corrections I've showed to you. S.
  6. The sound is the New Noteperformer4 with Sibelius and BBCSO Orchestra. S.
  7. Because (list my-sequence my-chord-sequence) is a list of lists. When you call for example 1 in you dictum, you don't call the first patterns but the full first list of patterns. Your code could work normally is you replace this list of list expression by: (flatten-sublist (list my-sequence my-chord-sequence)) S.
  8. I'm using sequences in Dictum and my example was an example of possible proper way to use dictum and counterpoint function. Best Stéphane
  9. In that case, you can use substitute-map. Here's a short example for woodwind trio: ;;;--------------------------------------------------------- ;;; Parameters (setf material '(#|1|# (q. f4 f e fs4 q d4 s c4 f4 a4 fs4) #|2|# (e d4 f c4 f4 a4 fs4 b4 eb4 f4) #|3|# (h f4 a4) #|4|# (h fs4 f b4) #|5|# (h eb4 f4) #|6|# (q. gs4 mp e c4 q f4 s a4 a4 gs4 b4) #|7|# (h f4 mp a4) #|8|# (q. a4 mp e gs4 q b4 s gs4 c4 b4 fs4) )) (setf fl.index '(1 2 1 3 1 4 5 6 7 8)) (setf ob.index '(3 2 4 3 5 4 6 5 7 6)) (setf bn.index '(1 2 2 1 1 3 3 1 1 4)) (setf ref-list (gen-integer 1 (length material))) (setf flute (substitute-map material ref-list fl.index)) (setf oboe (substitute-map material ref-list ob.index)) (setf bassoon (pitch-transpose -24 (substitute-map material ref-list bn.index))) ;;;--------------------------------------------------------- ;;; Score and Layout (def-score woodwind-trio (:title "Title" :composer "Composer" :copyright "Copyright © " :key-signature 'chromatic :time-signature '((1 1 1 1) 4) :tempo 100 :layout (wind-trio-layout 'flute 'oboe 'bassoon)) (flute :omn flute :channel 1 :sound 'gm :program 'flute :volume 95 :pan 70 :controllers (91 '(52)) ) (oboe :omn oboe :channel 2 :sound 'gm :program 'oboe :volume 95 :pan 54 :controllers (91 '(55)) ) (bassoon :omn bassoon :channel 3 :sound 'gm :program 'bassoon :volume 95 :pan 70 :controllers (91 '(57)) ) ) SB.
  10. Hi, here's your code slightly modified to give you and example of the usage of counterpoint function with multiple lists. As you can see, the :sequence keyword in dictum allow you to choose for each instrument in which list you pick the patterns. I've added 2 more lines to your dictum to show how to use :span to constrain the time signature on some bars. The :extend keyword allow you to add rest at the end (default) or at the start (:extend '(s))) of the bar when a bar is extended by :span keyword. Hope this example will help. Best regards. Stéphane Boussuge (progn (setf my-dictum '(((- 1 2 -) :sequence '(1 1 2 1)) ((1 - - 2) :sequence '(1 1 2 1)) ((2 - - 2) :sequence '(1 1 2 1)) ((1 2 2 1) :sequence '(1 1 2 1)) ((3 1 3 2) :span 4/4 :sequence '(1 1 2 1) :extend '(- s s -)) ((4 1 4 1) :span 2/4 :sequence '(1 1 2 1)) )) (setf times (* 1 (length my-dictum))) (setf my-root -0) (setf my-intervals '(0 1 4 7)) (setf my-pitches (pitch-transpose my-root (integer-to-pitch my-intervals))) (setf my-lengths (rnd-sample times '((q e) (q q)) :seed 356)) (setf my-articulations (span my-lengths '(-))) (setf my-velocities '(pp p mp mf f ff)) (setf my-sequence (make-omn :length my-lengths :pitch my-pitches :velocity my-velocities)) (setf my-chord-sequence (make-omn :length my-lengths :pitch (gen-chord2 '(2 4) '(2 2 3 4) '((c4 cs4 e4 g4) (c4 cs4 e4 g4))) :velocity my-velocities :articulation my-articulations)) (setf my-time-signature (get-time-signature my-sequence)) (counterpoint (list my-sequence my-chord-sequence) my-dictum :global-methods '((fl) (cl) (hn) (vc)) :index 'voice1-) (ps 'gm :fl (list voice1-1) :cl (list voice1-2) :hn (list voice1-3) :vc (list voice1-4) :tempo 161 ) )
  11. I’m always amazed by the incredible power of Opusmodus and the inspiration it give to me to compose and explore new possibilities . Actually, I'm playing and experimenting a bit with OM and orchestra, preparing my next package of video lessons for ComposerWorkshop.com. Today, I've made this output from my experiences, nothing extraordinary but I wanted to share it as an example of what we can make with Opusmodus in about 1h. It's basically only Slonimsky patterns distributed to the orchestra on an heterophonic way with transpositions from Opusmodus bind-to-interval function (set to "0") Stéphane Etude pour Orchestre 040523.wav
  12. Also I can see you try to open the file in the assistant. You have to create a new workspace for your studies and work inside this workspace, not in assistant. For a good understanding of this, I recommend my "Introduction to Opusmodus" on ComposerWorkshop.com Best ! S.
  13. I truly love Opusmodus. In this new series of videos, I'm trying to show why. This (basic) example show how Opusmodus could be used to generate and experiment with orchestral sections.
  14. You wrote some wrong things inside your def-score, compare the def-score of my corrected file to the old one and you will see your errors. Happy study. SB.
  15. I don't know if it could be the reason but in you study score, I see a (midi-destination) function in the middle of your def-score !!! Try to remove it to see if it was the problem... We will find a solution. If you can't find, I will help you by Zoom (for free). Best Stéphane Hi again, here's your file corrected. Continue to study, you will success. Best S. Fibonacci Meditation STUDY DOC Correction.opmo
  16. Opusmodus is for everybody but the start could be difficult indeed. To evaluate, you have to be sure you right click into the score file and choose : "Evaluate score / Notation" and NOT "Evaluate all" because in that case you will get nothing... May be you can take a private lesson with me just for the start or check my videos course, particularly "Introduction to Opusmodus". Appointment for lessons or videos pack lessons are available here: ComposerWorkshop.com Best ! Stéphane
  17. Ok, i suppose your DAW is connected to "looMIDI Port" so you have to use :port 1 . My example above just send to your Microsoft GM wavetable but not to your DAW. Naturally, if you DAW is connected to "looMIDI Port 1" , it is :port 2 according to your setup and "looMIDI Port 2" = :port 3 etc... So, in FiboMedit file, you have to set up the port on 1 (if DAW connected "looMIDI Port") like that: (setf size 48) ;; define the high value for fibonacci serie (setf fiboharmup (rnd-round size 2000)) ;; define low val (setf fiboharmbase (- fiboharmup size)) ;; Fibo definition (setf fibo (modus (fibonacci fiboharmbase fiboharmup) :mod 12)) ;; Transform to pitch (setf pmat (integer-to-pitch fibo)) ;; define chords size for harmonic mapping (setf chordsize 4) ;; chords generation (setf chords (gen-chord2 size chordsize pmat :offset (vector-to-list (vector-round 3 chordsize fibo)) :transpose (vector-to-list (vector-round -6 12 fibo)))) ;;Hamonic path definition (setf path (tonality-series chords)) ;; Make some parts (setf pad1* (tonality-map path (gen-repeat (/ size 4) '((4/1 c4g4c5e5g5))))) (setf pad2* (tonality-map path (gen-repeat (/ size 4) '((4/1 c3g3c4e4g4))))) (setf arpbase1 (make-omn :pitch (integer-to-pitch (gen-trim 64 fibo)) :length (list (length-span 4 (binary-map (modus fibo :mod 2) (gen-repeat 16 's)))) )) (setf arp1* (tonality-map path (gen-repeat (/ size 4) arpbase1))) (setf arpbase2 (make-omn :pitch (integer-to-pitch (gen-trim 64 (gen-rotate 8 fibo))) :length (list (length-span 4 (binary-map (modus (gen-rotate 8 fibo) :mod 2) (gen-repeat 16 's)))) )) (setf arp2* (tonality-map path (gen-repeat (/ size 4) arpbase2))) ;; Instrumentation et timeline (setf pad1 pad1* arp1 arp1* arp2 arp2* pad2 pad1* pad3 pad2* ) (setf fibobase1 (rnd-round size 2000)) (setf fibomute1 (substitute-map '(x -) '(0 1) (modus (fibonacci (- fibobase1 size) fibobase1) :mod 2))) (setf fibobase2 (rnd-round size 2000)) (setf fibomute2 (substitute-map '(x -) '(0 1) (modus (fibonacci (- fibobase2 size) fibobase2) :mod 2))) (setf fibobase3 (rnd-round size 2000)) (setf fibomute3 (substitute-map '(x -) '(0 1) (modus (fibonacci (- fibobase3 size) fibobase3) :mod 2))) (setf fibobase4 (rnd-round size 2000)) (setf fibomute4 (substitute-map '(x -) '(0 1) (modus (fibonacci (- fibobase4 size) fibobase4) :mod 2))) (setf fibobase5 (rnd-round size 2000)) (setf fibomute5 (substitute-map '(x -) '(0 1) (modus (fibonacci (- fibobase5 size) fibobase5) :mod 2))) (setf fibobase6 (rnd-round size 2000)) (setf fibomute6 (substitute-map '(x -) '(0 1) (modus (fibonacci (- fibobase6 size) fibobase6) :mod 2))) (do-timeline '( pad1 fibomute1 arp1 fibomute2 arp2 fibomute3 pad2 fibomute4 pad3 fibomute5 ) '(gen-pause x) :time 4/1) ;; Score definition (def-score fibomeditation ( :title "Fibonacci's Meditation" :key-signature 'chromatic :time-signature '(4 4) :composer "S.Boussuge" :copyright "Copyright © 2015 S.Boussuge" :tempo 72 ) (pad1 :omn pad1 :channel 1 :port 1 :volume 52 :pan 42) (arp1 :omn arp1 :channel 2 :port 1 :volume 112 :pan 74) (arp2 :omn arp2 :channel 3 :port 1 :volume 96 :pan 45) (pad2 :omn pad2 :channel 4 :port 1 :volume 38) (pad3 :omn pad3 :channel 5 :port 1 :volume 58 :pan 64) )
  18. Please do (midi-destinations) in listener and send me a screenshot of the result.
  19. Hi, Did you success with other files ? Did you try (midi-destinations) function listener to find the correct number of the midi port used by your DAW ? Once this number found, evaluate the following score and replace the number in :port 0 by the number of your midi port to your DAW to test it. (def-score temp ( :key-signature 'chromatic :time-signature '(4 4) :tempo 120 ) (inst1 :omn '((q c4 d4 e4 f4)(q g4 a4 b4 c5)) :channel 1 :port 0 ) ) SB.
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy