From 5c1797ac23d4e8faec6f255593dc0c4b76213efe Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Tue, 8 Sep 1992 15:17:02 +0000 Subject: Utility to add a cached index to an existing movie file. --- Demo/sgi/video/Vaddcache.py | 79 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100755 Demo/sgi/video/Vaddcache.py diff --git a/Demo/sgi/video/Vaddcache.py b/Demo/sgi/video/Vaddcache.py new file mode 100755 index 0000000..191d6ea --- /dev/null +++ b/Demo/sgi/video/Vaddcache.py @@ -0,0 +1,79 @@ +#! /usr/local/python + +# Add a cache to each of the files given as command line arguments + + +# Usage: +# +# Vaddcache [file] ... + + +# Options: +# +# file ... : file(s) to inspect; default film.video + + +import sys +sys.path.append('/ufs/guido/src/video') +import VFile +import getopt + + +# Global options + +# None + + +# Main program -- mostly command line parsing + +def main(): + opts, args = getopt.getopt(sys.argv[1:], '') + if not args: + args = ['film.video'] + sts = 0 + for filename in args: + if process(filename): + sts = 1 + sys.exit(sts) + + +# Process one file + +def process(filename): + try: + fp = open(filename, 'r+') + vin = VFile.RandomVinFile().initfp(fp, filename) + except IOError, msg: + sys.stderr.write(filename + ': I/O error: ' + `msg` + '\n') + return 1 + except VFile.Error, msg: + sys.stderr.write(msg + '\n') + return 1 + except EOFError: + sys.stderr.write(filename + ': EOF in video file\n') + return 1 + + try: + vin.readcache() + hascache = 1 + except VFile.Error: + hascache = 0 + + if hascache: + sys.stderr.write(filename + ': already has a cache\n') + vin.close() + return 1 + + vin.printinfo() + vin.warmcache() + vin.writecache() + vin.close() + return 0 + + +# Don't forget to call the main program + +try: + main() +except KeyboardInterrupt: + print '[Interrupt]' -- cgit v0.12