Jump to content

AM

Members
  • Content Count

    600
  • Joined

  • Last visited

Everything posted by AM

  1. this is the simple solution... (defun add-numbers-to-text-attributes (a b) (loop for i from a to b append (add-text-attributes (list (compress (list 'nr i)) (write-to-string i))))) (add-numbers-to-text-attributes 12 23) => (nr12 nr13 nr14 nr15 nr16 nr17 nr18 nr19 nr20 nr21 nr22 nr23)
  2. let me try (and fail perhaps), but thanx for the hint!
  3. that would be brilliant! p.s. In about a year, I will control (and generate the DATAS to) the polytempo network (screens + conducting) as well as the e-player and the music score (parts) directly from OPUSMODUS
  4. i need something like this ((t b4 mp nr0 0.3) (-he.) (-whe..) (s. eb4 ppp nr3 0.5) (s g4 pp nr4 0) (t fs3 fff mute 0.3) (s. gs4 ppp nr6 0) (-e..)) so it's possible keep the overview which PITCH is TUNED and which is not... this way i can make precise assignments. for example: i code a score with no microtonal structures, but afterwards i want to INSERT/OVERWRITE some pitches/liitle sections with microtonal... so the EVENT-thing seems better for me to keep the overview/control, then to have ALWAYS a seperate list. so i will write TUNING-float into EVENTS, and a function GENE
  5. I do not work / almost never with DAW's. OPMO (before pwgl) and sibelius. i think the conTimbre library is much better - not all samples are quite perfect, but the selection of playing techniques eg. in the strings or in the drums is just very good. my last piece was for ensemble, virtual conductor and e-player (a piece whitch generates its form in quasi-realtime (completely new every time) - by sochastic/markov-procedures) - it was possible to play the add-SCORE from the library directly at the concert (midi-files read out with flexible tempo and played on CT) wit
  6. dear janusz is there an OPMO-solution to put the FLOAT for tuning in every event (with pitch) . some times ago i coded such an "add-data-to-event"-function for my own, but a OPMO-one would be more professional greetings andré
  7. thank you torsten - this MIDI-thing is too complicated for me (i don't know how to send, nothing happens). TUNING works properly with UVIworkstation (ircam solo-instrments). so it stays a BLACKBOX-thing why conTimbre doesn't work
  8. the only answer i got was that it works with "midi pitch bend" and with MAX. ConTimbre: "With Max you can just send floating point pitches, and with MIDI you can either send pitch bend values, but that always affects the whole voice. But you can also detune every key and, for example, use several Voices with the same timbre, but they have mutually detuned keyboards to get more than 128 pitches. " this will probably not solve the problem. maybe it would be best if OPMO's and ConTimbre's guys communicate directly? that would be in the interest of both companies...(?)
  9. i have written them (CT) a mail now to get some more information
  10. program-changes are no problem but how to make pitch-bend via opusmodus....? here is the MANUAL: ePlayer_Manual_Mac_english.pdf i know, but i will need microtonal-NOTATION
  11. yes, of course - from "BOTs" to a lot of small simple FUNCTIONS... but: not very well/smart coded () - i'm musician but only an "amateur programmer" with few experience - and it's really NOT well documentated for other users. and another point, i have no idea how do that professionally with GUTHUB and these installation-things as ORDINARY text - no problem. perhaps i will share it like that on my website...
  12. - it works not as it should for conTimbre. conTimbre works well with SIBELIUS (via pitch-bend-messages in the score like ~B0,64 or ~B0,90, like that) => no idea what i shoud do in OPMO? - TUNING: don't work with conTimbre - another thing is, i can't work well with OPMO+microtonality, when it's not possible to have microtonal-notation => so i will do it in SIBELIUS
  13. perhaps OPMO could extend its GEN-ROTATE like that (or use this CODE for it)... not only single-steps, also a list of steps... ;;; SIMPLE FUNCTION (defun gen-rotate* (alist seq) (loop for i in alist collect (setf seq (gen-rotate i seq)))) ;;; EXAMPLES (list-plot (flatten (gen-rotate* '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18) '(1 2 3 4 5 6 7 8 9 10))) :join-points t :point-radius 0 :style :fill) (list-plot (gen-rotate* '(9 8 7 6 5 4 3 2 1) '(1 2 3 4 5 6 7 8 9 10)) :join-points t :point-radius 0 :style :fill) (list-plot (flatten (gen-rotate* '(1
  14. yes, i saw this also (fermata and the stacc-effect) greetings andré
  15. thank you torsten - as i see, i would need some help/support. but there is also no solution for microtonal-notation in opmo yet... but ...time will come
  16. RESPELL/ENHARMONIC here is a solution for that (i hope i got all cases) - could be usefull in OPMO - it was/is a explode/compress-thing of the pitch-symbols and to think about all cases. please check it!! greetings andré (defun enharmonic* (pitches) (let ((liste '((cs db) (ds eb) (e fb) (es f) (fs gb) (gs ab) (as bb) (b cb) (bs c)))) (loop for n in pitches collect (let ((octave (car (last (explode n))))
  17. thank you, torsten! by now I have noticed that too (equalp in LISP)
  18. short question: is it possible to add a text-attribute to/above a rest? i didn't find a solution for that... for post-editing my score i would like to delete/augment/... specific values... for example: AUGMENT rest number 12, or DELETE pitch number 27 (like every EVENT woud has its number) - to do that i numbered all the pitches in the score, but seems not possible to number (by adding text-attributes) the rest-values?? it's no problem to extend the EVENTS by any extra-data-slots (i wrote such a function), but i don't know how to display text above RESTS? t
  19. here are 2 sound-examples of such a process - evaluate the FUNCTIONS: incf/decf-alist and round-to - evaluate example with cmd2/cmd3 - have a look to the list-plot (progn (setf durations (rnd-number 10 1 19 :prob 0.4)) (setf seq1 (append (make-omn :length (gen-length (flatten (incf/decf-alist 100 (rnd-order durations) :steps (rnd-number 10 1 5 :prob 0.2) :end 2))
  20. a less flexible version but with nicer output/usage... greetings (defun round-to (number precision &optional (what #'round)) (let ((div (expt 10 precision))) (/ (funcall what (* number div)) div))) ;;; (defun incf/decf-alist (n alist &key (steps '(1 2)) (end 1)) (let ((span (round-to (/ n (length alist)) 0))) (progn (setf alist (loop for start in alist for step in (if (< (length steps) (length alist)) (filter-first (length alist) (loop repeat (length alist) append
  21. use it or not... greetings andré ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; count-up/down => not well coded but it works ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; A FUNCTION which counts a integer-list from its values (individual) ;;; to value B (all the same end-value :to (default is 1)) ;;; n => how many output values (approx: depends on input/round... was not important for my project) ;;; up or down (default is 'down) ;;; with variabel ST
  22. i did not realize that there is an OPMO-function for that in OPMO: (setf omn-seq '(s c4 ffff e e s e. s q q q q q)) (length-map '((1/16 mp) (2/16 pp) (3/16 ppp)) omn-seq) => (s c4 mp e pp c4 s mp e. ppp s mp q ffff c4 c4 c4 c4)
  23. ....you are totally right!!!! i did not know this function, i did not find it when i was searching so, perhaps somebody could need/read my function "as a LISP-example"... in OPMO: (setf omn-seq '(s c4 ffff ord e ord e ord s ord e. ord s ord q ord q q q q)) (length-map '((1/16 mute) (2/16 pizz) (3/16 arco)) omn-seq) => (s c4 ffff mute e pizz c4 pizz s mute e. arco s mute q ord c4 c4 c4 c4)
  24. if you like to change the articulation of specific lengths (defun replace-articulation-of-a-length (omnseq length/articulation-map) (loop for i in (single-events (flatten omnseq)) when (length-restp (car i)) collect i else append (omn-replace :articulation (cadr (assoc (car (omn :length i)) length/articulation-map)) i))) (setf omn-seq '(s c4 ffff ord e ord e ord s ord e. ord s ord q ord q q q q)) (replace-articulation-of-a-length omn-seq '((1/16 mute) (2/16 pizz) (3/16 arco))) => (s c4 ffff mute e c4
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy