playkp   macro


Defined in:  https://github.com/lambdamusic/extempore-extensions/blob/main/init/init_playp.xtm

Implementation

;
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; PLAYKP - PlayPattern function - for playk i.e. channel 9 default
;
; Prerequisites:
; - `beat` and `dur` symbols bound in outer function
; - symbol `*mididevice*` MAPPED TO AN OUTPUT STREAM
;
; Signature:
; playkp N:bars [opt:N:durOffset] [opt:N:pOffset] ():pattern ():vols [opt:N:dur] 
;
; Args:
; - cycle-dur 
; - offset [default = 0]
; - poffset [default = 0]
; - plist
; - vol
; - dur [default =  cycle / len(plist) * 0.9]
;
; See playp comments for more info
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(impc:aot:do-or-emit
    (define-macro (playkp . args)
        (let ((newargs (cons 9 args)))
        ;  (log-info newargs)
        `(helper:mmplayp_f_with_offset beat dur *mididevice* ,@newargs))
         )      
)


Back to Index