summaryrefslogtreecommitdiffstats
path: root/Demo/sgi/video/Vinfo.py
blob: 3293e4116f8abad4e43cd0febdba0182bf1c855b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import sys
import VFile

def main():
	if sys.argv[1:]:
		for filename in sys.argv[1:]:
			process(filename)
	else:
		process('film.video')

def process(filename):
	vin = VFile.VinFile().init(filename)
	print 'File:    ', filename
	print 'Version: ', vin.version
	print 'Size:    ', vin.width, 'x', vin.height
	print 'Pack:    ', vin.packfactor, '; chrom:', vin.chrompack
	print 'Bits:    ', vin.c0bits, vin.c1bits, vin.c2bits
	print 'Format:  ', vin.format
	print 'Offset:  ', vin.offset
	print 'Frame times:',
	n = 0
	t = 0
	while 1:
		try:
			t, data, cdata = vin.getnextframe()
		except EOFError:
			print
			break
		if n%8 == 0:
			sys.stdout.write('\n')
		sys.stdout.write('\t' + `t`)
		n = n+1
	print 'Total', n, 'frames in', t*0.001, 'sec.',
	if t:
		print '-- average', int(n*10000.0/t)*0.1, 'frames/sec',
	print

main()