Introductory video documentation
This commit is contained in:
parent
4ab6ff80ff
commit
f0384fdb97
|
@ -0,0 +1,111 @@
|
|||
CMIF video tools
|
||||
|
||||
This document gives a quick introduction to some of the tools useful
|
||||
for recording, editing and playing back video data in CMIF video
|
||||
format. All the tools mentioned currently live in /ufs/guido/bin/sgi.
|
||||
A description of the CMIF video file format can be found in
|
||||
/ufs/jack/cmif-film.ms.
|
||||
|
||||
Recording video
|
||||
|
||||
There are two tools to record video, Vrec and and Vrecb. Vrec does
|
||||
continuous capture, but can capture at most 15 frames per second.
|
||||
Vrecb uses burst capture, enabling it to capture all frames. It
|
||||
captures to main memory, however, so it cannot handle long video
|
||||
fragments. The following options are common to both programs:
|
||||
|
||||
-r rate Capture one out of 'rate' frames. Default (and
|
||||
minimum) is 1 for Vrecb, 2 for Vrec. There are some
|
||||
caveats for recording PAL, see below.
|
||||
-w width Set initial window width (and height, implicitly).
|
||||
-g bits Create greyscale film in stead of 8-bit dithered color
|
||||
film. Allowable values for 'bits' are 2, 4 or 8.
|
||||
-m Create monochrome dithered film. These look horrible.
|
||||
-M threshold Create monochrome thresholded film with specified
|
||||
threshold (in range 0..255).
|
||||
-G Create 2-bit dithered greyscale film.
|
||||
-f Capture fields in stead of frames. The film is created
|
||||
in such a way that the picture will be suitably
|
||||
enlarged on playback, so aspect ratio, etc. are
|
||||
maintained.
|
||||
-d Drop fields if they would cause data from two video
|
||||
fields to be combined. See the section on PAL for more
|
||||
details.
|
||||
|
||||
Options for Vrec:
|
||||
-a Record audio as well. You will have to twiddle audio
|
||||
and video later if you want lipsync playback.
|
||||
-q queuesize Set size of the video board circular buffer. A little
|
||||
experimentation with this may lead to more video being
|
||||
captured, but not always.
|
||||
-r rate Set video rate. A rate of 2 tries to capture every
|
||||
second frame, etc.
|
||||
-P frames Preallocate diskspace for 'frames' images. This may
|
||||
enable you to capture more frames.
|
||||
|
||||
Options for Vrecb:
|
||||
-n number Capture 'number' frames. Default is 60 (2 seconds).
|
||||
|
||||
Both programs accept a filename to store the video on (default
|
||||
film.video) and Vrec also accepts an audio file name (default
|
||||
film.aiff). When you want to record you press the left mouse button.
|
||||
Vrec stops recording when you release the mouse button and Vrecb stops
|
||||
after the predetermined number of frames have been recorded. During
|
||||
recording the picture may look funny, but do not let this worry you,
|
||||
the film will be ok.
|
||||
|
||||
After recording and saving, Vrec will print the deltas of the field
|
||||
numbers recorded. A list of '4 4 4 4'... means that all possible
|
||||
frames (one out of two) have been recorded. Vrecb will tell you how
|
||||
many duplicate fields have been skipped. See below on PAL useage
|
||||
again.
|
||||
|
||||
PAL caveats
|
||||
|
||||
The IndigoVideo board converts the incoming video signal to the 60Hz
|
||||
(59.something, actually) display rate. All further operations,
|
||||
including capture, are done with respect to display rate. This is
|
||||
especially bothersome in the case of PAL video, since it means one out
|
||||
of 5 frames will be duplicated. Together with the fact that, in
|
||||
continuous capture, you can only capture every second frame this leads
|
||||
to strange and wondrous effects. The frame numbers returned by the
|
||||
video board (and displayed by Vrec) are display frame numbers, and so
|
||||
bear only a very complicated (and probably non-deterministic) relation
|
||||
to PAL frame numbers. For recording simple videos this is probably no
|
||||
problem. You can use Vrec and try using -d to see which gives the best
|
||||
result. On the other hand, if you need every frame and no duplicates
|
||||
either you have to use Vrecb and supply the -d and -f option. This
|
||||
will give you exactly the fields as they appeared on the PAL tape.
|
||||
|
||||
Video playback
|
||||
|
||||
The easiest way to play back a video is to use Vplay. Calling it with
|
||||
an argument of -? will make it list all its options. A few options may
|
||||
need a bit of explanation:
|
||||
-M magnify Magnify the images by the given factor. This still
|
||||
takes any magnification specified in the film (if it
|
||||
is a field film, for instance) in account.
|
||||
-w width and
|
||||
-h height Normally the window will be the correct size for the
|
||||
film. You can set height and width, though, if you
|
||||
want the window to be bigger. This is especially
|
||||
useful if you want to record the film back to
|
||||
videotape, since you can playback in a window that is
|
||||
bigger than PAL size with a black background and you
|
||||
will have no distracting window-manager thingies on
|
||||
your videotape.
|
||||
|
||||
Video Editing
|
||||
|
||||
Vedit is a (very simple) video editor that allows you to select images
|
||||
from the input movie and copy them to an output movie. Both input and
|
||||
output films have a modest buffer that you can move around in.
|
||||
|
||||
Vaddcache takes a movie and adds a frame location cache to it. This
|
||||
will make some other programs run faster.
|
||||
|
||||
rgb2video converts a set of SGI .rgb files to a movie.
|
||||
|
||||
There are a few programs that can do image format conversion on movies
|
||||
(i.e. convert an 8-bit dithered RGB movie to a greyscale movie), but
|
||||
nothing very complete yet. Look at Vcopy.py for more information.
|
Loading…
Reference in New Issue