Jump to content

opmo

Administrators
  • Posts

    2,869
  • Joined

  • Last visited

Everything posted by opmo

  1. No error here. Just use eval. You don't use cmd-1 with PS function. It is better for all scores to use def-score instance.
  2. New function in 3.0.28902 rhythm-series num number-of-notes span &key length prob seed This function returns a list of successive rhythmic series derived from a span (overall duration), length values, and a number of length-notes per bar. The length- notes within each bar are positioned at random. Simple examples: (rhythm-series 4 3 3/8) => ((-1/16 1/8 -1/16 1/16 1/16) (1/16 3/16 1/8) (1/8 3/16 1/16) (3/16 1/16 1/8)) (rhythm-series 4 5 3/8) => ((1/16 1/16 1/16 1/8 1/16) (-1/16 1/16 1/16 1/16 1/16 1/16) (1/16 1/16 1/16 -1/16 1/16 1/16) (1/16 1/16 1/16 1/16 -1/16 1/16)) (rhythm-series 4 3 1/4) => ((1/16 1/8 1/16) (1/16 1/16 1/8) (1/16 1/8 1/16) (1/16 1/8 1/16)) Examples with given length values: (rhythm-series 4 3 1 :length '(q. e. s)) => ((-1/4 1/16 1/16 1/16 -9/16) (1/8 3/16 -5/16 3/8) (1/16 3/16 -3/8 3/8) (3/16 -1/16 3/8 3/8)) (rhythm-series 6 5 3/8 :length '(q. e. e s 3q) :prob 0.1) => ((1/16 1/16 1/16 1/16 1/8) (1/8 1/16 1/16 1/16 1/16) (1/16 1/8 1/16 1/16 1/16) (1/16 1/8 1/16 1/16 1/16) (1/16 1/16 1/16 1/16 1/16 -1/16) (1/16 1/16 1/16 1/8 1/16)) (rhythm-series 6 5 3/8 :length '(q. e. e s 3q) :prob 0.9) => ((1/12 1/12 1/12 1/12 1/24) (1/24 1/12 1/12 1/12 1/12) (1/16 1/16 1/16 1/16 1/16 -1/16) (1/16 1/16 -1/16 1/16 1/16 1/16) (1/16 1/16 1/16 -1/16 1/16 1/16) (1/16 1/16 1/16 1/16 -1/16 1/16)) Example with list of unique values for each generated series: (rhythm-series '(1 4 3 2) '(7 5 7 7) '(3/8 3/8 1/2 3/4) :prob '(.4 .6 .7 .1) :length '(q. e. e s 5q 3q) :seed 34) => ((1/20 1/20 1/20 1/20 1/20 1/20 1/40 -1/20) (1/24 1/12 1/12 1/12 1/12) (1/20 -1/20 1/20 -1/20 1/20 1/20 1/40 -1/20) (1/16 1/16 1/16 1/16 1/8) (1/16 1/16 1/8 1/16 1/16) (1/20 1/20 1/20 1/20 1/20 -1/20 1/20 -1/20 1/20 -1/20) (-1/20 -1/20 1/20 1/20 -1/20 1/20 1/20 1/20 1/20 1/20) (-1/20 1/20 -1/20 1/20 1/20 1/20 1/20 1/20 -1/20 1/20) (-1/16 1/16 1/16 1/16 -1/8 1/16 -1/16 1/16 1/16 1/16 -1/16) (1/12 -1/12 -1/12 1/12 1/12 1/12 1/12 1/12 1/12)) OMN example: (make-omn :length (rhythm-series '(1 4 3 2) '(7 5 7 7) 1/2 :prob '(.4 .6 .7 .1) :length '(q. e. e s) :seed 34) :pitch (gen-chord3 '((cs4 g4 a5) (c4 gs3 a4) (b5 f5 gs5) (b4 fs4 bb5) (cs5 c6 gs4) (e5 g3 a5)) '((6 8 11) (3 5 13) (2 7 11)))) Best wishes, Janusz
  3. There is no documentation for :merge-ties as it simply refers to the type of tie utilized and does not have any impact on notation. (setf omn '(h c7 p eb6 mp p - c7 q e6 - h_e g6 e mf bb5 mp -h.. q bb6 p -h. q. d6 e c4 -h.. q bb3 mf e g6 mp h_e e6 -h e g5 h a6 -e = h bb4 e6 p q bb6 mp e6 e g3 g6 p q. g3 e bb3 bb6 mp q g6 pp e c7 mp eb4 p)) (omn-to-time-signature omn '(4 4) :merge-ties t) (omn-to-time-signature omn '(4 4) :merge-ties nil)
  4. you can't change the time-signature with dictum.
  5. There is no need to use gen-loop function here: (setf my-lengths (rnd-sample 100 '((q s) (q q))))
  6. One possibility: (setf times 100) (setf my-root -24) (setf my-intervals '(0 1 4 7)) (setf my-pitches (pitch-transpose my-root (integer-to-pitch my-intervals))) (setf my-lengths (gen-loop times (rnd-pick '((q s) (q q))))) (setf my-sequence (make-omn :length my-lengths :pitch my-pitches)) (setf gts (get-time-signature my-sequence)) (def-score my-score (:title "my-score" :key-signature 'chromatic :time-signature gts :tempo 161) (instrument-1 :omn my-sequence :port 0 :channel 1 :volume 100 ) (instrument-2 :omn my-sequence :port 0 :channel 2 :volume 60) ) With rnd-sample: (setf my-lengths (gen-loop times (first (rnd-sample 1 '((q s) (q q))))))
  7. Your example is not very helpful. I can't see the my-pitches values, and the times value - I need to see the my-sequence output to determine the :span :pitches use. I think the :span :pitches is the problem. What about: (setf my-sequence (make-omn :length (gen-loop times (rnd-sample 1 '((q s) (q q)))) :pitch (gen-repeat times my-pitches))) (def-score my-score (:title "my-score" :key-signature 'chromatic :time-signature (get-time-signature my-sequence) :tempo 161)
  8. I need to check if we can use Emacs with the new Opusmodus (LispWorks).
  9. You can use both, length symbols and ratios. Tuplets: 5q = 1/20 3q = 1/12 3h = 1/6 etc...
  10. The hanging notes should be fixed in 3.0.28886.
  11. How did you have create the MIDI file. I have tested many midi files and no other produces this bug on PC.
  12. Your midi file works fine on Mac. Looks like a Windows bug. Will have a look. Same problem with notation viewer playback or Live Coding instrument?
  13. I would think about the chords before applying the make-omn function. (setf chords (chordize (gen-divide 3 (flatten omn3)))) (setf six+deux (omn-to-measure (make-omn :pitch chords :length ry1 :span :pitch) '(3/8)))
  14. This is not about 'Opposite of chordize'. Please create a new post. Please check the chordize document. The chordize input are pitches and not omn list form.
  15. Example with cents attributes: '(e c4 1c - 12c - 23c - 34c - 45c - 56c - 67c - 78c)
  16. Julio, could you send me the score file or midi file that produces the hanging notes.
  17. Out Now. https://opusmodus.com/forums/downloads/
  18. It works the same way as any other Windows app.
  19. OM v.3.0 Windows ready for download: https://opusmodus.com/forums/downloads LoopMIDI is a third-party application that allows you to create virtual MIDI ports on your Windows system: loopMIDI | Tobias Erichsen WWW.TOBIAS-ERICHSEN.DE
  20. You can set the instrument to NIL: (ps 'gm :sq (list vn1 vn2 nil nil) :tempo 68 :output :audition) only the vn1 and vn2 instrument will be audition.
  21. ps means Preview Score - predefined layouts and instruments for quick preview. If you are look for flexibility you need to use def-score.
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy