99 lines
3.2 KiB
Plaintext
99 lines
3.2 KiB
Plaintext
This directory contains Python and C code for video stuff.
|
|
|
|
History:
|
|
|
|
We started this in October 1991, when we had a large framegrabber
|
|
board on loan from SGI for a few weeks.
|
|
|
|
Later, when we started processing the recorded film fragments, the
|
|
"CMIF video format" was revised several times, and we finally created
|
|
an object-oriented interface for reading and writing various
|
|
incarnations of these files, called VFile.
|
|
|
|
When we finally got our own Indigo entry-level video board (in June
|
|
1992) and a version of the Irix video library that supported capturing
|
|
PAL format (August 1992) Sjoerd added an interface to the video
|
|
library to Python (sv) and Guido wrote makemovie.py (based upon a
|
|
still frame grabber by Sjoerd) to record a movie using it.
|
|
|
|
--Guido, Jack and Sjoerd
|
|
|
|
|
|
cam.py network real-time tv broadcast; see tv.py
|
|
usage: cam [packfactor [host]]
|
|
specifying 'all' for host broadcasts
|
|
|
|
camcorder.py record video movies or make snapshots (in movie format)
|
|
usage: camcorder [-c] [-a audiohost [-s]] [-p pf] [moviefile]
|
|
-c color (equivalent to -p 0)
|
|
-a audiohost syncaudio is running on audiohost
|
|
-s start syncaudio (on audiohost)
|
|
-p packfactor packfactor (default 2; 0 records color)
|
|
moviefile (default film.video)
|
|
keyboard commands:
|
|
s stop grabbing (single step if already stopped)
|
|
c continuous grabbing
|
|
r start recording
|
|
p pause recording (record single frame if paused)
|
|
ESC quit
|
|
|
|
colorsys.py color conversions, used by video
|
|
|
|
makemovie.py record video movies using the Indigo video library and
|
|
board
|
|
|
|
statit.py various statistics operations on movie files
|
|
|
|
syncaudio.py record audio synchronized with camcorder -a
|
|
usage: syncaudio videohost soundfile
|
|
soundfile format: 16 bits/sample, 16000 samples/sec, 1 channel
|
|
(actually, you'd better set the sampling rate to 16000
|
|
with the audio panel)
|
|
|
|
tv.py receiver for transmissions from cam.py
|
|
|
|
vcopy.py selectively write frames from one movie file to another
|
|
usage: vcopy infile outfile
|
|
commands: 'n' gets next frame; 'w' writes current frame
|
|
|
|
video.py player for movies recorded by camcorder.py
|
|
usage: video [-l] [-p pf] [-m mag] [-F]
|
|
[moviefile [soundfile [skipbytes]]]
|
|
-p pf override packfactor (to zoom)
|
|
-l looping -- restart movie when done
|
|
-m mag magnification
|
|
-F run at max speed
|
|
moviefile default is film.video
|
|
soundfile default is none (no sound)
|
|
skipbytes byte offset in soundfile where sound starts
|
|
|
|
Vplay.py same but using VFile.py
|
|
|
|
vinfo.py print summary of movie file(s)
|
|
usage: vinfo [-d] moviefile ...
|
|
-d print delta times (default: print abs times)
|
|
|
|
Vinfo.py same but using VFile.py
|
|
|
|
vpregs.py definition of VP registers
|
|
|
|
vtime.py virtual time module imported by syncaudio.py and camcorder.py
|
|
|
|
|
|
These are C programs, either for efficiency or because they need to
|
|
link with a C library.
|
|
|
|
squash.c make a movie smaller by averaging pixels
|
|
usage: squash factor [bits] <moviefile >newmoviefile
|
|
factor x and y compression factor
|
|
bits #bits left per sample in result (default 8)
|
|
|
|
squash2.c make a movie smaller by dropping pixels
|
|
usage: squash2 factor <moviefile >newmoviefile
|
|
factor x and y compression factor
|
|
|
|
tomono.c like squash2 but outputs a monochrome movie
|
|
|
|
v2i.c convert the first frame of a movie file to SGI .rgb format
|
|
link with -limage
|