viernes, 6 de mayo de 2011

Detener un sonido y reanudarlo luego desde el punto que se quedó, con ActionScript 3.0

Los objetos de la clase SoundChannel tienen una propiedad, llamada position que nos devuelve la posición en la que se quedó ejecutando el sonido. Para reanudarla, corremos la sentencia play en esa posición. Supongamos que tenemos un sonido en la librería que se llama SonidoLibreria, y un par de botones, play_btn y pausa_btn, en el escenario:

var posicion:Number;
var sonido:SonidoLibreria= new SonidoLibreria;
var vol = .5;
var canal:SoundChannel = new SoundChannel();
var trans:SoundTransform = new SoundTransform(vol,0);

canal = sonido.play();
canal.soundTransform = trans;

play_btn.addEventListener(MouseEvent.CLICK, onPlay);
pausa_btn.addEventListener(MouseEvent.CLICK, onPausa);

function onPausa() {
    posicion = canal.position;
    canal.stop();
}
function onPlay() {
    canal = sonido.play(posicion);
}

No hay comentarios:

Publicar un comentario