SamsungDJ (scratch con maxmsp/processing en un touchscreen)[pruebas y codigo en max/msp]
Posted on 07.29.09 by i2off @ 9:14 PM

->versiones files
v0.1:
en este primer paso la idea era tener andando la pista y poder modificar la velocidad de reproduccion rapidamente con interpolacion, para lograr un sonido tipo scratch
maxmsp samsung dj v0.1
source maxmsp scratch v0.1

v0.2:
puse un objeto JSUI el cual puedo programar por javascript y una mascara de opengl para poder hacerme mi propio elemento. La idea es pasarle a este la posicion del cabezal para que rote el disco. Y hacerlo activo al mouse, para que pueda rotar el disco yo y que pase el cambio de velocidad al control del groove~.
con esto tengo 2 problemas que uno deriva en el otro:
cuando muevo lento el disco, la interpolacion es mas rapida que el refresco de movimiento (dado que el JSUI solo actualiza cuando el mouse se mueve), entonces hace microcortes. La solucion para esto fue usar 2 tipos de interpolaciones dependiendo de la amplitud del movimiento, si el movimiento es corto, la interpolacion es mas larga.
esto trae un gran inconveniente de esto, a pesar de que suena bien, es que si muevo el cabezal, no queda acomodado a la posicion correcta. Entonces no puedo tener referencia visual, de la posicion del disco en relacion al audio.

source maxmsp scratch v0.2

v0.3:
costo pero entendi un monton de cosas, despues de no dormir 2 dias pensando en como solucionar el problema de tener una referencia real de la posicion del cabezal en mi elemento JSUI, y poder controlar realmente en el scratch a donde quiero moverme, me di cuenta que la solucion estaba en lugar de manejar con el componente la velocidad de movimiento, debia indicar directamente a que parte queria moverme.
el motivo por el que no lo hice antes, era que el objeto groove~ no tiene manejo por puntero, sin por velocidad de reproduccion. La solucion fue hacer que calcule la distancia entre donde estaba y a donde quiero ir, y usar eso con un gran easyng (0.01).
tuve que cambiar varias cosas, por ejemplo que si no estaba clickeando, debia enviar por otro lado la senial de velocidad continua, asi que aproveche para ponerle un pitch.
Encontre tambien grandes dificultades en el jsui para manejar el control de los eventos del mouse, realmente deja mucho que desear en ese sentido.
en esta version muchos calculos que realizaba con patches los hago adentro del componente ya.
con esta version hice la primera demo, y ya empeze a acomodar todo para que quede en una version en modo presentation

maxmsp scratch v0.3
maxmsp scratch app v0.3 presentation
source maxmsp scratch app v0.3

v0.4:
aca ya empiezan los refinamientos, el principal era poder usar el scratch cuando estaba estopado el disco, y que el movimiento tenga inercia. descubri algo terrible del jsui, que es que en mouseRealese (que no tiene ese metodo) dispara un mouseDrag con la misma ubicacion del anterior mouseDrag, lo que me hacia perder todo calculo de inercia. Pero bueno, hardcodeando un poco lo solucione.
tambien le agregue el primer control para poder tener loops. Lo que tengo que ver ahora es de hacer el calculo de beats, y sobre eso segmentar los loops.
maxmsp scratch app v0.4
maxmsp scratch app v0.4 presentation
source maxmsp scratch app v0.4


Filed under: audio and maxmsp and processing and sourcecode
Comments:

No Comments »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment

Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

(required)

(required)


*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word


Stream.i2offPlusR3nder

Main Menu
Home
audio
maxmsp
opencv
processing
quartzcomposer
sourcecode
Uncategorized
videomapping

Search

  • Sites

  • Social


  • Syndication
    RSS 2.0
    Comments RSS 2.0
    WordPress

    Credits and Copyright
    Proudly powered by WordPress. All content © 2004-2005 Author
    Wordpress Firewall (*)

    Archives
    August 2009
    July 2009
    April 2009
    March 2009
    December 2008
    September 2008
    August 2008

    Recent Entries
    scratch con max/msp y processing [VIDEO] and some source
    SamsungDJ (scratch con maxmsp/processing en un touchscreen)[pruebas y codigo en max/msp]
    SamsungDJ (scratch con maxmsp/processing en un touchscreen)
    Guia de Setup de OpenCV con XCode
    Tracking FX en Realtime con FaceRecognition
    Video Mapping sobre superficie Curva, solucion 1
    Nueva Version de OpenFrameworks [permite exportar para iPhone]
    Entorno Para programacion tipo Max/Msp en Processing
    About
    Multitouch para el gobierno de la ciudad de buenos aires
    Automapeo para proyeccion
    Proximas Fechas [Paris y Emiratos Arabes Unidos]
    Proxima fecha, BOGOTA!
    LightPixelApp+ RegnumLuminis [que hay tras LightPixelJockey] [arduino+processing]
    CLANDESTINA WEEKEND NERD NUMBER 3