# start execution try: # start timer begin_time = time.time() # initialize upscaler object upscaler = Upscaler(input_path=video2x_args.input, output_path=video2x_args.output, driver_settings=driver_settings, ffmpeg_settings=ffmpeg_settings) # set upscaler optional options upscaler.driver = video2x_args.driver upscaler.scale_width = video2x_args.width upscaler.scale_height = video2x_args.height upscaler.scale_ratio = video2x_args.ratio upscaler.processes = video2x_args.processes upscaler.video2x_cache_directory = video2x_cache_directory upscaler.image_format = image_format upscaler.preserve_frames = preserve_frames # run upscaler upscaler.run() Avalon.info( _('Program completed, taking {} seconds').format( round((time.time() - begin_time), 5))) except Exception: Avalon.error(_('An exception has occurred'))
# check for input output format mismatch if args.output.is_dir(): Avalon.error('Input and output path type mismatch') Avalon.error('Input is single file but output is directory') raise Exception('input output path type mismatch') if not re.search(r'.*\..*$', str(args.output)): Avalon.error('No suffix found in output file path') Avalon.error('Suffix must be specified for FFmpeg') raise Exception('No suffix specified') upscaler = Upscaler(input_video=args.input, output_video=args.output, method=args.method, waifu2x_settings=waifu2x_settings, ffmpeg_settings=ffmpeg_settings) # set optional options upscaler.waifu2x_driver = args.driver upscaler.scale_width = args.width upscaler.scale_height = args.height upscaler.scale_ratio = args.ratio upscaler.model_dir = args.model_dir upscaler.threads = args.threads upscaler.video2x_cache_directory = video2x_cache_directory upscaler.image_format = image_format upscaler.preserve_frames = preserve_frames # run upscaler upscaler.create_temp_directories() upscaler.run() upscaler.cleanup_temp_directories() # if input specified is a directory elif args.input.is_dir(): # upscale videos in a directory