Archive for junio, 2010

Un sonido luego de otro

El año pasado hice un trabajo donde se necesitaba que se reproducieran unas imágenes y al mismo tiempo se escuchara una voz en voz describiendo la imagen.
El tema que eran varia galerías que eran cambiadas dinámicamente por lo que se requería que ésta pseudo película se generara en tiempo de ejecución.
El tema estaba en precargar todas las imágenes y todas los sonidos para que no haya pausas entre imagen e imagen.
Precargar la imágenes es relativamente facil ya que podes cargarlas usando un loadClip ya que son guardadas automáticamente en el caché.
El tema son los sonidos, como asegurarse que los sonidos son precargados de forma que no haya pausas. Hay un par de formas de hacerlo la que me resultó más práctica a mi fue:

La forma normal sería, manual y estática sería:

import flash.media.Sound;
import flash.media.SoundChannel;
 
var mySoundOne:Sound = new SoundOne();
var mySoundTwo:Sound = new SoundTwo();
var mySoundThree:Sound = new SoundThree();
 
var mySoundChannel:SoundChannel = mySoundOne.play();
mySoundChannel.addEventListener(Event.SOUND_COMPLETE, sound_1_Complete);
 
var mySoundChannel2:SoundChannel;
var mySoundChannel3:SoundChannel;
 
function sound_1_Complete(event:Event):void {
    trace("one complete");
    mySoundChannel2 = mySoundTwo.play();
    mySoundChannel2.addEventListener(Event.SOUND_COMPLETE, sound_2_Complete);
}
 
function sound_2_Complete(event:Event):void {
    trace("two complete");
    mySoundChannel3 = mySoundThree.play();
    mySoundChannel3.addEventListener(Event.SOUND_COMPLETE, sound_3_Complete);
}
 
function sound_3_Complete(event:Event):void {
    trace("three complete");
}

Hasta acá todo fácil, lo que fue una novedad para mi es que es posible meter objetos dentro de arrays, por lo que cree un array con sonidos (objetos) adentro y fui cargando un sonido después del otro, de forma que era automatizado, dinámico y que podía ser cambiado en tiempo de ejecución sin problemas.

var sounds:Array = [new SoundOne(), new SoundTwo(), new SoundThree()];
 
var channels:Array;
 
channels[0] = Sound(sounds[0]).play();
 
SoundChannel(channel[0]).addEventListener(Event.SOUND_COMPLETE, playNext);
 
function playNext(e:Event):void
 
{
 
var index:Number = channels.indexOf(e.currentTarget);
 
trace("played sound " + (index + 1));
 
if(index < sounds.lenth - 1)
 
{
 
index++;
 
channels[index] = Sound(sounds[index]).play();
 
SoundChannel(channels[index]).addEventListener(Event.SOUND_COMPLETE, playNext);
 
}
 
}
sounds.push(new SoundFour()); // sólo habría que asegurarse de llamar a esto antes que el sonido cuatro termine de reproducirse

WordPress 3.0 review

Hoy salió WordPress 3.0, me contuve todos estos meses y no instalé ninguna de laa betas así que no sabia de que se trataba, si había estado leyendo y escuché en Wordcamp que el usuario iba a tener mucho más control sobre el layout.

La instalación es exáctamente igual de fácil y amigable que todas las versiones de todos éstos años. Apenas me loguee por primera vez pense esto es exactamente igual, realmente esperaba que el escritorio cambiase drásticamente, pero es muy muy parecido, lo único que diferencié rápidamente fue la opción menús dentro de Apariencia. Básicamente éste es el punto fuerte que tiene el nuevo sistema ya que ahora en vez de generar automáticamente el menú según las paginas, ahora hay un paso extra que es agregar la página creada al menú. También permite crear links en el menú que apunten a cualquier otro lado, ya sea a post internos, categorías o incluso direcciones externas. También deja arrastrar el orden de cada botón para determinar su posición. El otro punto fuerte del menu Apariencia es la posibilidad de cambiar el fondo, ya sea con una imagen o un color. de ser una imagén te permite elegir la posición, y como se repite. También hay una opción para cambiar la cabecera, muy similar al sistema que trae el template K2. La verdad que esperaba más de esta versión, estoy seguro que hay mucho avance abajo del capot de los cuales no estoy consciente, si alguien sabe de alguna cualidad nueva que quiera compartir bienvenido sea. Sólo espero que los templates viejos sigan siendo compatibles, así también como los plugins.

Ipad y iphone bípedos

visualizador de datos de twitter

Siempre me fascinaron los visualizadores de datos. Éste en particular no me pareció increíble pero no deja de ser interesante. Lo que hace es reproducir con gráficos palabras claves que se dijeron por twitter durante un partido, de esta forma podemos ver como crece cuando alguien es expulsado o hace un gol.

http://www.guardian.co.uk/football/world-cup-match-replay

Project Natal se llamará Kinect

Bajo el marco de la E3 ayer se dió a conocer el nombre del proyecto Natal. Kinect será la nueva forma de interactuar con la consola de Microsoft. Kinect convierte todo tu cuerpo en el control remoto, también toma acciones por comando sonoros. Por ahora lo juego que hemos visto han sido juego muy parecidos a la lúdica de la Wii, me gustaría probar que tan preciso será, no creo que salgan títulos como Halo o juegos donde hay demasiadas combinaciones de teclas para acceder a diferentes acciones, de todos modos parece divertido, no creo vender mi Wii para cambiar a X-box pronto, pero como amante de las interfaces me parece que esto es un paso hacia donde nos estamos dirigiendo y es bueno ver que la gente lo adopta con facilidad. El world premier será esta tarde, las 3:30 EDT con participación de Cirque du Soleil más información: http://www.xbox.com/en-US/kinect/