At a past meeting, I forget exactly which one to be honest, the
question of what video format would be best to use that allows for
online video playback while not suffering from quality issues. I
took a look at the common formats used by screencast tools and users
and also at what online video sites do to mangle videos and came up
with some notes.
First the formats - basically modern tools can capture and output in
all of the common video formats - so that's a good thing. Every FAQ
and help guide I read all said the same thing, output as high of a
resolution as you can (hmm, kinda obvious) - but the devil is in the
details.
Because screencasts are basically a static background with a couple
areas in motion, using a format that offers keyframes will give you
the best compression but you will lose out on sharpness of edges.
But this is not really noticeable unless you start messing with the
scaling. The one thing that is noticeable tho is audio sync issues
and the only way to avoid that is to pick a container format (think
mp4, flv, ogg) which has the ability to store the audio and video
with markers to keep things lined up. You just have to be careful in
converting them to ensure that the output format retains the timing
data.
One other thing to consider about format is image size. While wide-
screen monitors are very popular, by far 1024x768 is the most
common. That size for a video is almost unheard of tho in
screencasts. At the bottom of the email is a table I lifted from a
great wiki page from edmug.org.uk that has tips on how to record
using iShowU and iMovie -- they list 640x480 as being the size to
use if you want to show the video at 100% and be able to see the
whole screen in the video. (full link: http://wiki.edmug.org.uk/
index.php/Tutorial:Screencasts )
Most of the uploads sites do some serious compression and scaling to
save bandwidth and screen space so they all will take a nice clean
screen cast and mangle it so text is unreadable. They are best used
for shots of kittens and kids running around creating havoc.
The best option for quality, IMO, is to offer both FLV and MP4
formats on our own site. These two media container formats offer the
audio/video quality and the metadata to keep them in-sync even during
compression and/or scaling. The FLV can be viewed in a flash viewer
and the download option is still available. (yep, just what Jared
suggested originally) :) The biggest issue for use will be bandwidth
used.
Another benefit of MP4 that may be useful down the road is that it's
very easy to also include in the file 3gp timed text track data -
this will allow for captions to be included (useful for accessibility
and also translations.)
Here are the "highlights":
Screencast formats:
animated gif (yes, this is actually used)
playable anywhere, 256 colors only, lossy (but good) compression,
no sound, extremely embeddable
ogg
pretty much linux only, compression can be used, audio, no browser
embed (yet)
listed because I love the fact that it's patent-free
h.264/mpeg4
not widely supported by many players (tho VLC plays it and VLC is
available everywhere), no native embed
too bad tho - it has great quality parameters
flv (aka flash)
h.263 video which is widely supported, mp3 audio (but can be a
custom codec)
requires flash ver 8 or higher but this is available in OS X,
Windows and Linux now
Online sites
Youtube
uses FLV but converted and scaled to 320x240, 30fps (max), 100meg
max size
best to encode as mpeg4 (divx, xvid), 320x240, mp3 audio, 30fps
(anything else and it can be *ugly*)
Viddler
streaming playback only
supports every video format under the sun (really, they are crazy
mad with formats)
500 meg max size
nifty feature is they allow user comments to be recorded and they
appear at the bottom of the video in a timeline
Metacafe
mpeg4 (avi, mov, mp4), 30fps, mp3 audo - no idea on max size
Revver
mov, mpeg, mpg, mp4, wmv, asf, avi (divx), 100meg max size
ads are inserted into playback
Table of resolutions and video sizes borrowed from http://
wiki.edmug.org.uk/index.php/Tutorial:Screencasts#iShowU_Capture_Size
Type iMovie Resolution iShowU 100%
iShowU 75% iShowU 50%
DV PAL 720 x 576 720 x
576 960 x 768 1440 x 1152
DV NTSC 720 x 480 720 x
480 960 x 640 1440 x 960
DV-PAL Widescreen 853 x 576 853 x 576
1138 x 768 1706 x 1152
DV-NTSC Widescreen 853 x 480 853 x 480 1138 x
640 1706 x 960
HDV 1080i 1920 x 1080 1920 x
1080 too large too large
HDV 720p 1280 x 720 1280 x
720 1654 x 960 too large
MPEG-4 640 x 480 640 x 480
854 x 640 1280 x 960
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Open Source Applications Foundation "General" mailing list
http://lists.osafoundation.org/mailman/listinfo/general