Skip to main content

Find the native resolution(s) of upscaled material (mostly anime)

Project description

Getnative

Find the native resolution(s) of upscaled material (mostly anime)

Usage

Start by executing:

$ getnative [--args] inputFile

If getnative could not be found, try executing this:

# Linux
$ python -m getnative [--args] inputFile

# Windows
$ py -3 -m getnative [--args] inputFile

or

Start by executing:

$ python -m getnative [--args] inputFile

That's it.

Requirements

To run this script you will need:

Installation

After installing the above prerequisites, install the project via:

$ pip install getnative

or

  • Download all files from github
  • Install all Python dependencies through pip install -r requirements.txt

Recommended Windows Installation

Install these programs from their websites:

Once Vapoursynth is installed:

vsrepo.py install descale
vsrepo.py install ffms2
vsrepo.py install lsmas

Install getnative (and Python dependencies):

pip install getnative

Example Output

Input Command:

$ getnative -k bicubic -b 0.33 -c 0.33 -dir "../../Downloads" "../../Downloads/unknown.png"

Terminal Output:

Using imwri as source filter

500/500

Output Path: /Users/infi/Downloads/results

Bicubic b 0.33 c 0.33 AR: 1.78 Steps: 1
Native resolution(s) (best guess): 873p

done in 13.56s

Output Graph:

alt text

Output TXT (summary):

 868		 | 0.0000863251		 | 0.93
 869		 | 0.0000828592		 | 1.04
 870		 | 0.0000734709		 | 1.13
 871		 | 0.0000555885		 | 1.32
 872		 | 0.0000596791		 | 0.93
 873		 | 0.0000011579		 | 51.54
 874		 | 0.0000385670		 | 0.03
 875		 | 0.0000433674		 | 0.89
 876		 | 0.0000548476		 | 0.79
 877		 | 0.0000614557		 | 0.89
 878		 | 0.0000740702		 | 0.83

Args

Property Description Default value Type
frame Specify a frame for the analysis. num_frames//3 Int
kernel Resize kernel to be used bicubic String
bicubic-b B parameter of bicubic resize 1/3 Float
bicubic-c C parameter of bicubic resize 1/3 Float
lanczos-taps Taps parameter of lanczos resize 3 Int
aspect-ratio Force aspect ratio. Only useful for anamorphic input w/h Float
min-height Minimum height to consider 500 Int
max-height Maximum height to consider 1000 Int
is-image Force image input False Action
generate-images Save detail mask as png False Action
plot-scaling Scaling of the y axis. Can be "linear" or "log" log String
plot-format Format of the output image. Specify multiple formats separated by commas. Can be svg, png, tif(f), and more svg String
show-plot-gui Show an interactive plot gui window. False Action
no-save Do not save files to disk. False Action
stepping This changes the way getnative will handle resolutions. Example steps=3 [500p, 503p, 506p ...] 1 Int
output-dir Sets the path of the output dir where you want all results to be saved. (/results will always be added as last folder) (CWD)/results String

CLI Args

Property Description Default value Type
help Automatically render the usage information when running -h or --help False Action
Absolute or relative path to the input file Required String
mode Choose a predefined mode ["bilinear", "bicubic", "bl-bc", "all"] None String
use Use specified source filter (e.g. "lsmas.LWLibavSource") None String

Warning

This script's success rate is far from perfect. If possible, do multiple tests on different frames from the same source. Bright scenes generally yield the most accurate results. Graphs tend to have multiple notches, so the script's assumed resolution may be incorrect. Also, due to the current implementation of the autoguess, it is not possible for the script to automatically recognize 1080p productions. Use your eyes or anibin if necessary.

Thanks

BluBb_mADe, kageru, FichteFoll, stux!, LittlePox

Help?

Join https://discord.gg/UERrfucRFD (Ask in #encode-autism for help)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

getnative-3.3.0.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

getnative-3.3.0-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file getnative-3.3.0.tar.gz.

File metadata

  • Download URL: getnative-3.3.0.tar.gz
  • Upload date:
  • Size: 12.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for getnative-3.3.0.tar.gz
Algorithm Hash digest
SHA256 40c7b05006c63cb94fdfc9bc1ead11bf09e20efb153aa241557ee5c23fa42a01
MD5 bc4dca2578089c49ee27516259b4aebf
BLAKE2b-256 c15e74332e16d2c4882f148bbe92ed7d164618a63440dbd5edc9be5e510a00fa

See more details on using hashes here.

File details

Details for the file getnative-3.3.0-py3-none-any.whl.

File metadata

  • Download URL: getnative-3.3.0-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for getnative-3.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc1a3a6d28cb963cc3448fb9cfc4a837f1ff7436ba415871004984c1fa8462bd
MD5 473d37485bf1aeb19da5fbca0678751d
BLAKE2b-256 c0657931ca7f690a9935cc575d500bcef2b27a36a948f218f72e9d8ded16b4a0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page