Rocking out with Source Control: Gource, TFS, and FFMPEG
Saturday, March 19, 2011 at 2:20PM
In preparation for a major update of one of my open source CodePlex projects, I enabled created a video of over two years of my checkin-history.
Video is here. http://vimeo.com/21240328
BASIC PROCESS
First, I used TFSConverter by Takashi Yoshida (I had to modify the code very slightly to get it to run) to extract the version history. The output was a 4MB log file that Gource can process.
Second, I used Gource to create a HUGE (7GB) PPM file (which is essentially a series of static images)
Third, I used FFMPEG to create a 64MB AVI file that I uploaded to vimeo.
MUSIC
The only reason this video is even worth watching is for the music in it that I found on CCMixter. The artist is Jay Sinkie and the song is "Remember The Name (Run Beat Remix) (Instrumental_Version)"
POWERSHELL SOURCE CODE
Here is the script I built. This should make it clear exactly what I did. I don't claim to be an FFMPEG expert. I'm sure if you investigate it more you can produce superior output.
$tfsurl = "https://tfs.codeplex.com/tfs/tfs01"
$projecturl = "$/VisioAutomation"
$tree = "VisioAutomation_2_DEV"
$logfile = "All.log" #this is the default output filename of tfsconverter
$bkimage = "d:\bk.png"
$framerate = "30"
$ppmfilename = "d:\gource.ppm"
$outputfilename = "d:\gource.avi"
$audiotrack = "d:\audio.mp3"
takashiyoshida-TFSConverter-c4b492c\tfsconverter\bin\debug\TfsConverter.exe $tfsurl $projecturl $tree
gource-0.32.win32\gource.exe $logfile -s 0.01 -1280x720 -transparent -date-format "%D" -hide date -hide progress -hide mouse -background-colour 550033 -font-size 45 --multi-sampling -background-image $bkimage -r $framerate -o $ppmfilename
ffmpeg-18639\ffmpeg -y -b 3000K -r $framerate -f image2pipe -vcodec ppm -i $ppmfilename -i $audiotrack -shortest -vcodec libx264 $outputfilename
DOWNLOAD EVERYTHING YOU NEED HERE
I've put up a ZIP with all the binaries and the script together. This will save you the time of having to locate all the needed components.
Reader Comments