Generar video de actividad de desarrollo con Code Swarm

Code Swarm es un pequeño programa que permite generar videos de actividad de proyectos de desarrollo, usando los reportes de subversion (o otros sistemas de versiones) como base.

Esto es el procedimiento que se debe seguir para generar una de estas videos, bajo un sistema Ubuntu 8.10, para un proyecto escrito en PHP (con un poco de Java)

$ sudo apt-get install ant sun-java6-jdk

$ cd /tmp

$ svn checkout http://codeswarm.googlecode.com/svn/trunk/ codeswarm

$ cd codeswarm

$ mkdir frames

$ vim data/sample.config

En este fichero se deben cambiar unas cosas:

InputFile=data/activity.xml

FontSize=13

BoldFontSize=14

ColorAssign1=”Documentation”,”.*doc.*|.*.(html|htm|txt|readme)”, 0,0,255, 0,0,255

ColorAssign2=”PHP”,”.*.php”, 0,255,255, 0,255,255

ColorAssign3=”JavaScript”,”.*.js”, 255,120,120, 255,120,120

ColorAssign4=”Java”,”.*.(java|class)”, 0,0,255, 0,0,255

ColorAssign5=”Media”,”.*.(jpg|jpeg|mpg|mpeg|avi|mov|png|gif|bmp|ogg|ogv|mp3|wav)”, 0,0,255, 0,0,255

TakeSnapshots=true

Después de esto, generamos el log svn, lo transformamos a xml y iniciamos la conversión a imagenes:

$ cd myproject

$ svn update

$ svn log -v > /tmp/codeswarm/convert_logs/activity.log

$ cd convert_logs/

$ python convert_logs.py -s activity.log -o activity.xml

$ cd ..

$ sh run.sh

Finalmente, usamos las imágenes para generar un video (ahí podrá necesitar varios paquetes multimedia adicionales, depende de su instalación de Ubuntu):

$ cd frames

$ mencoder mf://*.png -mf fps=24:type=png -ovc lavc -oac copy -o movie.avi

$ mencoder movie.avi ovc xvid oac mp3lame xvidencopts bitrate=200 o projectactivity.avi

Este último comando es para reducir un poco el tamaño del video.

Listo, un project-activity.avi esta disponible en la carpeta /tmp/codeswarm/frames/

Algo así:

[youtube=http://www.youtube.com/watch?v=dG_jPxYs2FA]

Cuidado, la carpeta /tmp esta limpiada a cada reinicio de máquina…

Comments

Alguna vez vi los videos de actividad de desarrollo para varios proyectos Open Source, entre ellos Apache y Eclipse (si la memoria no me falla), pero en su momento no pude localizar la herramienta con la cual los habían elaborado. Buen post!