oilarchive/tools/extract_frame.py

35 lines
822 B
Python
Raw Normal View History

2007-04-05 15:20:31 +00:00
#!/usr/bin/python
import os
from os.path import *
import sys
import shutil
import warnings
warnings.filterwarnings("ignore", "tempnam")
if len(sys.argv) < 2:
print "usage: %s video frame.png [position]" % sys.argv[0]
print ""
print "position defaults to 00:01:00 (one minute into the video)"
print ""
sys.exit(1)
input_file = abspath(sys.argv[1])
output_file = abspath(sys.argv[2])
if len(sys.argv) > 3:
position = sys.argv[3]
else:
position = "00:01:00"
width = 128
framedir = os.tempnam()
os.mkdir(framedir)
os.chdir(framedir)
cmd = "mplayer -vo png:z=6 -vf scale -zoom -xy %d -ao null -ss '%s' -frames 2 \"%s\" >/dev/null 2>&1" % (width, position, input_file)
os.system (cmd)
files = os.listdir(framedir)
if files:
shutil.move(os.path.join(framedir,files[-1]), output_file)
shutil.rmtree(framedir)