Probando FlowPlayer

Ahora que está tan de moda (y es que mola) lo de poner vídeos que se reproducen rápidamente he decidido incluir el mío propio.
No tanta mierda de youtube.com ni leches. Si google se quiere gastar más de 1000 millones de €…, será porque les cuesta poco ganarlos.
¿Para qué depender de otros cuando lo puedes hacer tú mismo? Bastante censura me aplico, como para que de repente me dejen sin vídeo porque no entra en su política de contenidos.

Encima FlowPlayer, que es como se llama el bicho, mola más.
Sólo falta que gnash termine de funcionar para poder mandar al carajo a macromedia y su flash plugin. Y es que en mis pruebas, gnash mostraba una especie de garabatos que más bien parecían Picassos en movimiento que vídeos.

Por supuesto flowplayer no es mío, pero como si lo fuera, porque tiene licencia Apache 2.0 (otra licencia de código libre, casi compatible con GPL). Página web del proyecto FlowPlayer

Estaremos en fase de pruebas, dependiendo del ancho de banda que me consuma.

¿Cómo usarlo?

Los ejemplos son de su página. Parece todo bastante fácil.

Lo primero, transformar el vídeo al formato de vídeo flash, el FLV.
Para transformar una película en formato FLV (desde un original: .mp4 .mov .mpg .3gp .mpeg .wmv .avi), seguir los siguientes pasos:

El comando flvtool2 añade la duración del vídeo en los metadatos del archivo FLV. FlowPlayer lee la información de duración del archivo FLV y la muestra. Así pues, los metadatos del archivo FLV se pueden insertar mediante flvtool2.

ffmpeg -i movie.[avi] -s 320×240 -ar 44100 -r 12 movie.flv
cat movie.flv | flvtool2 -U stdin movie.flv

EJEMPLO
Yo concretamente me voy a estrenar con el vídeo de la ocupación multitudinaria y molona de Ikea en Barcelona.

Para instalar flvtool2 he utilizado el directorio /opt, que para eso está.

$ ruby setup.rb config –prefix=/opt –siterubyver=/opt/lib/site_ruby/1.8
$ ruby setup.rb setup
$ ruby setup.rb install

(Para instalar, según los permisos que tengas en opt, puedes necesitar ser superusuario)

Para ejecutar flvtool2, al no usar directorios estándar que suelen estar en los $PATH, … se me ha ocurrido crear un miniscript conteniendo:

#!/bin/bash
ruby -I /opt/lib/site_ruby/1.8 /opt/bin/flvtool2.ruby $@

El script de bash lo he llamado flvtool2 y el archivo flvtool2 lo he renombrado a flvtool2.ruby

Tras eso he creado el archivo…

ffmpeg -i ocupacion_multitudinaria_viviendadigna_ikea_barcelona.mov -s 320×240 -ar 44100 -r 12 ocupacion_multitudinaria_viviendadigna_ikea_barcelona.flv

cat ocupacion_multitudinaria_viviendadigna_ikea_barcelona.flv | flvtool2 -U stdin ocupacion_multitudinaria_viviendadigna_ikea_barcelona.flv

Vaya, me sale el error:

/opt/lib/site_ruby/1.8/flv/amf_string_buffer.rb:163: [BUG] Segmentation fault
ruby 1.8.5 (2006-08-25) [i486-linux]
/opt/bin/flvtool2: line 2: 14262 Abortado ruby -I /opt/lib/site_ruby/1.8 /opt/bin/flvtool2.ruby $@

Pues mi buscador me dice que mire en Using Lighttpd, Mplayer/Mencoder and Flvtool2 to Implement Flash Video Streaming
y allí me indican sustituya en /opt/lib/site_ruby/1.8/flv/amf_string_buffer.rb la línea 163 :

de
    write [(time.to_i * 1000.0)].pack('G')
a
    write [(time.to_f * 1000.0)].pack('G')

Repito lo mismo

cat ocupacion_multitudinaria_viviendadigna_ikea_barcelona.flv | flvtool2 -U stdin ocupacion_multitudinaria_viviendadigna_ikea_barcelona.flv

Ahora ya no da ningún error.

Como colofón quiero incluir el modo que tiene que muestra también una lista de imágenes en miniatura de diferentes instantes del vídeo. Pero no va. A ver si me contesta el autor cómo va el tema este.
El comando usado para empotrar en el flv las miniaturas se supone que es el siguiente.

flvtool2 -AUt tags.xml ocupacion_multitudinaria_viviendadigna_ikea_barcelona.flv

El contenido del fichero tags.xml

En último lugar edito el ejemplo de código html que se debe poner en la web para adaptarlo a mi caso particular:

<object type=”application/x-shockwave-flash” data=”/wordpress/wp-content/plugins/flowplayer/FlowPlayerLP.swf” width=”420″ height=”340″ id=”FlowPlayer”>
<param name=”allowScriptAccess” value=”sameDomain” />
<param name=”movie” value=”/wordpress/wp-content/plugins/flowplayer/FlowPlayerLP.swf” />
<param name=”quality” value=”high” />
<param name=”scale” value=”noScale” />
<param name=”wmode” value=”transparent” />
<param name=”flashvars” value=”baseURL=/wordpress/wp-content/archivos/&videoFile=ocupacion_multitudinaria_viviendadigna_ikea_barcelona.flv&thumbsOnFLV=true&loop=false” />
</object>

El resultado final:

TATATACHÁN

Referencias:

Página web del proyecto flvtool2
Página web del proyecto FlowPlayer

Etiquetas: , , , , , , , , ,

16 thoughts on “Probando FlowPlayer

  1. Hola y gracias por esta explicacion detallada que has puesto. Me pusieron la tarea de que instale el FlowPlayer y me has ayudado bastante.

    Att,

    Byron

    Ecuador

  2. Kike,
    Tratè tambien de incluir este ejemplo en mi WordPress pero no aparece nada… lo dejé configurado de la misma forma que lo hiciste tú incluso cargando los archivos del Flowplayer en la carpeta del WP pero aún así sólo veo el código cuando le pongo previsualizar y bueno por mas que trato no puedo.

    Agradezco tu ayuda =)

    Saludos desde Chile =)

  3. Hola, muy buen script, pero estaría mejor meterse un poco mas adentro del player este y tratar de compilarlo, porque mucho GNU es pero te mete su loguito por todo lados, esta muy bueno y también falto comentar sobre play list!

  4. La cuestion no es si van o no muchos formatos , se elige el Flv por q su grado de compresion es perfecta , sin perder calidad , y asi facilitar la subida de los archivos a la web

  5. Muy buen toturial amiguito, te tengo una pregunta:
    De que manera quito los creditos (enlace hacia la pagina del autor) de flowplayer al momento de maximizar la a pantalla completa? No lo he podido conseguir ya que no entiendo mucho de java.
    Estoy comenzando a pensar que los creditos o el enlace ya viene por defecto, como esta embedido quiza lo traiga como si fuera un color o algo asi, me explico? Si tengo razon omite mi pregunta, de lo contrario agradeceria tu fina atencion que no merezco.

    Por que lo quiero quitar? porque flowplayer se me hace un reproductor web demasiado comodo pero demasiado caro y pues no tengo los dineros para pagarlo.
    Espero me entiendas.

    Muchas gracias amiguito y recibe un cordial saludo de mi parte.

Comenta, comenta. Sin miedo.