sipis, ayer hice un reproducor de video asi como lo que tu estas pidiendo, con una barra de progreso, e inclusive, el usuario puede adelantarle o retrasarla....
te explico rapidamente....
primeramente lo que hice fue hacer una especie de "temporizador", osea, cada 100 milisegundos ejecuto una funcion, la cual es la que me va moviendo la barra de progreso de carga del video, y tambien la barra de reproduccion, este "temporizador" lo creas con la funcion
setInterval.
ahora, en la funcion, lo que hice fue sacar el tiempo total del video, esto lo hice definiendo el evento
NetStream.onMetadata, y sacando la propiedad
duration, algo asi:
Código PHP:
nsStream.onMetaData = function(infoObject:Object) {
totalTiempo = infoObject["duration"];
}
ahora, una vez que tenemos el tiempo total, podremos mover la barra de reproduccion en proporcion al tiempo total, esto usando porcentajes.
ej: la barra de reproduccion mide 200 pixels de largo, eso equivale al 100% de la reproduccion del video, ahora, supongamos que el video tarda 3 min, entonces cuando se este reproduciendo el 1.5 min, esto es el 50% del video total, ahora ese 50% lo relacionamos con el 50% de lo que mide la barra, en este caso serian 100 pixels, ahi es donde pondriamos la barra.
esto lo hice asi:
Código PHP:
var ns_seconds:Number = my_ns.time; //aqui tomamos el tiempo de reproduccion actual
var porcTiempo:Number = Math.floor((ns_seconds*100)/totalTiempo); // aqui sacamos el porcentaje de ese tiempo de reproduccion con respecto al tiempo total
mcPosicion._x = progresBar._x + Math.min(Math.floor(largo*porcTiempo/100),largo); // aqui posiciono el MC que me indica visualmente donde esta la reproduccion actual (una regla de 3 para sacar el numero de pixels)
ahora, para poder moverla con el mouse, y que relacinarla con el video, es muy semejante, igual se utilizan porcentajes
y la funcion
startDrag y
stopDrag
el ejemplo lo puede ver aqui:
http://pulso.um.edu.mx/~crysfel/flas...yer/player.swf
aqui el source
http://pulso.um.edu.mx/~crysfel/flas...yer/player.fla
have funnnnnnn