[Fluxus] getting there osc-recursion-

evan.raskob [lists] lists at lowfrequency.org
Fri Dec 31 06:05:29 PST 2010


Hey - a bit late, but here's a simple example that gets the last (top of the osc message stack) osc values for an audio device and uses them to draw a cube on the screen:


;------- BEGIN DRAW CUBE OSC -----------------------------------------

(clear)

(osc-source "7005")

(define x 0)
(define y 0)

; "path" is a string
; value, in this case, is any default value you get back if the message wasn't found

(define (osc-last-msg path arg value)
    (if (osc-msg path)
        (osc-last-msg path arg (osc arg))
        value))

(show-fps 1)

(define a (with-state
        (texture tex0)
        (scale 2)
        (build-sphere 30 30)))

(define (animate)
        (set! y (osc-last-msg "/audioin/1/val" 0 y))
        (set! x (osc-last-msg "/audioin/2/val" 0 x))
 
    ;top       
    (with-state
        (translate (vector 0 (+ 2 (* x 2.5)) 0))
   		(draw-cube))
   		)


(every-frame (animate))

;------- END DRAW CUBE OSC -----------------------------------------



On 31 Dec 2010, at 04:18, geoffroy tremblay wrote:

> On Fri, Dec 31, 2010 at 12:08 AM, gabor papp <gabor.lists at mndl.hu> wrote:
>>> move around. can I accomplish the same effect with the camera move
>>> than the normal mouse camera ?
>> 
>> you can check how fluxus does it. the code is in
>> fluxus/modules/scheme/camera.ss. see (input-camera), which sets the camera
>> rotation and position depending on mouse movement and (update-camera), which
>> uses the camera parameters to set up a camera matrix that you can load with
>> the (set-camera-transform) function. let us know if you need further help.
> 
> nice - good to read directly from there...
> 
>> 
>>> also the osc is quite laggy - is there some better to get the osc
>>> data? it's not really usable at this point - maybe it's sending too
>>> much data to the function (like too often - can I reduce that ?)
>> 
>> it is possible that you send too much data, you have to drain the data
>> reading all available osc messages to decrease the lag.
>> 
>>> I am also moving around a recursion - and taking input from the audio
>>> in -  and it seems out of sync - is there someway to create a faster
>>> connection with jack ? or is it just computer power that will help
>>> that ?
>> 
>> it should be quite fast by default. maybe you are using a too deep recursion
>> level that slows down processing. especially because you set the level from
>> the mouse wheel, and you have no upper limit. you can check the frame per
>> second using. if that looks fine, you can try changing the
>> buffer size of jack.
> 
> the fps start at about 16 and drop to 9ish when too many recursions
> are loaded - will play around with the buffer size to see how that
> will help.
> 
> thanks - I am doing a short live event for new year - mainly mixing
> music  and playing around with fluxus with this code (not really live
> coding yet ) - not sure if I'll integrate the osc part this time -
> anyhow I will video some part of the event and post it online ;)
> 
> thanks again
> 
>> 
>> gabor
>> 
>> 




More information about the Fluxus mailing list