|
|
Line 23: |
Line 23: |
|
===3. Encode the video=== |
|
===3. Encode the video=== |
|
|
|
|
|
Now that you have a serie of png, named <code>VIDEOSHOT_NAME.0000000000</code> to <code>VIDEOSHOT_NAME.XXXXXXXXXX</code> where <code>XXXXXXXXXX</code> is the number of frame minus 1 (all numbers begin from 0 don't they ?), you can encode an ogg movie, suitable for wikimedia commons: |
|
Now that you have a serie of png, named <code>VIDEOSHOT_NAME.0000000000</code> to <code>VIDEOSHOT_NAME.XXXXXXXXXX</code> where <code>XXXXXXXXXX</code> is the number of frames minus 1 (all numbers begin from 0 don't they?), you can encode an ogg movie, suitable for wikimedia commons: |
|
ffmpeg2theora VIDEOSHOT_NAME.%10d.png -o VIDEOSHOT_NAME.ogg |
|
ffmpeg2theora VIDEOSHOT_NAME.%10d.png -o VIDEOSHOT_NAME.ogg |
|
or an mpeg/avi movie, suitable for youtube/your parent's DVD player: |
|
or an mpeg/avi movie, suitable for youtube/your parent's DVD player: |
Revision as of 00:10, 7 January 2007
It is rather straightforward to create videos from globulation 2 games, thanks to the videoshot feature.
1. Export videoshot from glob2
You first need to export the videoshot from glob2. To do this, run glob2 with the following flag:
glob2 -G -vs VIDEOSHOT_NAME -s640x480
- First check that you do have enough space in your
GLOB2_DIR/videoshots
, where GLOB2_DIR
is ~/.glob2
on Unix and installation directory on Windows. By enough space, I mean lot's of space. Each frame will be an uncompressed bmp file, so for 640x480 images you'll roughly need 1 MB per frame. There is 25 frames per second, so count 1.5 GB per minute of game.
-r640x480
sets a low resolution, remember, the 1.5 GB per minute is only for 640x480 images, switch to 1280x1024 and you'll get around 6 GB per minute.
-G
disables OpenGL acceleration, as there seems to be a bug in SDL when exporting the framebuffer using GL.
2. Add website banner
A video showing glob2 without mentioning its web site is not very usefull. The trick here is to use imagemagick's tool mogrify to convert the raw bmp to png images with a text banner. To that end, you can use a simple perl script such as this one:
#!/usr/bin/perl
my @files = glob("*.bmp");
foreach $file (@files)
{
print "Processing $file\n";
system("mogrify -format png -pointsize 35 -fill white -draw 'text 40,450 \"http://www.globulation2.org\"' $file");
}
The script above works fine for 640x480 images and will convert every bmp in the current directory to png with the banner. Do not forget that the new pngs will use additional disk space that might be as high as half the size of the original bmp, so do not forget to get enough free space.
3. Encode the video
Now that you have a serie of png, named VIDEOSHOT_NAME.0000000000
to VIDEOSHOT_NAME.XXXXXXXXXX
where XXXXXXXXXX
is the number of frames minus 1 (all numbers begin from 0 don't they?), you can encode an ogg movie, suitable for wikimedia commons:
ffmpeg2theora VIDEOSHOT_NAME.%10d.png -o VIDEOSHOT_NAME.ogg
or an mpeg/avi movie, suitable for youtube/your parent's DVD player:
ffmpeg VIDEOSHOT_NAME.%10d.png -o VIDEOSHOT_NAME.mpeg
ffmpeg VIDEOSHOT_NAME.%10d.png -o VIDEOSHOT_NAME.avi