# HG changeset patch # User Nicolas Saunier # Date 1512707514 18000 # Node ID bf401567a9332747e85dce686a61cb508a6ddcfd # Parent 5d788d2e8ffce063b16b10de73b2bb698a5adcfa work on initializing videos for metadata diff -r 5d788d2e8ffc -r bf401567a933 python/metadata.py --- a/python/metadata.py Thu Dec 07 17:03:09 2017 -0500 +++ b/python/metadata.py Thu Dec 07 23:31:54 2017 -0500 @@ -9,7 +9,7 @@ from sqlalchemy.ext.declarative import declarative_base from utils import datetimeFormat, removeExtension, getExtension -from cvutils import computeUndistortMaps, videoFilenameExtensions +from cvutils import computeUndistortMaps, videoFilenameExtensions, infoVideo from moving import TimeInterval """ @@ -377,14 +377,20 @@ session.commit() # TODO crawler for video files? -def initializeVideos(session, site, cameraView, directoryName, startTime = None, datetimeFormat = None): +def initializeVideos(session, cameraView, directoryName, startTime = None, datetimeFormat = None): '''Initializes videos with time or tries to guess it from filename directoryName should contain the videos to find and be the relative path from the site location''' names = listdir(directoryName) videoSequences = [] for name in names: + prefix = removeExtension(name) extension = getExtension(name) - print(name, extension) if extension in videoFilenameExtensions: - videoSequences.append(VideoSequence(directoryName+sep+name, startTime, None, cameraView, directoryName+sep+'.sqlite')) - return videoSequences + vidinfo = infoVideo(directoryName+sep+name) + duration = vidinfo['number of frames']#timedelta(minutes = 27, seconds = 33) + fps = vidinfo['fps'] + duration = timedelta(seconds=duration/fps) + videoSequences.append(VideoSequence(directoryName+sep+name, startTime, duration, cameraView, directoryName+sep+prefix+'.sqlite')) + startTime += duration + session.add_all(videoSequences) + session.commit()