MCPcopy Create free account
hub / github.com/Infiziert90/getnative / _getnative

Function _getnative

getnative/app.py:352–381  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

350
351
352def _getnative():
353 args = parser.parse_args()
354
355 if args.use:
356 source_filter = get_attr(core, args.use)
357 if not source_filter:
358 raise GetnativeException(f"{args.use} is not available.")
359 print(f"Using {args.use} as source filter", file=sys.stderr)
360 else:
361 source_filter = get_source_filter(core, imwri, args)
362
363 src = source_filter(args.input_file)
364
365 mode = [None] # default
366 if args.mode == "bilinear":
367 mode = [common_scaler["bilinear"][0]]
368 elif args.mode == "bicubic":
369 mode = [scaler for scaler in common_scaler["bicubic"]]
370 elif args.mode == "bl-bc":
371 mode = [scaler for scaler in common_scaler["bicubic"]]
372 mode.append(common_scaler["bilinear"][0])
373 elif args.mode == "all":
374 mode = [s for scaler in common_scaler.values() for s in scaler]
375
376 loop = asyncio.get_event_loop()
377 for i, scaler in enumerate(mode):
378 if scaler is not None and scaler.plugin is None:
379 print(f"Warning: No correct descale version found for {scaler}, continuing with next scaler when available.", file=sys.stderr)
380 continue
381 loop.run_until_complete(getnative(args, src, scaler, first_time=True if i == 0 else False))
382
383
384parser = argparse.ArgumentParser(description='Find the native resolution(s) of upscaled material (mostly anime)')

Callers 1

mainFunction · 0.85

Calls 4

get_attrFunction · 0.90
GetnativeExceptionClass · 0.90
get_source_filterFunction · 0.90
getnativeFunction · 0.85

Tested by

no test coverage detected