Jump to content


  • Content Count

  • Joined

  • Last visited

Everything posted by AM

  1. perhaps you have some better ideas - ...perhaps with range/ambitus... sometimes in trouble - but i only use it for my current work, and so it's no problem could be nice if you could do the add-system also with an external list input -> not fibonacci or primes or sum, but perhaps also with any integer or float list. so MODIFY-function could be done with any DATA... and perhaps it could be also nice for LENGTH and DYNAMICS, i would like that (all-in-one)
  2. generate some examples... ;;; evaluate shift-cmd-e (progn ;gen a sieve (setf sieve (gen-sieve '((c0 c5) (c3 c6) (c4 c8)) '((14 1 2) (5 5 1 2) (6 2 1)) :type :pitch)) ; gen a line inside the sieve (setf sample (append (gen-rotate (random 8) (pick-sample-from-center sieve (rnd-pick '(7 11)))) )) (pitch-list-plot (list ; gen modified loines with "compr/expand-melody" (setf line1 sample) (setf line2 (compr/expand-melody sample
  3. greetings andré ;;; MODIFY THE PITCH CONTOUR inside a pitchfield or tonality ;;; please evaluate the example and have a look to the contours ;;; subfunction (defun position-items (items alist) (loop for item in items append (position-item item alist))) ;;; function (defun compr/expand-melody (melody field &key (type 'add) (n 1) (shift 0)) (let* ((ints (loop for i in (difference (position-items (pitch-to-midi melody) (pitch-to-midi field))) collect (cond ((equal typ
  4. AM

    maxmsp and lisp?

    yesterday we tried to implement/start maxlispj on MAX 8 http://sites.music.columbia.edu/brad/maxlispj/ maxlispj is from 2011, it works more or less in MAX 8 / MOJAVE, but not stable enough. perhaps there will a be some better solutiuons in the future... greetings andré
  5. AM

    maxmsp and lisp?

    Clozure CL => the new COMMON LISP version works with MOJAVE now have a look at apple's appstore
  6. dear all conTimbre-library works (in the next update) perfect with TUNING (midi-pitchbend) and PAN now. thanx to thomas hummel and janusz! here are some simple sound examples... ct-micro+pan2.aiff ct-micro+pan3.aiff ct-micro+pan.aiff ct-micro+pan4.aiff
  7. "then there is a bug in conTimbre midi listener"... okay i will tell thomas hummel thanks
  8. dear all is there a possibility to change the PAN in every EVENT? 1) like '((q c4 mp pan-30) (e c3 pp pan100)) would be interesting for LIVE-CODING is there something predifined? like it will come up with microtonality/tuning 2) and why does it work with simple-midi-sound (a list in :pan) and not with a player like conTimbre (there is something i don't understand with midi/players/etc)? thanx for a hint andré an example: (setf omn '((5q c4 5q 5q 5q 5q 5q 5q 5q) (-q) (e e e e e)
  9. I got a trial version of the new conTimbre-player-maxpatch (from thomas hummel), now the opusmodus-tuning also works well in conTimbre. I think it will be in the next update ... ...i like it more in cents then in float... (defun cents-to-tuning (centlist) (a*x 0.01 centlist)) (cents-to-tuning '(-14 +50 5)) => (-0.14 0.5 0.049999997)
  10. (ambitus-octaves 'c3 2 (closest-path '(b3eb5g3 cs6e7gs3 b4f5g6 f7e5c2 d4f7e4 gs7e2a8))) => (g3b3eb4 gs3cs4e4 b3g3f4 c4f3e4 d4e4f3 e4gs3a3) or you could put this two FUNCTIONS into ONE => (closest-path*... just take all the values/arguments from the basic version and add the octave-thing? greetings andré
  11. i already did that (defun add-rnd-dust (omnseq &key (span '(0.1)) (seed nil) (quantize '(1 2 3 4 5 6 7 8 9)) (scale 1.0) (tolerance 0.05)) (let ((rhy (omn :length omnseq)) (sp)) (progn (setf rhy (loop with cnt = 0 for i in rhy do (setf sp (nth cnt span)) when (not (null seed)) do (incf seed) when (> i 0) collect (+ i (car (rnd-number 1 0.0 (* i sp) :seed seed))) else collect (- i (car (rnd-numb
  12. an example: this is the BASIC-version (without "dust"): all mapped in 1/32 - retrograde sorting processes (with GEN-SORT): pitch-process from chromatic to 12tone-row (by sort) and from sorted length-values (all 1/32, then all 1/16 etc... to more complex/mixed pattern (by sort)) with this setup: the result with some "dust": if you you have a look to the span-list above (compare with the new score) you will see: no change at the beginning, then more and more randomized (or made flexible).
  13. @janusz: if you try the function a few times (without seed) , you will see (by cmd1), that sometimes the last TIE isn't there. i think QUANTIZE is doing this little bug... (but perhaps only a xml-display-thing?)
  14. ;;; ADD-RND-DUST TO LENGTHS ;;; this function adding RANDOMLY some "dust" to the LENGTHS, so it will be like a little rubato, ;;; or "humanizing"-effect. the ADD-SPAN is in percent (0.1 = 10%) on each length-value. (defun add-rnd-dust (omnseq &key (span '(0.1)) (seed nil) (quantize '(1 2 3 4 5 6 7 8 9))) (let ((rhy (omn :length omnseq)) (sp)) (progn (setf rhy (loop with cnt = 0 for i in rhy do (setf sp (nth cnt span)) when (not (null seed)) do (incf seed)
  15. AM

    maxmsp and lisp?

    the only problem seems to be, that it only works with CCL 1.12 on mojave... but this is not the official actual version in apple's appstore. so it don't work with 1.11.... does anyone know how to fix this problem?
  16. dear all does anyone have experience with an implementation of LISP in maxmsp? i'm looking for: "Max handling real time input, output, timing and control, letting Lisp handle variable handling and of course the processing of large amounts of data" Cycling '74 CYCLING74.COM Tools for sound, graphics, and interactivity does anyone tested this? thealexgraham/lisper GITHUB.COM Lisper is an easy to use interface between Max/MSP and Common Lisp - thealexgraham/lisper
  17. "My focus is on the ever-changing relationship that composers have with rules and procedures." some ideas/names...? => MOZART https://en.wikipedia.org/wiki/Musikalisches_Würfelspiel => the LIGETI-analysis of BOULEZ's STRUCTURES ? => MESSIAEN in general: https://monoskop.org/File:Messiaen_Olivier_The_Technique_of_My_Musical_Language.pdf, or specific "MODE DE VALEURS ET D'INTENSITÉS" => GOTTFRIED MICHAEL KöNIG => XENAKIS (the "ST"-pieces?) => HAUER https://de.wikipedia.org/wiki/Zwölftonspiel
  18. i know, LOOPS are not very LISPian! but for me the most simple way "to think such processes" (more intuitive then recursion/iteration). and when the function/code is not to large it's not that important...
  19. (loop for i in (gen-divide 2 '(c 4 d 5 e 3 c 6 eb 4)) collect (compress i)) => (c4 d5 e3 c6 eb4) i didn't read you posts precisely. only the last ONE ...but you could use COMPRESS...?
  20. have fun... greetings andré ;;; here is a MULTI-GEN-SORT ------------------------- ;;; you could interlace different processes of SORTING (defun multi-gen-sort (lists &key (types nil) (sorts '>) (steps nil) (seed nil)) (let* ((sorted-lists (loop for i in lists for cnt = 0 then (incf cnt) collect (gen-sort i :type (if (listp types) (nth cnt types) ty
  21. you should also share your ideas/thoughts/concepts!!??
  22. hi julio it's too complicated to share the code...the FUNCTION is made for a specific idea of the work (not common), so it's made for MY need... here is a short sketch of the work... (part of it) a) generating a pitch-sequence => by using a 12-tone-seq + its expansion by a sorting-algorithm (with GEN-SORT) => an INTERVAL-order mutates to a SCALE (see the list-plot) b) pitches are projected on a sequence of symmetrical expanding/compressing FIELDS (with CHORD-CONTR...) => you see how the pitch-seq is contracted/exapnded in "space" - result
  • Create New...

Important Information

Terms of Use Privacy Policy