Cristalab

Precargas para videos FLV en Flash

Por: eldervaz + Otros tutoriales de eldervaz + 7 de Noviembre del 2005

Autor
avatar
eldervaz
clabLevel: 3123
11 Tutoriales
0 Ejemplos

Cuando trabajamos en flash, debemos tener cuidado con los archivos que pesen demasiado, para esto usamos los preloaders, para seguir leyendo este tutorial debes tener claro lo que es un preload leyendo este tutorial de cristalab o el mio ;)

Además, tienes que tener bien claro lo que es cargar dinamicamente archivos de video en flash - FLV con este tutorial de Video en Flash

Bien, la precarga realmente es muy sencilla, nos basamos en sacar el peso a nuestra instancia stream_ns de la clase NetStream que contiene la informacion del video, donde ya podremos entender el siguiente codigo:

//toda esta parte ya la conocemos
var connection_nc:NetConnection = new
NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
my_video.attachVideo(stream_ns);
//para este ejemplo, le pongoun random para
//que haga el preload siempre q vean la pagina
stream_ns.play("http://www.eldervaz.com/tu.flv?id="+random(999));
//aseguro 10 seg de reproduccion
stream_ns.setBufferTime(10);
//
//creo una caja de texto dinamico
//esto: this.getNextHighestDepth()
//sirve para poner la caja de texto en el nivel mas alto en ese momento
this.createTextField("campo",
this.getNextHighestDepth(), 0, 0, 200, 22);
this.onEnterFrame = function() {
	//obtengo el porcentaje
	var valor1:Number = Math.round(stream_ns.bytesLoaded/stream_ns.bytesTotal*100);
	//inserto la informacion el la caja de texto
	campo.text = Math.round(stream_ns.bytesLoaded/1000)+" de "+Math.round(stream_ns.bytesTotal/1000)+" KB cargado("+valor1+"%)";
	//basandome en el porcentaje modifico la barra
	barra._xscale = valor1;
	//si completa el porcentaje mayor a 100
	//elimino el onEnterframe
	//porque ya cargo el FLV
	if (valor1>=100) {
		delete this.onEnterFrame;
	}
};

Bueno, con este codigo usamos el método setBufferTime que nos permite asegurar, en este caso 10 segundos, el inicio de la reproducción, mientras llenamos esperamos, tendremos el precarga diciendo al usuario que hay un archivo por verse.

Información adicional

Archivos del tutorial
Si tienes alguna pregunta de este tutorial; puedes hacerla aqui en los foros

Tutoriales relacionados