parser.add_argument('-d', '--dir', help='Convert whole directory') parser.add_argument('-v','--verbose', action="store_true", default=False, help="Print logger messages") args = parser.parse_args() if args.verbose: level = logging.DEBUG else: level = logging.INFO logging.basicConfig(level=level) if args.file is not None: file_list = [args.file] elif args.dir is not None: file_list = glob.glob(os.path.join(args.dir, '*.bhv')) else: parser.print_help() file_list = [] for file in file_list: print 'Converting {:s}'.format(file) bhv = brd.read_bhv(fname = file) fout = file.replace('.bhv','.csv') import csv with open(fout, 'wb') as csvfile: print 'Writing {:s}'.format(fout) writer = csv.writer(csvfile) writer.writerow(['Trial no', 'Block no', 'Condition no', 'Trial error', 'reaction time']) for tn,blk,cond,res,rt in zip(bhv['TrialNumber'], bhv['BlockNumber'], bhv['ConditionNumber'], bhv['TrialError'], bhv['ReactionTime']): writer.writerow([tn, blk, cond, res, rt])
ffmpeg_command = ['ffmpeg','-i', tdir + '/frame%05d.png', '-vcodec', 'libx264', '-x264opts', 'keyint=123:min-keyint=20', '-r', str(options['fps']), '-an', '-y', '-f', 'avi', options['movie name']] logger.debug(ffmpeg_command) if subprocess.call(ffmpeg_command) is 0: logger.debug('movie creation successful') if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument('-f','--file', help=".bhv file full path") parser.add_argument('-t', '--trial', help="Trial number", default=0, type=int) parser.add_argument('-x', '--speed', help="Speed multiplier of movie relative to actual speed", default=1.0, type=float) parser.add_argument('--fps', help="fps of video", default=25.0, type=float) parser.add_argument('-v','--verbose', action="store_true", default=False, help="Print logger messages") args = parser.parse_args() if args.verbose: level = logging.DEBUG else: level = logging.ERROR logging.basicConfig(level=level) options = { 'speed': args.speed, 'tstep': (1000* args.speed)/args.fps, 'movie name': os.path.basename(args.file)[:-4] + '_t{:04d}_{:1.1f}.avi'.format(args.trial, args.speed), 'fps': args.fps } bhv = brd.read_bhv(fname = args.file) movie_data = prepare_trial(bhv, args.trial - 1, options) play(movie_data)
help="Speed multiplier of movie relative to actual speed", default=1.0, type=float) parser.add_argument('--fps', help="fps of video", default=25.0, type=float) parser.add_argument('-v', '--verbose', action="store_true", default=False, help="Print logger messages") args = parser.parse_args() if args.verbose: level = logging.DEBUG else: level = logging.ERROR logging.basicConfig(level=level) options = { 'speed': args.speed, 'tstep': (1000 * args.speed) / args.fps, 'movie name': os.path.basename(args.file)[:-4] + '_t{:04d}_{:1.1f}.avi'.format(args.trial, args.speed), 'fps': args.fps } bhv = brd.read_bhv(fname=args.file) movie_data = prepare_trial(bhv, args.trial - 1, options) play(movie_data)