Jump to content


  • Posts

  • Joined

  • Last visited

Contact Methods

Profile Information

  • Gender
  • Location
    United States

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. (setf section-1a (counterpoint patterns dictum-1a )) (setf section-1b (counterpoint patterns dictum-1b )) (setf section-1c (counterpoint patterns dictum-1c )) (assemble-voices 'voice section-1a section-1b section-1c)
  2. I'm trying to combine a series of counterpoint dictums into a single dictum list. I tried several things, but can't seem to get it work. Is there a function similar to assemble-seq that could be applied here? Thank you! (setf dictum-1a '(((1 2 3) :methods ( (r ft) (t-12 ft) (dl1 t-12 pr1 ten)))) ) (setf dictum-1b '(((1 2 3) :methods ( (r ft) (t-12 ft) (dl1 t-12 pr2 ten)))) ) (setf dictum-1b '(((1 2 3) :methods ( (r ft) (t-12 ft) (dl1 t-12 pr3 ten)))) ) (setf section-1 (counterpoint patterns dictum-1a ... dictum-1b ... etc? )) (assemble-voices 'voice section-1)
  3. Thanks so much! That's it - so elegant. I just couldn't remember gen-divide.
  4. The following example randomly segments a list of given pitches into progressively increasing sublist of elements. I can't seem to recall a function one could use instead of rnd-repeat that would do the same but not randomly, preserving the original order or pitches => (c4) (d4 e4) (f4 g4 a4), etc. Thank you! (setf pitches '(c4 d4 e4 f4 g4 a4 b4 c5)) (setf seq (make-omn :pitch (rnd-repeat (gen-integer 1 4) pitches) :length '(1/16) :velocity '(f) :articulation '(stacc) :span :pitch))
  5. Maybe I missed it, but is there a function that removes ties, opposite to filter-tie? Thanks!
  6. The compilation time seems better now. However, I'm still having some difficulty configuring the counterpoint function for small project I'm working on. (I'm posting my question here since it might be relevant to my earlier post.) I include a brief example below that continues to produce an error message at ;;Assemble Voices section. I wonder if someone could point me in the right direction. Thank you! (progn ;; Global SEED (init-seed 15342) (setf melody1a (length-augmentation 2'((-h. q g4) (q. g4 e e4 q e4 -q) (-h. q g4) (q. g4 e d4 q d4 -q) (-h. q e4) (q f4 g4 a4 b4) (h. g4 -q)))) (setf melody1b (length-augmentation 3 '((-h. q g4) (q. g4 e e4 q e4 -q) (-h. q g4) (q. g4 e d4 q d4 -q)))) ;; Patterns (setf scale '(c4 eb4 f4 g4 ab4)) (setf p1 (tonality-map '(scale :map octave :closest up) melody1a) p2 (tonality-map '(scale :map octave :closest up) melody1b) ) (setf patterns (list p1 p1 p2)) (setf dictum-a '((1 2 3) :methods ((dl1) (dl1 t-12 pr1) (dl1 t-24))) ) ;; Sections (setf sec-a (counterpoint patterns dictum-a )) ;; Assemble Voices (assemble-voices 'voice sec-a) ;; Preview Score (ps 'gm :hn (list (1~ voice1)) :tbn (list (2~ voice2)) :tbn (list (3~ voice3)) :time-signature '(4 4) ) ;; Global SEED back to NIL (init-seed nil) )
  7. Hello! The example below has been taking several minutes to compile, eventually crashing Opusmodus. Would someone be willing to look at the code and let me know what's causing this? Thank you so much! (setf pattern1 (length-augmentation 2'((-h. q g4) (q. g4 e e4 q e4 -q) (-h. q g4) (q. g4 e d4 q d4 -q) (-h. q e4) (q f4 g4 a4 b4) (h. g4 -q)))) (setf pattern1a (length-augmentation 3 '((-h. q g4) (q. g4 e e4 q e4 -q) (-h. q g4) (q. g4 e d4 q d4 -q)))) (setf scale '(c4 eb4 f4 g4 ab4)) (setf pattern1-scale (tonality-map '(scale :map octave :closest up) pattern1)) (setf pattern1a-scale (tonality-map '(scale :map octave :closest up) pattern1a)) (setf voicesA (counterpoint (list pattern1-scale pattern1-scale pattern1a-scale) '(((1 2 3) :methods ( (dl1) (r dl1 t-12 pr1) (d1 t-24 pr1) ) )))) (ps 'gm :hn (list (1~ voicesA)) :tbn (list (2~ voicesA)) :tbn (list (3~ voicesA)) :time-signature '(4 4) )
  8. Thank you for your replies! The issue is happening on the Intel MacBook Pro that I just updated to Monterey in order to migrate it to the new M1 laptop (long story short). I tried what Stéphane suggested but with no avail. Do you think if reinstalling Opusmodus would help? SemitoneGene - any luck on your end?
  9. Hello! I attempted to run Opusmodus 2.2 on Monterey OS. Unfortunately, while I can open the application, I cannot open the existing workspaces or create new ones. Has anyone experienced similar issues as of late? Thank you! Zvony
  10. Thanks for clarifying. It makes sense that 1.0 is the highest density; that was what my initial understanding was. Going back to my pitch density question from earlier, where we attested that "the bigger the interval, the lower the density," should the density be lower for a major sixth and higher for a major second, the former being a larger interval? The example below and others I tested, produce higher density for larger intervals. (density-analysis '((c4 a4) (c4 d4))) => (0.75 0.16666667) I'm sorry if I'm not looking at this the wrong way! The length density is clear now.
  11. My apologies for continuing questions... Given that longer durations result in lower density, and if I understand it right, the density value of 1.0 indicates the lowest density, why are the longer durations resulting in higher density estimation: (density-analysis '((h q) (e s))) => (0.17 0.67) Thank you for your patience!
  12. Thank you! And with length density, is it correct to say that the longer the duration the lower the density? (density-analysis '((h q q) (e s))) => (0.19 0.67)
  13. Suppose a density is defined by measuring the amount of information. Why does the first list having three pitches result in lower density than the second list comprising two pitches? (density-analysis '((c4 d4 g4) (d4 a4))) => (0.2916667 0.5833334) Thank you!
  • Create New...

Important Information

Terms of Use Privacy Policy