Pues eso, veamos como podemos hacer para añadir de forma fácil la posibilidad de usar el Wiimote en los scripts que usan PyGame modificando mínimamente el código.
La idea es muy simple, el sistema de eventos de PyGame permite añadir eventos desde fuera, mezclando eso con el sistema de callbacks de cwiid ( la librería para manejar el Wiimote ) podemos hacer como si se pulsasen teclas del teclado desde el Wiimote, los eventos se pueden crear así:
ev = pygame.event.Event( <tipo de evento>, { "key": <tecla> } )
Y después solo hay que añadirlos con:
pygame.event.post( ev )
Entonces el script quedaría algo como esto [ wii4pygame.py ], solo hay que hacer bind_wiimote(), opcionalmente mandando el número del led a activar ( 1 por defecto ), por ejemplo:
Mostrando entradas con la etiqueta wiimote. Mostrar todas las entradas
Mostrando entradas con la etiqueta wiimote. Mostrar todas las entradas
domingo, 30 de enero de 2011
viernes, 28 de enero de 2011
Controlando el reproductor Totem desde el Wiimote
Al principio la idea no era exactamente esa, de hecho era sobre rhythmbox... pero empecemos desde el principio.
Hablando con un colega sobre nosequé salió la idea de controlar el Rhythmbox ( reproductor de música de gnome bastante usado ). Al volver sobre la idea días ¿ semanas ? más tarde, leyendo la documentación sobre como hacer un plugin llegue a esta web: http://redjunasun.blogspot.com/2010/11/wiimote-for-controlling-rhythmbox.html a ver... compila perfectamente con "gcc archivo.c -o loquesea -lcwiid" y funciona bien.
Y no es un plugin, hmmm... parece ser que lo que usa para controlarlo es el DBus y uno pensando que solo servía para cosas de bajo nivel, mola controlar el reproductor así, enfin, eso ya está hecho, habrá que buscar otra cosa, probemos con el Totem.
Actualización: corregidos botones que no deberían hacer nada pero hacían play/pause
Hablando con un colega sobre nosequé salió la idea de controlar el Rhythmbox ( reproductor de música de gnome bastante usado ). Al volver sobre la idea días ¿ semanas ? más tarde, leyendo la documentación sobre como hacer un plugin llegue a esta web: http://redjunasun.blogspot.com/2010/11/wiimote-for-controlling-rhythmbox.html a ver... compila perfectamente con "gcc archivo.c -o loquesea -lcwiid" y funciona bien.
Y no es un plugin, hmmm... parece ser que lo que usa para controlarlo es el DBus y uno pensando que solo servía para cosas de bajo nivel, mola controlar el reproductor así, enfin, eso ya está hecho, habrá que buscar otra cosa, probemos con el Totem.
Actualización: corregidos botones que no deberían hacer nada pero hacían play/pause
domingo, 17 de octubre de 2010
Música con el WiiMote y python
Antes de nada, gracias a Vishkey por prestarme el mando para poder seguir con estas cosas :D
Enfin, que hay avances en el código para manejar el Wiimote, conseguí reproducir música de 8-bits en el, el resultado a penas se entiende con sonido "normal", pero con música electrónica a lo binärpilot, se escucha relativamente bien. El formato usado es PCM a 8 bits con signo (no como wav), con un framerate de 1500Hz
Enfin, que hay avances en el código para manejar el Wiimote, conseguí reproducir música de 8-bits en el, el resultado a penas se entiende con sonido "normal", pero con música electrónica a lo binärpilot, se escucha relativamente bien. El formato usado es PCM a 8 bits con signo (no como wav), con un framerate de 1500Hz
domingo, 10 de octubre de 2010
Interactuando con el WiiMote desde Python
El mando de Wii es a día de hoy un cachivache muy capaz de interactuar con el PC, tanto por que funciona a través de bluetooth, como porque sus capacidades impolsaron a la scene a estudiarlo.
El detalle es que después de ver un problema recurrente con estas consolas, que hacían falta pilas para usar el mando incluso cuando al final para jugar solo se utilizaran los que se conectan por cable a la consola, decidí escribir un script que permitiese conectarse a la consola y que, al menos, moviera el cursor y pulsara el boton principal [A] para poder solventar estos casos.
Nota: Hay una librería C para interactuar con el mando, llamada libcwiid
Aunque dicho script aún no está escrito, es más fácil conseguir un mando para trastear y explorar la forma con la que se comunica con la consola que una consola directamente, con ese motivo se escribió este código [pymote.py]. Conecta el dongle/pincho/chuzo bluetooth y comenzemos...
El detalle es que después de ver un problema recurrente con estas consolas, que hacían falta pilas para usar el mando incluso cuando al final para jugar solo se utilizaran los que se conectan por cable a la consola, decidí escribir un script que permitiese conectarse a la consola y que, al menos, moviera el cursor y pulsara el boton principal [A] para poder solventar estos casos.
Nota: Hay una librería C para interactuar con el mando, llamada libcwiid
Aunque dicho script aún no está escrito, es más fácil conseguir un mando para trastear y explorar la forma con la que se comunica con la consola que una consola directamente, con ese motivo se escribió este código [pymote.py]. Conecta el dongle/pincho/chuzo bluetooth y comenzemos...
Suscribirse a:
Entradas (Atom)