Comunidad de diseño web y desarrollo en internet online

Cue Points en FLV

Citar            
MensajeEscrito el 01 Ago 2010 03:33 am
Necesito crear con actionscript cue points como los que se crean desde Adobe Media Encoder ( AME )
cargandolos desde un .xml

como puedo hacer que se lanze un evento al llegar al cue point indicado??

Por voices

43 de clabLevel



 

chrome
Citar            
MensajeEscrito el 01 Ago 2010 06:53 am
BuenAS:

Imagino que estás utilizando el componente FlvPlayback de Flash Professional.

Utiliza el método "addASCuePoint" para añadir los cuePoint (cargas el xml, lo procesas y vas añadiendo cuePoints en los tiempos que te interese).

Este componente responde al evento fl.video.metadataEvent.CUE_POINT, que se distribuye cuando se llega a un cuePoint.

Hay que tener cuidado con los tres tipos de cuePoints que hay: de evento, de tiempo, ambos creados con Adobe Media Encoder (o programa equivalente) y los actionscript como los que has debido crear al procesar el xml. Aquí deberías escuchar SÓLO a este tipo de cuepoints, ya que no es raro que te lleguen vídeos flv que YA TIENEN cuepoints de evento. Asegúrate de que el cuePoint es de tipo actionscript.

Si estás trabajando directamente con un NetStream y la clase vídeo, todo esto deberías programarlo. Echa un vistazo a la ayuda, que trae varios ejemplos (básicamente es añadir un objeto metadata y un listener para los cuepoints)

Un saludo.

Por Lukánicos

Claber

468 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 02 Ago 2010 12:34 am
Muchisimas gracias por tu respuesta.

No estoy usando el componente, ya que la unica funcion del mismo que me resulta util es esta misma de crear cue points con AS.

Estoy usando, como has dicho un NetStream, en el cual cargo un flv y bla bla.

He escrito mal mi pregunta, ya que lo que me gustaria saber, es:

Código XML :

Archivo datos.xml:

<xml>

  <cuepoint tiempo_inicio='20'>

    <informacion_necesaria />

  </cuepoint>

</xml>


mi duda es la siguiente:

teniendo el xml que indica en que instante (tiempo_inicio) se activara el cue point,

como debo hacer para que mi aplicacion lanze un evento al segar a @tiempo_inicio de segundos???

deberia hacer un checkeo en cada frame para saber si el cuepoint ha sido alcanzado???
hay alguna manera de insertarlo dentro del flv para que el evento se lanze???

muchisimas gracias!

Por voices

43 de clabLevel



 

chrome
Citar            
MensajeEscrito el 02 Ago 2010 06:20 am
BuenAS:

En este caso hay que programarselo con el objeto client de la clase NetStream.

En plan rápido y poco ortodoxo, alguna vez he "fusilado" el método que utiliza David Stiller en su clase SoundSync (para audio)

http://www.adobe.com/devnet/actionscript/articles/cue_points_audio.html

y que básicamente consiste en crearte un array (o vector) con los tiempos, lanzar un Timer cuando se reproduce el vídeo (en el caso de SoundSync, audio) y comprobar que la cabeza lectora del stream que se está reproduciendo cae dentro de un tiempo dado. Por ejemplo, si el Timer se ejecuta cada décima de segundo, ver si hay algún tiempo que caiga dentro de myStream.time + 0.1 ó myStream.time - 0.1 y distribuir un evento en caso afirmativo.

Un saludo.

Por Lukánicos

Claber

468 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 05 Ago 2010 01:33 pm
Muchas gracias!

ya mismo lo voy a mirar!

Por voices

43 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.