Bucle de avance y retroceso en Actionscript
3 seguidores
Como puedo hacer un bucle de avance y retroceso similar al de Quick Time en actioscript.
Tengo una pelicula .flv insertada en la barra de fotogramas, es pequeñita, pero quiero que cuando llegue al final en vez de volver a empezar se reprozuzca al inverso y asi continuamente.
Que codigo debería poner.
theCoder
San Google
Buena Respuesta
Saludos
xurxobaca
Creo una capa en blanco en la que sólo habrá código. La capa debe ser tan larga como la animación y en el último fotograma, hago que sea clave.
En el primer fotograma, el siguiente código:
Código:
<code>function alReves() {
this.onEnterFrame = function() {
if (this._currentframe>1) {
this.prevFrame();
} else {
delete this.onEnterFrame;
play();
}
};
}</code>
Y en el último fotograma, cuando la animación ha terminado:
Código:
<code>stop();
alReves();</code>
Así, en el primero, creo la función que ejecuta la animación a la inversa. Y esta función la llamo en el último fotograma.
Vale, pero ahora cuando reproduzco la pelicula, el codigo funciona pero al pillar el script y volver para tras lo hace a como a golpes, no hace la transición suave como la pelicula real hacia delante...
¿a que se debe?
tpmmds
Sí, los flv no se reproducen bien a la inversa debido a los keyframes que llevan, que están pensados para hacer una interpolación temporal siempre "positiva". Si quieres que se reproduzca bien hacia atrás hay que establecer el intervalo de fotogramas clave en 1, lo que genera un flv bastante grande. (con un keyframe por fotograma es como si tuvieras una secuencia de imágenes en el timeline)
Yo la opción que he utilizado en estos casos es crear un flv que lleve el vídeo en sentido normal e inverso; o sea, en Premiere o cualquier otro programa de edición coges el corte "al derecho", lo clonas y lo añades invertido después. Exporta los dos tramos y listo. Un flv con el sentido normal e inverso te pesará mucho menos que un flv con keyframes cada frame, y el efecto de reproducir en sentido inverso lo vas a conseguir igual.
En mi caso, lo utilizamos para un vídeo en el que el usuario con el movimiento del ratón iba hacia delante y hacia atrás del mismo. Colocamos cada sentido en una capa y una pequeña función que ocultaba y mostraba el video adecuado en cada caso, y llevaba la cabeza lectora a la posición correcta (ten en cuenta que si el vídeo dura 5000 frames, si estás en el 1000, al mostrar la capa con el sentido inverso debes ir al frame 4000)