Commit dfb61fa2 authored by Guido van Rossum's avatar Guido van Rossum

Minor improvements: exit status, data size stats.

parent 180924d5
...@@ -43,8 +43,11 @@ def main(): ...@@ -43,8 +43,11 @@ def main():
short = 1 short = 1
if not args: if not args:
args = ['film.video'] args = ['film.video']
sts = 0
for filename in args: for filename in args:
process(filename) if process(filename):
sts = 1
sys.exit(sts)
# Process one file # Process one file
...@@ -54,13 +57,14 @@ def process(filename): ...@@ -54,13 +57,14 @@ def process(filename):
vin = VFile.VinFile().init(filename) vin = VFile.VinFile().init(filename)
except IOError, msg: except IOError, msg:
sys.stderr.write(filename + ': I/O error: ' + `msg` + '\n') sys.stderr.write(filename + ': I/O error: ' + `msg` + '\n')
return return 1
except VFile.Error, msg: except VFile.Error, msg:
sys.stderr.write(msg + '\n') sys.stderr.write(msg + '\n')
return return 1
except EOFError: except EOFError:
sys.stderr.write(filename + ': EOF in video file\n') sys.stderr.write(filename + ': EOF in video file\n')
return return 1
print 'File: ', filename print 'File: ', filename
print 'Version: ', vin.version print 'Version: ', vin.version
print 'Size: ', vin.width, 'x', vin.height print 'Size: ', vin.width, 'x', vin.height
...@@ -68,24 +72,28 @@ def process(filename): ...@@ -68,24 +72,28 @@ def process(filename):
print 'Bits: ', vin.c0bits, vin.c1bits, vin.c2bits print 'Bits: ', vin.c0bits, vin.c1bits, vin.c2bits
print 'Format: ', vin.format print 'Format: ', vin.format
print 'Offset: ', vin.offset print 'Offset: ', vin.offset
if quick: if quick:
vin.close() vin.close()
return return
if not short: if not short:
if delta: if delta:
print 'Frame time deltas:', print 'Frame time deltas:',
else: else:
print 'Frame times:', print 'Frame times:',
n = 0 n = 0
t = 0 t = 0
told = 0 told = 0
datasize = 0
while 1: while 1:
try: try:
t, data, cdata = vin.getnextframe() t, data, cdata = vin.getnextframe()
except EOFError: except EOFError:
if not short:
print
break break
datasize = datasize + len(data)
if cdata: datasize = datasize + len(cdata)
if not short: if not short:
if n%8 == 0: if n%8 == 0:
sys.stdout.write('\n') sys.stdout.write('\n')
...@@ -95,10 +103,18 @@ def process(filename): ...@@ -95,10 +103,18 @@ def process(filename):
else: else:
sys.stdout.write('\t' + `t`) sys.stdout.write('\t' + `t`)
n = n+1 n = n+1
if not short: print
print 'Total', n, 'frames in', t*0.001, 'sec.', print 'Total', n, 'frames in', t*0.001, 'sec.',
if t: print '-- average', int(n*10000.0/t)*0.1, 'frames/sec',
print
print 'Total data', 0.1 * int(datasize / 102.4), 'Kbytes',
if t: if t:
print '-- average', int(n*10000.0/t)*0.1, 'frames/sec', print '-- average',
print 0.1 * int(datasize / 0.1024 / t), 'Kbytes/sec',
print print
vin.close() vin.close()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment