Jump to content

Search the Community

Showing results for tags 'pitch'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Welcome To Opusmodus
    • Announcements
    • Pre Sales Questions
  • Support Forum
    • Support & Troubleshooting
    • OMN Lingo
    • Function Examples
    • Score and Notation
    • Live Coding Instrument
    • Library Setup
    • MIDI Setup
  • Question & Answer
    • Suggestions & Ideas
  • Sharing
    • Made In Opusmodus
    • User Extensions Source Code

Blogs

  • Stephane Boussuge
  • Didier Debril

Categories

  • OMN The Language
  • Tutorial Guide
  • CLM Examples

Categories

  • Getting Started
  • HowTo
  • Live Coding
  • Music Theory and Analysis

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Website URL


Gender


Location


Interests


About Me

Found 4 results

  1. Hi, here's some example of pitch generation. Naturally, Opusmodus have infinite possibilities and it is just few example of possible way of pitch generation. ;;; SOME (FEW) IDEAS FOR PITCH GENERATION ;;; SB. 09/2016 ;; FROM VECTORS (setf vect1 (gen-white-noise 32 :seed 33)) (setf p1 (vector-to-pitch '(a3 a5) vect1)) ;; SMOOTHED VECTOR (setf vect2 (vector-smooth 0.02 vect1)) (setf p2 (vector-to-pitch '(a3 a5) vect2)) ;; without direct repetition (setf p2b (filter-repeat 1 p2)) ; see also gen-accumulate and other vectors (pink-noise, brownian etc..). ;;; ====================================== ;; RANDOM-CHOICES (setf p3 (rnd-sample '(4 3 7 8 4 5) (list (make-scale 'c3 24)) :seed 12)) ;; without repetition (setf p4 (rnd-unique '(4 3 7 8 4 5) (gen-repeat 6 (list (make-scale 'c3 24))) :seed 12)) ;;; ====================================== ;; PITCH FROM INTEGERS (setf int1 (rnd-sample '(8 4 7 3) (list (gen-integer 16)))) (setf p5 (integer-to-pitch int1)) ;; COOL FOR ARPEGIOS (setf int2b (gen-integer-step 0 32 '(1 1 2))) (setf int2 (gen-integer-step 0 32 (rnd-sample 6 '(1 2 3 4 -1 -2 -3 -4)))) (setf p6 (integer-to-pitch int2)) ;;; ====================================== ;; PITCH FROM INTERVALS (setf intv1 (interval-direction-series '(1 2 3) '(1 2 1 (2 1)) :first 'd)) (setf p7 (interval-to-pitch intv1)) (setf intv2 (interval-series '(3 2 1 2 3) '(1 2 3) :seed 34)) (setf p8 (interval-to-pitch intv2)) (setf intv3 (interval-expansion-series 10 '(1 -1 2 -2) '(1 2 3) '(-6 -5 3 4) :max-interval 6)) (setf p9 (interval-to-pitch intv3)) ;; extend the first element of intv3 with a matrix (setf intv4 (interval-row-matrix (1~ intv3))) (setf p10 (interval-to-pitch intv4)) ;; PITCH DIRECTION SERIES EXAMPLE (setf p11 (pitch-direction-series '(2 2 2 2 2) '(c4g4 c4g4 c4g4 c4g4 c4g4 c4g4 c4g4 c4g4 c4g4) :first 'd :ambitus '(-12 24))) (setf p11-each-in-list (mclist p11)) (setf p11-melodized (melodize p11-each-in-list)) (setf p11-chordized (chordize p11-melodized)) ;;; ====================================== ;; EXTRACT CHORDS (SETS) FROM ROW (setf row (rnd-row :type :pitch :transpose 4 :seed 783)) ;; GEN-CHORD (setf p12 (gen-chord 24 3 6 -6 6 row :seed 42)) ;; longer output (setf p13 (gen-chord 24 3 6 -6 6 (gen-trim 64 row) :seed 42)) ;; create sets (setf p14 (melodize (mclist p13))) ;; GEN-CHORD2 (setf p15 (gen-chord2 32 '(3 6 5) row)) (setf p16 (gen-chord2 32 '(3 6 5) row :offset '(2 1 3 2 4))) (setf p17 (gen-chord2 32 '(3 6 5) row :offset '(2 1 3 2 4) :transpose (rnd-number 8 -6 6 :seed 4))) (setf p18 (gen-chord2 32 '(3 6 5) row :offset '(2 1 3 2 4) :transpose (rnd-number 8 -6 6 :seed 4) :rnd-octaves t)) ;; control the output (setf p19 (chord-interval-remove '(1 2) p17)) (setf p20 (chord-interval-replace '(1 2) '(13 14) p17)) ;; voice leading (setf p21 (chord-relative-path '(c2c3g3e4a4d5) p20 :seed 31 :ambitus '(c2 c6))) (setf p22 (chord-closest-path '(c2c3g3e4a4d5) p20 :seed 31 :ambitus '(c2 c6))) ;; GEN-CHORD3 (setf p23 (gen-chord3 (rnd-sample 12 (make-scale 'c3 11) :seed 2) '((4 2 5)(3 5 11)(4 6 10)) :cycle t)) (setf p24 (gen-chord3 (rnd-sample 12 (make-scale 'c3 11) :seed 2) '((4 2 5)(3 5 11)(4 6 10)) :cycle t)) (setf p25 (gen-chord3 (rnd-sample 12 (make-scale 'c3 11) :seed 2) '((4 2 5)(3 5 11)(4 6 10)) :cycle nil)) (setf p26 (gen-chord3 (rnd-sample 12 (make-scale 'c3 11) :seed 2) '((4 2 5)(3 5 11)(4 6 10)) :cycle t :relative t :seed 4)) ;;; ====================================== ;; HARMONIC-PROGRESSION (setf p27 (harmonic-progression (integer-transpose -1 '(1 1 1 3 1 2 4 3 1 1 3 4 5 6 5 3 1 -2 -2 1 1)) row )) ;; HARMONIC-PROGRESSION FROM SCALES (setf p28 (harmonic-progression (integer-transpose -1 '(1 1 1 3 1 2 4 3 1 1 3 4 5 6 5 3 1 -2 -2 1 1)) '(d4 messiaen-mode5) :size '(4 3 5) :step '(2 1 3 2) )) ;; HARMONIC-PROGRESSION FROM SCALES with relative path (setf p28 (harmonic-progression (integer-transpose -1 '(1 1 1 3 1 2 4 3 1 1 3 4 5 6 5 3 1 -2 -2 1 1)) '(d4 messiaen-mode5) :size '(4 3 5) :step '(2 1 3 2) :relative t :seed 33 )) ;; create sets of pitches from p28 (setf p28b (melodize (mclist p28))) ;; Melodic material from random order of each set (setf p28c (rnd-order p28b :seed 4)) Happy Opusmodusing !! SB.
  2. ;;; ------------------------------------------------------------------------------ ;;; 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.
  3. Good morning. I'm interested in score analysis and I've encountered an issue. Is it possibile in Opusmodus, after I've create a score in OMN form (for example : (h c6 mp) (w. f5 pp) (d a4 mp) ) sort these sublist in PITCH ascending order linking the corresponding value of LENGTH? example: convert this: (h c6 mp) (w. f5 pp) (d a4 mp) in this: (d a4 mp) (w. f5 pp) (h c6 mp) where every sublist remains the same but the order is changed on a pitch base (in this case ascending). I've tried SORT-ASC and similar, but probably there's something to try and I'm new to the program. Thank you a lot! Pietro
  4. Hi, In Symbolic Composer (SCOM), there is a mechanism to keep the tonality (scale) and symbols separately and combine them to form actual pitches. Is something like that possible in Opusmodus? Regards, Rangarajan
×
×
  • Create New...