04/11/2005, 12:14
|
| | Fecha de Ingreso: abril-2004
Mensajes: 7
Antigüedad: 20 años, 7 meses Puntos: 0 | |
El email es [email protected]
Pongo un codigo de ejemplo de lo que estoy aciendo para ver si alguien me recomienda algo. el loadSound es "streaming" por eso el segundo parametro es "true"
Código:
var i1:Number = 0;
var i2:Number = 0;
var sound:Sound = new Sound();
/**
* Funcion que se encarga de dar informacion de
* que porcentaje del mp3 ha subido.
* Solo incluyo lo necesario como ejemplo.
*/
function Subidos(s:Sound):Void {
var porcientoSubido:Number = 100 * s.getBytesLoaded() / s.getBytesTotal();
}
/**
* Funcion que se encarga de dar informacion de que
* porcentaje del mp3 se ha tocado.
* Esta funciona si el mp3 ha sido subido en su totalidad
* pero no si el mismo aun no ha subido completamente.
*/
function Tocados(s:Sound):Void {
// Aqui esta el problema.
// duration se refiere a los milisegundos bajados
// y no a los totales. Como consigo el tiempo total?
var porcientoTocado:Number = 100 * s.position / s.duration;
}
/**
* Funcion encargada de subir una cancion.
*/
function SubirCancion(path_:String):Void {
sound.loadSound(path_, true); // Subir sonido streaming
clearInterval(i1);
clearInterval(i2);
i1 = setInterval(Subidos, 100, sound);
sound.onLoad = function(exito:Boolean) {
if(!exito) {
// Aqui me encargo de dar un mensaje de error, etc.
}
clearInterval(i1);
}
sound.onSoundComplete = function() {
clearInterval(i1);
}
}
/**
* Esta funcion es llamada por el boton de tocar.
* Es posible que sea llamada antes de que el mp3 halla
* sido subido por completo.
*/
function TocarCancion():Void {
s.start();
i2 = setInterval(Tocados, 100, sound);
}
/**
* Esta funcion es llamada por el boton de parar.
* Es posible que sea llamada antes de que el mp3 halla
* sido subido por completo.
*/
function PararCancion():Void {
clearInterval(i2);
s.stop();
}
|