comparison scripts/play-synced-videos.py @ 833:8d1dd771aeb3

updated for play synced
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Thu, 30 Jun 2016 14:01:13 -0400
parents 2a5856961933
children 75530d8c0090
comparison
equal deleted inserted replaced
832:02f2809c2f66 833:8d1dd771aeb3
1 #! /usr/bin/env python 1 #! /usr/bin/env python
2 2
3 import sys, argparse, os.path 3 import sys, argparse, os.path
4 import cvutils, utils 4 import cvutils, utils
5 from metadata import createDatabase, Site, VideoSequence 5 from metadata import createDatabase, Site, CameraView, VideoSequence
6 from datetime import datetime, timedelta 6 from datetime import datetime, timedelta
7 7
8 parser = argparse.ArgumentParser(description='The program displays several views of the same site synchronously.') 8 parser = argparse.ArgumentParser(description='The program displays several views of the same site synchronously.')
9 parser.add_argument('-i', dest = 'metadataFilename', help = 'name of the metadata file', required = True) 9 parser.add_argument('-i', dest = 'metadataFilename', help = 'name of the metadata file', required = True)
10 parser.add_argument('-n', dest = 'siteId', help = 'site id or site name', required = True) 10 parser.add_argument('-n', dest = 'siteId', help = 'site id or site name', required = True)
25 site = site[0] 25 site = site[0]
26 26
27 dirname = os.path.split(args.metadataFilename)[0] 27 dirname = os.path.split(args.metadataFilename)[0]
28 28
29 startTime = datetime.strptime(args.startTime, utils.datetimeFormat) 29 startTime = datetime.strptime(args.startTime, utils.datetimeFormat)
30 videoSequences = session.query(VideoSequence).filter(VideoSequence.site == site).filter(VideoSequence.startTime <= startTime).all() 30 cameraViews = session.query(CameraView).filter(CameraView.site == site)
31 videoSequences = [v for v in videoSequences if v.containsInstant(startTime)] 31 videoSequences = session.query(VideoSequence).filter(VideoSequence.name != None).filter(VideoSequence.startTime <= startTime).all()
32 #videoSequences = session.query(VideoSequence).filter(VideoSequence.site == site).filter(VideoSequence.startTime <= startTime).all()
33 videoSequences = [v for v in videoSequences if v.containsInstant(startTime) and v.cameraView in cameraViews]
32 filenames = [dirname+os.path.sep+v.getVideoSequenceFilename() for v in videoSequences] 34 filenames = [dirname+os.path.sep+v.getVideoSequenceFilename() for v in videoSequences]
33 firstFrameNums = [v.getFrameNum(startTime) for v in videoSequences] 35 firstFrameNums = [v.getFrameNum(startTime) for v in videoSequences]
34 36
35 cvutils.playVideo(filenames, [v.cameraView.description for v in videoSequences], firstFrameNums, args.frameRate, rescale = args.rescale, step = args.step) 37 cvutils.playVideo(filenames, [v.cameraView.description for v in videoSequences], firstFrameNums, args.frameRate, rescale = args.rescale, step = args.step)