Jump to content

opmo

Administrators
  • Posts

    2,903
  • Joined

  • Last visited

Everything posted by opmo

  1. Opusmodus 1.2.21003 (harmonic-progression '(0 3 4 4) '(c major)) => (c4e4g4 f4a4c5 g4b4d5 g4b4d5) (harmonic-progression '(1 4 5 5) '(c major) :base 1) => (c4e4g4 f4a4c5 g4b4d5 g4b4d5)
  2. Please check the code again it produces an error.
  3. Minor bug fixes to MusicXML display.
  4. New: ambitus-field range sequence &key section exclude omn [Function] Arguments and Values: range an integer (low high), a pitch symbol (low high) or instrument-name. sequence a list or lists of pitches or omn sequence. section an integer or list of integers. Selected list or lists to process. The default is NIL. exclude an integer or list of integers. Excluded list or lists from process. The default is NIL. omn NIL or T. If true force OMN style output. The default is NIL. Description: The AMBITUS-FIELD function can be used to compress or expand the field of a given series of pitches to a specific range (ambitus). (ambitus-field '(0 24) '(c4 d4 e4 f4 g4 a4 b4)) => (c4 e4 a4 b4 eb5 gs5 c6) (ambitus-field 'violin '(c4 d4 e4 f4 g4 a4 b4)) => (g3 e4 c5 f5 d6 bb6 g7) Examples: (setf omn '((h e4f5 p c5a4) (h b3d3 gs4eb2fs3) (h bb2g5cs5 gs4d4eb2) (w bb2 mp) (h g3f4cs5 p c5) (h fs5a5b3 e4b3) (h bb2) (w e2eb4) (h c5cs6 a5) (h f4g3 gs4d3) (h fs5 bb2fs5g3) (h d3e5eb4 gs4) (h a2c6 f2) (h b0 cs6c5) (h gs4d3))) (ambitus-field '(-6 12) omn) => ((h fs3c5 p f4cs4) (h fs4cs4 p c5fs3eb4) (h a3c5a4 p g4e4fs3) (w bb2 mp) (h fs3e4c5 p b4) (h bb4c5fs3 p bb3fs3) (h bb2 p) (w fs3c5 p) (h fs3c5 p fs4) (h a4b3 p c5fs3) (h c5 p fs3c5b3) (h fs3c5eb4 p fs4) (h gs3c5 p fs3) (h fs3 p c5gs4) (h c5fs3 p)) (ambitus-field '(-6 0) omn) => ((h fs3c4 p bb3gs3) (h bb3gs3 p c4fs3a3) (h g3c4b3 p bb3a3fs3) (w bb2 mp) (h fs3a3c4 p c4) (h b3c4fs3 p g3fs3) (h bb2 p) (w fs3c4 p) (h fs3c4 p bb3) (h b3gs3 p c4fs3) (h c4 p fs3c4gs3) (h fs3c4a3 p bb3) (h g3c4 p fs3) (h fs3 p c4b3) (h c4fs3 p)) (ambitus-field '(-24 36) omn) => ((h c2c7 p cs5b3) (h f5b3 p c7c2g4) (h bb2c7eb6 p gs5bb4c2) (w bb2 mp) (h c2a4c7 p a6) (h e6c7c2 p d3c2) (h bb2 p) (w c2c7 p) (h c2c7 p fs5) (h d6f3 p c7c2) (h c7 p c2c7f3) (h c2c7fs4 p fs5) (h fs2c7 p c2) (h c2 p c7b5) (h c7c2 p)) With field series: (ambitus-field '((-5 16) (-4 17) (-3 18) (-1 19) (1 22) (6 26) (12 32) (12 32) (12 32) (6 26) (1 22) (-1 19)) omn) => ((h g3e5 p gs4eb4) (h bb4e4 p f5gs3g4) (h cs4fs5eb5 p c5a4a3) (w bb2 mp) (h cs4cs5bb5 p a5) (h b5d6fs4 p b4fs4) (h bb2 p) (w c5gs6 p) (h c5gs6 p d6) (h b5c5 p d6fs4) (h bb5 p cs4bb5g4) (h b3g5a4 p cs5) (h a3e5 p g3) (h gs3 p f5cs5) (h fs5a3 p)) _____________________________________________________________________ AMBITUS is working with range series now: (setf range (gen-ambitus-series '(-30 42) (vector-smooth 0.2 (gen-white-noise 15 :seed 23)) (vector-smooth 0.2 (gen-white-noise 15 :seed 24)))) => ((8 27) (8 27) (-3 13) (-11 5) (17 42) (14 24) (25 42) (-7 24) (-30 0) (-30 -15) (-11 -5) (16 26) (21 28) (3 39) (-16 29)) (ambitus range omn) AMBITUS-SERIES function is not part of the system anymore. Use AMBITUS function instead. _____________________________________________________________________ integer-normalize integers min max low high [Function] Arguments and Values: integers a list or lists of integers. min a number max a number low a number high a number Description: The INTEGER-NORMALIZE function normalizes a list of integers into min-max range to the low-high range. (integer-normalize '(1 3 5 7) 0 24 0 36) => (2 4 8 10) Example: (integer-normalize '(1 2 5 3 4 7 3) 0 24 0 46) => (2 4 10 6 8 13 6) (integer-normalize '(3 (4 7 3)) 0 24 12 46) => (16 (18 22 16)) (integer-normalize '(3 (4 7 3)) 0 45 12 46) => (14 (15 17 14)) (integer-to-pitch (integer-normalize '((1 2 5 3) (4 7 3)) 0 24 0 46)) => ((d4 e4 bb4 fs4) (gs4 cs5 fs4)) _____________________________________________________________________ More optimisation and minor bug fixes. In the Score Examples/Piano documents you will find a short score 'Fields.opmo' which demonstrate the new AMBITUS-FIELD function.
  5. New: rnd-number (n low high &key prob norep seed) [Function] Arguments and Values: n an integer. Amount of numbers to generate. low an integer. Lower limit. high an integer. Upper limit. prob a floating point value between 0.1 and 0.9. The default is 0.5. norep T (no consecutive repeat) or NIL. The default is NIL. seed an integer. Ensures the same result each time the code is evaluated. The default is NIL. Description: This function generates a series of numbers in a given range. Such numbers can be used to create pitch or interval sequences. (rnd-number 10 -5 5 :seed 89) => (-3 5 2 -2 -1 2 5 -4 4 3) Example with probability value 0.8 - higher numbers are more likely: (rnd-number 10 -5 5 :prob 0.8 :seed 89) => (2 4 2 3 2 -4 3 -5 1 0) Such numbers can be used to create pitch or interval sequences. (integer-to-pitch (rnd-number 10 -5 5 :seed 89)) => (a3 f4 d4 bb3 b3 d4 f4 gs3 e4 eb4) Examples: Get 10 random integers with values between -5 and 5: (rnd-number 10 -5 5) => (4 -5 -1 0 -1 1 1 5 0 -3) Get 10 random integers with values between -5 and 5 without consecutive repeat: (rnd-number 10 -5 5 :norep t) => (4 1 0 -1 0 1 4 -2 2 -2) Get 10 random integers based on a given :seed value: (rnd-number 10 -5 5 :seed 192) => (0 0 -5 -2 -3 -3 -5 1 -4 -5) Get 10 random integers based on a given :seed value without consecutive repeat: (rnd-number 10 -5 5 :seed 192 :norep t) => (0 -5 -2 -3 -5 1 -4 -5 1 -1) --------------------------------------------------------- New :norep option in RND-SAMPLE: (rnd-sample '(1 2 2 3 2 1) '((c4 d4) (e4 g4) (a4)) :norep t :seed 34) => ((d4) (e4 g4) (a4 a4) (c4 d4 c4) (g4 e4) (a4)) (rnd-sample 5 '((q c4 p d4 ff) (s a4 stacc) (s e4 app q c5 d5 pp)) :norep t) => (((app s e4 ff) q c5 d5 pp) (s a4 ff stacc) (q c4 p d4 ff) (s a4 ff stacc) ((app s e4 ff) q c5 d5 pp)) and minor bug fixes.
  6. This update fixes minor bug found in LENGTH-LSYSTEM and PITCH-LSYSTEM functions.
  7. Please fill the output: input: (c4 g4 eb4 bb4 gs4 cs4 a4 d4 fs4 f4 e4 b4) tonality set to D dorian or aeolian: Outcome should be: ? tonality set to D locrian: Outcome should be: ? tonality set to D augmented/whole tone: Outcome should be: ?
  8. The *last-score* to Dorico: (defun last-score-to-dorico () (compile-score *last-score* :output :musicxml :file "temp-last-score") (musicxml-to-editor "temp-last-score" :application "dorico"))
  9. The seed works in OM only, there is no seed source in the CCL.
  10. Please send me few more examples of the input and the output you are looking for with given tonality map. Example: (tonality-map '(minor :root d4) '(c4 ds4 e4 fs4 g4 b4 c5)) You could tweak the tonality with :add, :remove and :closest options.
  11. new addition to text articulations: rub flick chit-pizz snap-pizz
  12. Optimisation to AMBITUS family functions and few new text articulations. rub flick chit-pizz snap-pizz
  13. Without a score or an example I can't help. If you can see the articulation in OM music-xml display then the Sibelius is the problem.
  14. Fix to SPLIT-LENGTHS.
  15. or direct conversion of the score to omn: (pprint (score-to-omn 'flute2))
  16. section and exclude works with lists not on a list. Arguments and Values: section an integer or a list of integers. Selected list or lists to process. The default is NIL. exclude an integer or a list of integers. Excluded list or lists from process. The default is NIL.
  17. We are talking about the future implementation.
  18. Dear Torsten, We have spent some time talking about the microtonal notation and came up with this solution which we think fits the notation and OMN well.
  19. TONALITY-MAP optimisation (much faster now) and change to tonality-form keywords: Tonality Form: tonality tonality name, pitch list, chord, integer list or OMN list. root pitch symbol or an integer. sort NIL or T. The default is T. add an integer (additional intervals). remove a list of integers (remove intervals from the tonality). closest NIL, down or up. The default is NIL (random). rotate and integer (chordal inversion). variant a variant symbol: o, r, i, ri, 4, r4, 5, r5 or ? (at random). ambitus instrument-name or list (low high). map fixed, shift or NIL. The default is NIL. seed NIL or an integer. The default is NIL. The same applies to the TONALITY-SERIES function.
  20. Fix to TONALITY-MAP if scale are lists with :shift option.
  21. and/or (matrix-transpose '((1 3 5) (2 4 6))) => ((1 2) (3 4) (5 6)) (setf mat1 '(c4 db4 ab4 f4 g4 bb4 a4 eb4 b4 e4 d4 gb4)) (setf mat2 '(db4 ab4 f4 g4 bb4 a4 eb4 b4 e4 d4 gb4 c4)) (gen-combine mat1 mat2) => ((c4 db4) (db4 ab4) (ab4 f4) (f4 g4) (g4 bb4) (bb4 a4) (a4 eb4) (eb4 b4) (b4 e4) (e4 d4) (d4 gb4) (gb4 c4)) (gen-combine '(a a a a) '(b b b) '(c c) :rest t) => ((a b c) (a b c) (a b) (a)) (gen-combine '(a a a a) '(b b b) '(c c) :revolving t) => ((a b c) (a b c) (a b c) (a b c))
  22. MOTIF-MAP function name changed to PATTERN-MAP
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy