Search the Community
Showing results for tags 'fixed'.
-
I experienced hanging notes with the midi player when clicking in a MIDI file to listen. Could not stop the notes, even with all notes off command.
-
Hi, is anyone having the same problem as me when opening version 3? the file is locked, I have to close and open again.
-
Dear All, I was trying some old codes and this started to bug... The length-map :repeat keyword no longer works... what´s happening ? I have a lot of files using this... (setf v1mat-a (make-omn :length rv1 :pitch pit-chmd1 ;repitch1 :span :length :velocity (length-map len-map2 rv1 :otherwise '(mf) :repeat t ) :articulation (length-map len-map1 rv1 :otherwise '(ord) :repeat t ))) Error: Unexpected keyword :repeat which is not one of (:otherwise :rnd :group :section :exclude :seed). 1 (continue) Ignore the unknown keyword :repeat. 2 (abort) Return to top loop level 0.
-
with these functions you could write your CENTS for tuning directly into OMN-attributes, and extract it afterwards 1. generate by add-cents-tuning-to-text-atrributes the cent values into text-attributes (only one time), you could decide if it will be shown in the score "as CENTS or as FLOAT" 2. now you could write your CENTS for tuning into OMN-attributes like 50ct, -34ct ...also in combination with other text-attributes legno+50ct, pizz+-65ct, -45ct+batt 3. you could EXTRACT afterwards your LIST for TUNING directly from OMN by get-tuning-from-omn*.if an EVENT has no cent-attribute it will be unchangend (= 0 cents) ;;; ------------------------------------------------------------------------------------------------------------------- ;;; ------------------------------------------------------------------------------------------------------------------- ;;; this function adds CENTS or FLOATS to text-attributes, in this way you can notate ;;; - have a look how it's written in the score -> all combinations of attributes possible ;;; ------------------------------------------------------------------------------------------------------------------- ;;; ------------------------------------------------------------------------------------------------------------------- (defun add-cents-tuning-to-text-atrributes (&key (centlist nil) (type nil)) (loop for i in (loop for x in (if (null centlist) (append (loop for i from 0 upto 99 collect i) (loop for i from 1 upto 99 collect (neg! i))) centlist) collect (compress (list x 'ct))) append (add-text-attributes (list i (write-to-string (if (equal type :float) (float (/ (append (compress (if (equal (car (explode i)) '-) (if (= (length (explode i)) 5) (filter-first 3 (explode i)) (filter-first 2 (explode i))) (if (= (length (explode i)) 4) (filter-first 2 (explode i)) (filter-first 1 (explode i))) ))) 100)) i)))))) ;;; EXAMPLES (add-cents-tuning-to-text-atrributes :type :float) ;; have a look to notation: cmd3 (-q -q e c4 fff q c4 mf 50ct e c4 mf -40ct e c5 ff) (add-cents-tuning-to-text-atrributes :type :cents) ;; cents are written ;; have a look to notation: cmd3 (-q -q e c4 fff q c4 mf 50ct e c4 mf -40ct e c5 ff) ;;; ------------------------------------------------------------------------------------------------------------------- ;;; ------------------------------------------------------------------------------------------------------------------- ;;; this function get out all notated microtones for TUNING ;;; if there is nothing written it will be 0 cents (0) ;;; you can combine all kinds of attributes ;;; ------------------------------------------------------------------------------------------------------------------- ;;; ------------------------------------------------------------------------------------------------------------------- (defun memberp (n liste) (not (equal 'nil (member n liste)))) (defun find-duplicates (lst) (cond ((null lst) '()) ((member (car lst) (cdr lst)) (cons (car lst) (find-duplicates (cdr lst)))) (t (find-duplicates (cdr lst))))) (defun get-tuning-from-omn* (omnlist centlist) (loop for i in (single-events (length-rest-remove omnlist)) with n = 0 when (not (null (find-duplicates (append (disjoin-attributes (car (last i))) centlist)))) do (setf n (float (/ (append (compress (remove-if-not #'numberp (explode (car (find-duplicates (append (disjoin-attributes (car (last i))) centlist))))))) 100))) and collect (if (equal (car (explode (car (find-duplicates (append (disjoin-attributes (car (last i))) centlist))))) '-) (* -1 n) n) else collect 0)) ;;; EXAMPLES (setf centlist (add-cents-tuning-to-text-atrributes :type :float)) ;;; evaluate this and you will get the tuning-list with all combinations of attributes (get-tuning-from-omn* '(-q -q e c4 fff q c4 mf legno+50ct+num1 e c4 mf -50ct+legno+batt e c5 ff pizz+-34ct) centlist) => (0 0.5 0.5 -0.34) (get-tuning-from-omn* '(-q -q e c4 fff -34ct+pizz q c4 mf legno+50ct e c4 mf -50ct+legno+batt e c5 ff pizz+-34ct) centlist) => (-0.34 0.5 -0.5 -0.34) (get-tuning-from-omn* '(-q -q e c4 fff -34ct+pizz+num11 q c4 mf legno+50ct e c4 mf -50ct+legno+batt e c5 ff pizz+-34ct) centlist) => (-0.34 0.5 -0.5 -0.34) ;;; cmd3 for LAYOUT/SCORE (-q -q e c4 fff -34ct+pizz+num11 q c4 mf legno+50ct e c4 mf -50ct+legno+batt e c5 ff pizz+-34ct) (-q -q e c4 fff q c4 mf legno+50ct+num1 e c4 mf -50ct+legno+batt+num2 e c5 ff pizz+legno+-34ct)
- 23 replies
-
Dear All, I don´t know what happens in Mac, but in Windows, sometimes the code color highligth is changing. I have to press enter to get the code colors again... Maybe a bug ?
-
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) )
-
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))
-
Dear friends, How can I get my tuplets as the second way (all like the bar 2) ? The code is the same (3h), but yields different results... Thanks ! Julio ((3h c4 e4 g4 h c4e4g4b4 ) (-q q c5 3h a4 g4 e4))
-
what is the new name of the function "rnd-sample-seq" thanx for a quick help! andré
-
Hello, I am trying to get a rhythm out of the following function: (quantize (length-adjust 8/4 (vector-to-length '1/24 4 1 v1b)) '(1 2 3 4 6)) (v1b is a predefined half-sine vector) Despite using quantization I keep getting results that include unplayable tuplets, such as single tuplet notes followed by e.g. an eigth note: How can I prevent this from happening and get a rationally quantized rhythm?
-
Hello, it seems that in 2.4.2.5. Rhythm 5 example there is an issue at this level, i cannot play the example i gat this error message : 6 (abort) Return to top loop level 0. Type for backtrace or :c <option number> to proceed. Type :bug-form "<subject>" for a bug report template or :? for other options. (setf bass-drum (omn-dictum '(:all b1) rhythm1)) (setf low-wood-block (omn-dictum '(:all f5) rhythm2)) (setf high-tom (omn-dictum '(:all d3) rhythm3)) (setf low-tom (omn-dictum '(:all a2) rhythm4)) (setf high-bongo (omn-dictum '(:all c4) rhythm5)) (setf low-bongo (omn-dictum '(:all cs4) rhythm6)) (setf mute-hi-conga (omn-dictum '(:all d4) rhythm7)) (setf low-conga (omn-dictum '(:all e4) rhythm8)) A_Rhtythm_5.opmo
-
fixed Sieve-tree and sieve-tree-series don't work
HenryT posted a topic in Support & Troubleshooting
Hi, evaluating sieve-tree-series or sieve-tree gives error "undefined function get-sieve-tree-series (or get-sieve-tree) called". Opusmodus is the newest version 2.2.26595. Henry -
Hi, I'am examing find-bar and I don't get the following: ;from the docs: (setf mat '((c4 db4 ab4 f4 g4 bb4) (a4 eb4 b4 e4 d4 gb4) (db4 ab4 f4 g4 bb4 a4) (eb4 b4 e4 d4 gb4 c4))) (find-bar 1 mat) => Error: The value (1) is not of the expected type number. > While executing: ccl::+-2-into, in process Listener-1(7). > Type cmd-. to abort, cmd-\ for a list of available restarts. > Type :? for other options. ;this works fine: (find-bar '(1) mat) =>((c4 db4 ab4 f4 g4 bb4)) ?? best ole
-
Hi, The doc states: ;Note the handling of further nested sublists: (find-everyother 2 '(((1 2) (3 4) (5 6) (7 8)) ((1 2) (3 4) (5 6) (7 8) (9 10) (11)))) => (((1 2) (5 6)) ((1 2) (5 6) (9 10))) when I evaluate it I get: (find-everyother 2 '(((1 2) (3 4) (5 6) (7 8)) ((1 2) (3 4) (5 6) (7 8) (9 10) (11)))) =>((1 2 5 6) (1 2 5 6 9 10)) What am I missing or how can I achive the upper example? Thanks! ole
-
Hi, Is there perhaps a way to adjust the overall duration of a nested (barred) OMN sequence? In particular, is there a function to cut notes etc. at the beginning/end of a sequence, so that the result has a specified overall duration? The first example just demonstrates what I would like to have. (setf phrase '((1/2 c4 1/4 d4) (1/4 e4 1/2 c4))) ;; Edit phrase such that the result is exactly 5/4 long by preserving the nesting structure (function-I-am-looking-for 5/4 phrase) ; => ((h c4 q d4) (q e4 c4)) ; cut material at end ; => ((q c4 q d4) (q e4 h c4)) ; cut material at beginning There already exist at least two functions that are close, but not quite what I need. ;; Does not keep nesting structure (length-span 5/4 phrase) ; => (h c4 q d4 e4 c4) ;; Adjusts individual sublists (length-adjust 5/4 phrase) ; => ((h c4 q d4 -h) (q e4 h c4 -)) Is there perhaps also a function that does what my example function-I-am-looking-for above does? Thanks a lot! Best, Torsten
-
I am finding that the harmonic-progression function is not always predictable when using the steps option. For example: (append '(w) (harmonic-progression '(0 1 2 3 4 5 6 7) '(c3 db3 eb3 e3 fs3 g3 a3 bb3) :size '4 :step '((3 1 3)))) > (w c3e3a3bb3 cs3fs3bb3c4 eb3g3c4cs4 e3a3cs4eb4 fs3bb3eb4e4 g3c4e4fs4 a3cs4fs4g4 bb3eb4g4a4) If you look at these chords, the steps are actually ordered ( 3 3 1) and not (3 1 3). Am I missing something? Thanks!
-
Happy new year, all! I upgraded to 1.3 this morning, following the instructions and removing the folder before the upgrade. All went well with the installation, but after about 5 minutes of running it would crash. An additional problem: I cannot find a crash log where MacOS usually keeps it. I initially thought it was a problem with CLM, as I had been investigating that, but then I restarted the computer and opened Opusmodus and it crashed again while working on a new file. Anyone have any ideas about what the potential problem could be, or at least where the crash log would be? Normally I find them in ~/logs/DiagnosticReports, but I don't see one there. Thank you all for any advice. Regards, Tim
-
for some score-display it would be very very useful if when EVAL etc... (or use any of the OPMO-functions) OMN-notation would be displayed and not changing to RATIOS... have a look to this example: it's written like that, because then the display is very smart. when i use "rnd-pick" or other functions it changes from OMN to RATIO... very ugly then. is there an internal solution for that or another trick? thanx for help a. ;; NICE DISPLAY BY CMD3 (setf durations1 (list '(t s t) '(3q 3e_s. t) '(5h 5h 5q_7q 7q 7q 7q 7q 7q 7q_5q 5h 5h) '(t s._3e 3q) '(t s t) )) => ((t s t) (3q 3e_s. t) (5h 5h 5q_7q 7q 7q 7q 7q 7q 7q_5q 5h 5h) (t s._3e 3q) (t s t)) ;;; UGLY DISPLAY BY CMD3 because of the OPMO-fuction (gen-retrograde durations1) ;; should result the same rhythm => ((1/32 1/16 1/32) (1/32 13/96 1/12) (1/10 1/10 3/35 1/28 1/28 1/28 1/28 1/28 3/35 1/10 1/10) (1/12 13/96 1/32) (1/32 1/16 1/32)) ;;; the same (rnd-pick durations1) => (1/32 13/96 1/12) ;;; OKAY because LISP and not OPMO (nth 0 durations1) => (t s t) a practical example: ;;; WORKS => because in the last step it's on LISP-level (setf durations (list '(t s t) '(3q 3e_s. t) '(5h 5h 5q_7q 7q 7q 7q 7q 7q 7q_5q 5h 5h) '(t s._3e 3q) '(t s t) '(t t t t) '(5q 5q 5q 5q 5q) '(3q 3q 3q) '(7q 7q 7q 7q 7q 7q 7q))) (setf morph-list (flatten (gen-morph 7 '(0 1 2 3) '(4 5 6 7)))) ;;cmd3 (setf newdurations (loop for i in morph-list append (nth i durations))) ;;; DON'T WORK => because OMPO chanhig the format to RATIOS (setf durations1 (list '(t s t) '(3q 3e_s. t) '(5h 5h 5q_7q 7q 7q 7q 7q 7q 7q_5q 5h 5h) '(t s._3e 3q) '(t s t))) (setf durations2 (list '(t t t t) '(5q 5q 5q 5q 5q) '(3q 3q 3q) '(7q 7q 7q 7q 7q 7q 7q))) ;;cmd3 (setf newdurations (flatten (gen-morph 7 durations1 durations2)))
-
Hi, In the following code the mf of the first bar won't show up. Any other dynamic symbol in the first bar will work as expected. Are you able to reproduce this on your system? All the best, Erik (setf omn (make-omn :length '((1/8 1/8) (1/2 1/2) (1 1)) :pitch '((g4) (d5) (f5)) :velocity '((mf) (f) (mf)) ) ) => ((e g4 g4) (h d5 f d5) (w f5 mf f5)) ; no dynamic symb in first bar! (setf omn (make-omn :length '((1/8 1/8) (1/2 1/2) (1 1)) :pitch '((g4) (d5) (f5)) :velocity '((pp) (f) (mf)) ) ) => ((e g4 pp g4) (h d5 f d5) (w f5 mf f5)) ; now the dynamic symb shows up in the first bar!
-
when i evaluate this: (make-omn :pitch '(c5) :length '(3/12 -1/12 4/12 -1/20 3/20 1/20) :velocity '(mf)) the result is wrong (look at (3/12 -1/12 4/12).... but i would like to notate something like valeur ajoutée isn't it possible? thanx a.
-
Hi, I am having difficulty understanding this new function. When I read the starting statement "The GEN-TENDENCY function generates N samples of given values (floating numbers)..." I thought, the function will generate N samples from the given list, but it does not do that! It does not directly generate from the "given values". Perhaps it will be of help if the explanation can be elaborated a bit more. For example, what does this do? (gen-tendency 2 '(0.9 0.1 0.7 0.9)) On my system, it gives => (0.917174 0.100803904) I immediately thought it will generate two values closest to what is in the given list, but the following proved me wrong. (gen-tendency 4 '(0.9 0.1 0.7 0.9)) => (0.90942806 0.09511808 0.09851663 0.68883634) Can you explain the behaviour in greater detail? As a beginner, I am not able to relate the generated output with "tendency" argument. Regards, Rangarajan