Jump to content

All Activity

This stream auto-updates

  1. Past hour
  2. The example of your previous score is correct. Let's check the expression here: #|31|# ((2 - 2) :span 6/4 :methods ((la2 ra) - (la2 ra t-12)) :tempo 112) (setf pat2 '(e f4 p leg e. g4 def e bb4 mp> leg qs b4 def)) (setf 1-step (fit-to-span 6/4 pat2)) => (e f4 p leg e. g4 def e bb4 mp> leg qs b4 p def -h.) (setf 2-step (unfold 'om '(la2 ra) 1-step)) => (-w. he b4 p def q bb4 mp> leg q. g4 p def q f4 leg) (length-span 6/4 2-step) => (-w.) As you can see you need to understand the process of your structure. The (ra) is gen-retrograde, this is why you get (-w) in the first and third voice.
  3. Yesterday
  4. thank you, yes, works like this, the ra function throws the notes out of sync, I understand, how to solve: ((2 - 2) :extend s :span 6/4 :methods ((la2 r ) - (la2 ra t-12)) :tempo 112) ?
  5. #|31|# ((2 - 2) :extend s :span 6/4 :methods ((la2 ra) - (la2 ra t-12)) :tempo 112) #|32|# ((3 3 3) :extend s :span 3/4 :methods (- - - )) #|33|# ((- 2 - ) :extend s :span 6/4 :methods ((ra la2) (ra la2 ) (ra la2 t-12 )):tempo 112))) Just doing this without testing, but I think this is what you need to do.
  6. (Progn (setf seq1 '((s c4 p leg e. cs4 mp ten+def e e4 p leg q. fs4 pp def ))) (setf seq2 '((e f4 p leg e. g4 def e bb4 mp> leg qs b4 def))) (setf seq3 '((e. eb4 p leg qs d4 def s gs4 mf leg e. a4 def))) (setf dictum-d '( #|31|# ((2 - 2) :span 6/4 :methods ((la2 ra ) - (la2 ra t-12)) :tempo 112) #|32|# ((3 3 3) :span 3/4 :methods (- - - )) #|33|# ((- 2 - ) :span 6/4 :methods ((ra la2) (ra la2 ) (ra la2 t-12 )):tempo 112))) (setf globals-d '(- - -)) (counterpoint (list seq1 seq2 seq3) dictum-d :global-methods globals-d :index 'sec-d) (ps 'VSL_ss :vslv1 (list sec-d1) :vslvla (list sec-d2) :vslvlc (list sec-d3) :tempo tempo-sec-d ) ) With this code I would expect: but I get this? Think you for any hint, best wishes Version 3.0.29235 (3.0.29235)
  7. Just drop your functions source file into the ~/Opusmodus/ User Source/ Extensions folder. You might have more than one Opusmodus directory on your system.
  8. If I make the adjustment to the (*) we get: The SPAN is the master and if not given the longest voice is the master, what ever the augmentation is. If you want true expansion of the augmentation then you need to change (if given) or add a span value (times 2) - this is why there is a span in the counterpoint function. You cound create a patterns before with the augmentation this way you would get what you are looking for without playing with the span.
  9. Looks like the problem here is the pedal notation (*). Will check.
  10. thank you for the correction! your score with changed global-method: if I use (setf globals-d '(- - -)(line 53) instead I get nearly the same as your score example(see picture). The fact that the viola is an eighth left (the * in bar 3) makes it more difficult to understand what is happening, and I do not understand the different pitches compared with your score. ===== global augmentation should double the length of a bar in my understanding (of course I could half the tempo instead, but than it affects all voices at the same time, so I find it interesting using (la2 la3 -) at the same time) Anyway, this all is very easy in any score editor and not a real problem, same with moving the material left or right in time. I really appreciate the software, it has played a role in my work in recent years, but never actually as a complete algorithm... best wishes
  11. You use in the global methods augmentation, therefore you are changing the size of the bars. The global methods are not design for augmentation, with other words you should not use aug in globals. The good news is I can make the globals work the way you expect and preserve the original or the given span. Note: 1) Not correct: (setf seq1 '(s c4 mf stacc e. cs4 mp ten+def e e4 p leg q. fs4 pp def)) (setf seq2 '(e f4 p leg e. g4 def e bb4 mp> leg qs b4 def)) (setf seq3 '(e. eb4 p leg qs d4 def s gs4 mf leg e. a4 def)) should be: (setf seq1 '((s c4 mf stacc e. cs4 mp ten+def e e4 p leg q. fs4 pp def))) (setf seq2 '((e f4 p leg e. g4 def e bb4 mp> leg qs b4 def))) (setf seq3 '((e. eb4 p leg qs d4 def s gs4 mf leg e. a4 def))) 2) Not correct, you don't have any sequence of sequences: #|11|# ((1 1 1) :sequence (1 2 3) :span nil :methods ((ra la2) (ra la2) (ra la2)):tempo 112)) should be: #|11|# ((1 1 1) :span nil :methods ((ra la2) (ra la2) (ra la2)):tempo 112)) I would advise you to take some lessons with Stephane about the counterpoint.
  12. (progn (compile-score '((<name> :start 1 :end 90))) (audition-musicxml-last-score) ) or (display-musicxml (compile-score '((<name> :start 1 :end 90)) :output :musicxml)) You don't need to use compile-score, you could add the :start 1 and :end 90 into the def-score: (def-score name (:key-signature 'chromatic :time-signature ’(4 4) :tempo 60 :start 1 :end 90 :layout (piano-layout 'rhand 'lhand)) (rhand :omn rh :port 0 :channel 1 :sound 'gm :program 'acoustic-grand-piano) (lhand :omn lh))
  13. I found some outcome, which I don't understand: 1) The * in the methods seems to work not correctly with oddmeter bars (see start of Viola bar 5 ff) 2) If I use la2 and la3 in global methods it seems not working correct (see bar bar 11 ff Viola) Wouldn't it perhaps even be an interesting possibility if you could shift certain parts of the voices by rhythmic values in a controlled way, so that phrases could start earlier or later? Or is that already possible? thank you very much best wishes (Progn (init-seed 73549) (setf seq1 '(s c4 mf stacc e. cs4 mp ten+def e e4 p leg q. fs4 pp def)) (setf seq2 '(e f4 p leg e. g4 def e bb4 mp> leg qs b4 def)) (setf seq3 '(e. eb4 p leg qs d4 def s gs4 mf leg e. a4 def)) (setf dictum-a '( #|1|# ((1 1 1) :span nil :methods (- (ra t4) (i t5 )) :tempo 84) #|2|# ((1 2 1) :span 4/8 :methods ((la3 t10 i) (ra t-9) (la2))) #|3|# ((3 * 3) :span 5/8 :methods ((i t5 lis) - (t2 i)) ) #|4|# ((1 - 1) :span nil :methods (r - (ra t-8))))) ;;============= (setf dictum-b '( #|5|# ((- 2 -) :span nil :methods (- t-12 -) :tempo 112) #|6|# ((1 - 1) :span nil :methods (r - (ra t-8))))) ;;=============== (setf dictum-c '( #|7|# ((- 3 -) :span nil :methods (ld22 t-12 ld22) :tempo 63) #|8|# ((1 2 1) :span 5/8 :methods (tie-bar - (t6 rl ri))))) ;;=============== (setf dictum-d '( #|9|# ((2 - 2) :span nil :methods (ra - t2) :tempo 112) #|10|# ((3 3 3) :span nil :methods ? ) #|11|# ((1 1 1) :sequence (1 2 3) :span nil :methods ((ra la2) (ra la2) (ra la2)):tempo 112))) ;;=============== (setf dictum-e '( #|12|# ((1 1 1) :span nil :methods (- - (i t5 )):tempo 96) #|13|# ((1 1 1) :span 4/4 :methods ((ra la2 ) (ra la2 t-12) (ra la2 t-24))))) (setf globals-a '(- - -)) (setf globals-b '(- - -)) (setf globals-c '(- - -)) (setf globals-d '(la3 la2 la3)) (setf globals-e '(- - -)) (counterpoint (list seq1 seq2 seq3) dictum-a :global-methods globals-a :index 'sec-a) (counterpoint (list seq1 seq2 seq3) dictum-b :global-methods globals-b :index 'sec-b) (counterpoint (list seq1 seq2 seq3) dictum-c :global-methods globals-c :index 'sec-c) (counterpoint (list seq1 seq2 seq3) dictum-d :global-methods globals-d :index 'sec-d) (counterpoint (list seq1 seq2 seq3) dictum-e :global-methods globals-e :index 'sec-e) (setf violin (assemble-seq sec-a1 sec-b1 sec-c1 sec-d1 sec-e1)) (setf violindic (dictum '((:if qs :do trem :bar (3..9)) (:do ponte :bar (35..40))) violin)) (setf viola (assemble-seq sec-a2 sec-b2 sec-c2 sec-d2 sec-e2)) (setf violadic (dictum '((:if qs :do trem :bar (3..9)) (:do ponte :bar (35..40))) viola)) (setf violoncello (assemble-seq sec-a3 sec-b3 sec-c3 sec-d3 sec-e3)) (setf violoncellodic (dictum '((:if qs :do trem :bar (3..9)) (:first pizz :bar 4 ) (:do ponte :bar (35..40))) violoncello)) (ps 'VSL_ss :vslv1 (list violindic) :vslvla (list violadic) :vslvlc (list violoncellodic) :tempo (assemble-seq tempo-sec-a tempo-sec-b tempo-sec-c tempo-sec-d tempo-sec-e) ) (init-seed nil) )
  14. Hello, opusmodus cannot recall my user function from userfunction.lisp after upgrading , either by dragging my custom userfunction.lisp in user source >extention or by copying the content in the new opus modus folder on the empty userfunction.lisp file . When i go to window menu > loading user source , it load it with no error message . Any ideas ? Thank you Patrick Mimran
  15. Last week
  16. How can I display a score compiled like this (compile-score '((<def-score-name> :start 1 :end 90))) with display-musicxml? This gives an error: (display-musicxml (compile-score '((<def-score-name> :start 1 :end 90)))) Any idea? Achim
  17. Thank you very much, I should have found that myself best wishes
  18. Is it possible to display a bar number in each bar in scores generated with the ps function? thank you very much best wishes
  19. The given span is the master, therefore this is a bug - well spotted. This only happens with length augmentation. This is fix in 3.0.29233.
  20. I do not understand the outcome, if I use augmentation inside the counterpoint function. See example, in my understanding: bar 3 should be empty and the clarinet should start again in bar 4!? Is it only possible to use augmentation in all voices at the same time, why does the time signature is different from span in bar 2? Did I get something wrong? Best wishes (setf seq1 '(s c4 mf e. cs4 e e4 q. fs4 tie q fs4)) (setf seq2 '(e f4 e. g4 s bb4 e b4)) (setf seq3 '( s d4 qs eb4 s gs4 e. a4)) (counterpoint (list seq1 seq2 seq3) '( #|1|# ((1 - 1) :span nil :methods (- - (i t5))) #|2|# ((1 2 1) :span 4/8 :methods ((la2 t10 i) - la2)) #|3|# ((- - -) :span 3/8 :methods (- - -)) #|4|# ((- 1 -) :span nil :methods (- - -)) ) :global-methods '(- - -) :global-polyphony nil :index 'vox ) (ps 'gm :fl (list vox1) :cl (list vox2) :hn (list vox3))
  21. COUNTERPOINT additional functionality: orchestra (Optional): Lists all instruments involved in the composition. This comprehensive list ensures that the counterpoint function can consider the full ensemble when applying transformations and generating output. instruments (Optional): Identifies a subset of instruments from the orchestra to which the counterpoint operations are specifically applied. This allows for targeted manipulation of particular voices or sections within the ensemble. Orchestra and Instruments The :orchestra and :instruments options are employed within the COUNTERPOINT function for orchestrating ensemble or orchestral compositions. These options ensure precise alignment and synchronisation of all instruments, particularly vital when focusing on specific sections and a selected list of instruments. The key objective is to maintain coherence across the ensemble, ensuring that instruments not actively participating in a given section are appropriately paused, yet still accounted for in the overall section result. The :instruments option explicitly designates the instruments engaged in the COUNTERPOINT operation. The orchestra variable is defined to encompass a comprehensive range of instruments across different families, including woodwind, brass, percussion, keyboard and harp, and strings. (setf orchestra '(pic flt obo cla bsn cbn ; woodwind hrn tpt tbn tba ; brass tmp glk chi ; percussion cel plh prh hrp ; keyboard, harp vn1 vn2 vla vlc ctb ; strings ) ) In the COUNTERPOINT function below, sequences (seq1, seq2, seq3) are processed through specified dictum configurations, with attention to sequence patterns, tempo, and the orchestrated ensemble layout. (counterpoint (list seq1 seq2 seq3) '(((- 1 2 1 2 1) :sequence (1 1 1 1 1 1) :tempo 88) ((4 3 1 2 1 1) :sequence (3 1 1 1 1 1))) :orchestra orchestra :instruments '(vn1 vn2 vla vlc ctb) :time-signature '(4 4) :global-tonality '((d4f4a4 :map octave)) :index ‘s1-) By specifying :orchestra and :instruments, this approach ensures that only the selected string instruments (vn1, vn2, vla, vlc, ctb) are actively engaged in the COUNTERPOINT, while other orchestral sections are paused but included in the overall texture (output). Best wishes, Janusz
  22. Earlier
  23. length-invert produces great results as well: (length-invert '(1/8 1/8 -1/8 1/4 1/4 -1/8)) => (-1/8 -1/8 1/8 -1/4 -1/4 1/8) (length-invert '(1/8 1/8 -1/8 1/4 1/4 -1/8) :swap t) => (1/8 1/8 1/4 -1/8 -1/8 1/4) and works with omn sequence.
  24. Thanks a lot. I found another one as well: quantum
  1. Load more activity
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy