| Index: webrtc/tools/video_analysis.py
|
| diff --git a/webrtc/tools/video_analysis.py b/webrtc/tools/video_analysis.py
|
| index 68575f3e26904302235f33e47c63ac91060ecd0d..4bc45ffdffd91e8ba818c06b5ed1fd43798839cf 100755
|
| --- a/webrtc/tools/video_analysis.py
|
| +++ b/webrtc/tools/video_analysis.py
|
| @@ -41,17 +41,17 @@ def _ParseArgs():
|
| usage = 'usage: %prog [options]'
|
| parser = optparse.OptionParser(usage=usage)
|
|
|
| - parser.add_option('--frame_width', type='string', default='1280',
|
| + parser.add_option('--frame_width', type='int', default=1280,
|
| help='Width of the recording. Default: %default')
|
| - parser.add_option('--frame_height', type='string', default='720',
|
| + parser.add_option('--frame_height', type='int', default=720,
|
| help='Height of the recording. Default: %default')
|
| - parser.add_option('--framerate', type='string', default='60',
|
| + parser.add_option('--framerate', type='int', default=60,
|
| help='Recording framerate. Default: %default')
|
| - parser.add_option('--ref_duration', type='string', default='20',
|
| + parser.add_option('--ref_duration', type='int', default=20,
|
| help='Reference recording duration. Default: %default')
|
| - parser.add_option('--test_duration', type='string', default='10',
|
| + parser.add_option('--test_duration', type='int', default=10,
|
| help='Test recording duration. Default: %default')
|
| - parser.add_option('--time_between_recordings', type=float, default=5,
|
| + parser.add_option('--time_between_recordings', type='int', default=5,
|
| help='Time between starting test recording after ref.'
|
| 'Default: %default')
|
| parser.add_option('--ref_video_device', type='string', default='/dev/video0',
|
| @@ -279,14 +279,14 @@ def StartRecording(options, ref_file_location, test_file_location):
|
| ref_cmd = [
|
| options.ffmpeg,
|
| '-v', 'error',
|
| - '-s', options.frame_width + 'x' + options.frame_height,
|
| - '-framerate', options.framerate,
|
| - '-f', options.recording_api,
|
| - '-i', options.ref_video_device,
|
| - '-pix_fmt', options.pixel_format,
|
| - '-s', options.frame_width + 'x' + options.frame_height,
|
| - '-t', options.ref_duration,
|
| - '-framerate', options.framerate,
|
| + '-s', '%dx%d' % (options.frame_width, options.frame_height),
|
| + '-r', '%d' % options.framerate,
|
| + '-f', '%s' % options.recording_api,
|
| + '-i', '%s' % options.ref_video_device,
|
| + '-pix_fmt', '%s' % options.pixel_format,
|
| + '-s', '%dx%d' % (options.frame_width, options.frame_height),
|
| + '-t', '%d' % options.ref_duration,
|
| + '-r', '%d' % options.framerate,
|
| ref_file
|
| ]
|
|
|
| @@ -294,25 +294,25 @@ def StartRecording(options, ref_file_location, test_file_location):
|
| test_cmd = [
|
| options.ffmpeg,
|
| '-v', 'error',
|
| - '-s', options.frame_width + 'x' + options.frame_height,
|
| - '-framerate', options.framerate,
|
| - '-f', options.recording_api,
|
| - '-i', options.test_video_device,
|
| - '-pix_fmt', options.pixel_format,
|
| - '-s', options.frame_width + 'x' + options.frame_height,
|
| - '-t', options.test_duration,
|
| - '-framerate', options.framerate,
|
| + '-s', '%dx%d' % (options.frame_width, options.frame_height),
|
| + '-r', '%d' % options.framerate,
|
| + '-f', '%s' % options.recording_api,
|
| + '-i', '%s' % options.test_video_device,
|
| + '-pix_fmt', '%s' % options.pixel_format,
|
| + '-s', '%dx%d' % (options.frame_width, options.frame_height),
|
| + '-t', '%d' % options.test_duration,
|
| + '-r', '%d' % options.framerate,
|
| test_file
|
| ]
|
| print 'Trying to record from reference recorder...'
|
| - ref_recorder = subprocess.Popen(ref_cmd, stderr=sys.stderr)
|
| + ref_recorder = subprocess.Popen(ref_cmd)
|
|
|
| # Start the 2nd recording a little later to ensure the 1st one has started.
|
| # TODO(jansson) Check that the ref_recorder output file exists rather than
|
| # using sleep.
|
| time.sleep(options.time_between_recordings)
|
| print 'Trying to record from test recorder...'
|
| - test_recorder = subprocess.Popen(test_cmd, stderr=sys.stderr)
|
| + test_recorder = subprocess.Popen(test_cmd)
|
| test_recorder.wait()
|
| ref_recorder.wait()
|
|
|
| @@ -361,9 +361,9 @@ def FlipAndCropRecordings(options, test_file_name, test_file_location,
|
| ref_video_crop_cmd = [
|
| options.ffmpeg,
|
| '-v', 'error',
|
| - '-s', options.frame_width + 'x' + options.frame_height,
|
| - '-i', os.path.join(ref_file_location, ref_file_name),
|
| - '-vf', options.ref_crop_parameters,
|
| + '-s', '%dx%d' % (options.frame_width, options.frame_height),
|
| + '-i', '%s' % os.path.join(ref_file_location, ref_file_name),
|
| + '-vf', '%s' % options.ref_crop_parameters,
|
| '-c:a', 'copy',
|
| cropped_ref_file
|
| ]
|
| @@ -376,9 +376,9 @@ def FlipAndCropRecordings(options, test_file_name, test_file_location,
|
| test_video_crop_cmd = [
|
| options.ffmpeg,
|
| '-v', 'error',
|
| - '-s', options.frame_width + 'x' + options.frame_height,
|
| - '-i', os.path.join(test_file_location, test_file_name),
|
| - '-vf', options.test_crop_parameters,
|
| + '-s', '%dx%d' % (options.frame_width, options.frame_height),
|
| + '-i', '%s' % os.path.join(test_file_location, test_file_name),
|
| + '-vf', '%s' % options.test_crop_parameters,
|
| '-c:a', 'copy',
|
| cropped_test_file
|
| ]
|
| @@ -434,22 +434,22 @@ def CompareVideos(options, cropped_ref_file, cropped_test_file):
|
| # string: 'hflip, crop=950:420:130:56'
|
| for param in options.ref_crop_parameters.split('crop'):
|
| if param[0] == '=':
|
| - crop_width = param.split(':')[0].split('=')[1]
|
| - crop_height = param.split(':')[1]
|
| + crop_width = int(param.split(':')[0].split('=')[1])
|
| + crop_height = int(param.split(':')[1])
|
|
|
| compare_cmd = [
|
| compare_videos_script,
|
| - '--ref_video', cropped_ref_file,
|
| - '--test_video', cropped_test_file,
|
| - '--frame_analyzer', os.path.abspath(options.frame_analyzer),
|
| - '--zxing_path', options.zxing_path,
|
| - '--ffmpeg_path', options.ffmpeg,
|
| - '--stats_file_ref', os.path.join(os.path.dirname(cropped_ref_file),
|
| - cropped_ref_file + '_stats.txt'),
|
| - '--stats_file_test', os.path.join(os.path.dirname(cropped_test_file),
|
| - cropped_test_file + '_stats.txt'),
|
| - '--yuv_frame_height', crop_height,
|
| - '--yuv_frame_width', crop_width
|
| + '--ref_video=%s' % cropped_ref_file,
|
| + '--test_video=%s' % cropped_test_file,
|
| + '--frame_analyzer=%s' % os.path.abspath(options.frame_analyzer),
|
| + '--zxing_path=%s' % options.zxing_path,
|
| + '--ffmpeg_path=%s' % options.ffmpeg,
|
| + '--stats_file_ref=%s_stats.txt' %
|
| + os.path.join(os.path.dirname(cropped_ref_file), cropped_ref_file),
|
| + '--stats_file_test=%s_stats.txt' %
|
| + os.path.join(os.path.dirname(cropped_test_file), cropped_test_file),
|
| + '--yuv_frame_height=%d' % crop_height,
|
| + '--yuv_frame_width=%d' % crop_width
|
| ]
|
|
|
| with open(result_file_name, 'w') as f:
|
|
|