Add Linux stats to Readme.md
This commit is contained in:
237
Readme.md
237
Readme.md
@@ -1,116 +1,123 @@
|
|||||||
## Upscale
|
## Upscale
|
||||||
Automatically upscale and interpolate video files.
|
Automatically upscale and interpolate video files.
|
||||||
|
|
||||||
### Table of Contents
|
### Table of Contents
|
||||||
- [Usage](#usage)
|
- [Usage](#usage)
|
||||||
- [Configuration](#configuration)
|
- [Configuration](#configuration)
|
||||||
- [Stats](#stats)
|
- [Stats](#stats)
|
||||||
- [Real-ESRGAN](#real-esrgan)
|
- [Real-ESRGAN](#real-esrgan)
|
||||||
- [RIFE](#rife)
|
- [RIFE](#rife)
|
||||||
- [SVT-AV1](#svt-av1)
|
- [SVT-AV1](#svt-av1)
|
||||||
- [Requirements](#requirements)
|
- [Requirements](#requirements)
|
||||||
- [Requirements for 1080p, 1080p@48, 4k](#requirements-for-1080p-1080p48-4k)
|
- [Requirements for 1080p, 1080p@48, 4k](#requirements-for-1080p-1080p48-4k)
|
||||||
- [Requirements for 4k48fps](#requirements-for-4k48fps)
|
- [Requirements for 4k48fps](#requirements-for-4k48fps)
|
||||||
- [Installation](#installation)
|
- [Installation](#installation)
|
||||||
- [Windows](#windows)
|
- [Windows](#windows)
|
||||||
- [Arch Linux](#arch-linux)
|
- [Arch Linux](#arch-linux)
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
1. Preparing video file (MKVToolNix)
|
1. Preparing video file (MKVToolNix)
|
||||||
- Make sure video file does NOT have an image attachment
|
- Make sure video file does NOT have an image attachment
|
||||||
- Video file should have ONE `ass` subtitle file
|
- Video file should have ONE `ass` subtitle file
|
||||||
- Name video file similar to the following: `Your Title - 01.mkv`
|
- Name video file similar to the following: `Your Title - 01.mkv`
|
||||||
2. Place `.mkv` file inside `0-Source` folder
|
2. Place `.mkv` file inside `0-Source` folder
|
||||||
3. Execute `python Start.py`
|
3. Execute `python Start.py`
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
The `Start.py` file has two options INSIDE, edit in text editor:
|
The `Start.py` file has two options INSIDE, edit in text editor:
|
||||||
- `INTERPOLATE_4K`: `True` or `False` (wether or not 4k48fps should be outputted)
|
- `INTERPOLATE_4K`: `True` or `False` (wether or not 4k48fps should be outputted)
|
||||||
- `MAX_INPUT_WIDTH`: `'720'` (downscales the video to this width, as 1080p upscaling would be insane)
|
- `MAX_INPUT_WIDTH`: `'720'` (downscales the video to this width, as 1080p upscaling would be insane)
|
||||||
|
|
||||||
## Stats
|
## Stats
|
||||||
|
|
||||||
#### Real-ESRGAN
|
_Note: The VRAM usage is the one reported in `nvidia-smi` and is system wide. Subtract ~1GB for OS._
|
||||||
| Input | Output | VRAM | RAM | GPU | FPS | OS |
|
|
||||||
| :------: | :-------: | :----: | :----: | :----------: | :-------: | :-----: |
|
#### Real-ESRGAN
|
||||||
| 1280x720 | 2120x2880 | ~4.4GB | ~1,8GB | 3090 (@360W) | ~13.56fps | Windows |
|
| Input | Output | VRAM | RAM | GPU | FPS | OS |
|
||||||
|
| :------: | :-------: | :----: | :----: | :----------: | :-------: | :------: |
|
||||||
#### RIFE
|
| 1280x720 | 2120x2880 | ~4.4GB | ~1.8GB | 3090 (@360W) | ~13.56fps | Windows |
|
||||||
| Input | Output | VRAM | RAM | GPU | FPS | OS |
|
| 1280x720 | 2120x2880 | ~4.4GB | ~2.4GB | 3090 (@350W) | ~13.73fps | Linux 🐧 |
|
||||||
| :----------: | :----------: | :----: | :----: | :----------: | :----: | :-----: |
|
|
||||||
| 1080p@23.976 | 1080p@47.952 | ~6.6GB | ~4.0GB | 3090 (@360W) | ~60fps | Windows |
|
#### RIFE
|
||||||
| 2160p@23.976 | 2160p@47.952 | <span style="color:red">~19.4GB</span> | ~8.0GB | 3090 (@360W) | ~18fps | Windows |
|
| Input | Output | VRAM | RAM | GPU | FPS | OS |
|
||||||
|
| :-------------: | :-------------: | :----: | :----: | :----------: | :----: | :------: |
|
||||||
#### SVT-AV1
|
| 1080p 23.976fps | 1080p 47.952fps | ~6.6GB | ~4.0GB | 3090 (@360W) | ~60fps | Windows |
|
||||||
Settings: CRF 26, Preset 6. See [encodeCDN.py](/utils/encodeCDN.py).
|
| 1080p 23.976fps | 1080p 47.952fps | ~7.6GB | ~8.4GB | 3090 (@350W) | ~64fps | Linux 🐧 |
|
||||||
|
| 2160p 23.976fps | 2160p 47.952fps | <span style="color:red">~19.4GB</span> | ~8.0GB | 3090 (@360W) | ~18fps | Windows |
|
||||||
| Input | RAM | FPS | CPU | OS |
|
| 2160p 23.976fps | dnf | n/a | <span style="color:red">~31.0GB (run out of memory)</span> | 3090 (@360W) | n/a | Linux 🐧 |
|
||||||
| :-------: | :-----: | :-----: | :-----------------: | :-----: |
|
|
||||||
| 1920x1080 | ~3.9GB | ~76fps | Ryzen 7900x (@130W) | Windows |
|
#### SVT-AV1
|
||||||
| 3840x2160 | <span style="color:gold">~12.3GB</span> | ~35fps | Ryzen 7900x (@130W) | Windows |
|
Settings: CRF 26, Preset 6. See [encodeCDN.py](/utils/encodeCDN.py).
|
||||||
|
|
||||||
## Requirements
|
| Input | RAM | FPS | CPU | OS |
|
||||||
- **OS**: Windows or Linux
|
| :-------: | :-----: | :-----: | :-----------------: | :------: |
|
||||||
- **Python**: >=3.12 (Windows) or Python 3.13 (Linux)
|
| 1920x1080 | ~3.9GB | ~76fps | Ryzen 7900x (@130W) | Windows |
|
||||||
- **RAM**: Min: 16GB - Recommended: 32GB
|
| 1920x1080 | ~4.8GB | ~80fps | Ryzen 7900x (@130W) | Linux 🐧 |
|
||||||
|
| 3840x2160 | <span style="color:gold">~12.3GB</span> | ~35fps | Ryzen 7900x (@130W) | Windows |
|
||||||
#### Requirements for 1080p, 1080p@48, 4k
|
| 3840x2160 | <span style="color:gold">~13.0GB</span> | ~37fps | Ryzen 7900x (@130W) | Linux 🐧 |
|
||||||
- **GPU**: NVIDIA GPU with 8GB+ of VRAM
|
|
||||||
|
## Requirements
|
||||||
#### Requirements for 4k48fps
|
- **OS**: Windows or Linux
|
||||||
- **GPU**: NVIDIA GPU with 24GB of VRAM
|
- **Python**: >=3.12 (Windows) or Python 3.13 (Linux)
|
||||||
- **RAM** (Linux): 48GB (there is a memory leak in VapourSynth)
|
- **RAM**: Min: 16GB - Recommended: 32GB
|
||||||
|
|
||||||
## Installation
|
#### Requirements for 1080p, 1080p@48, 4k
|
||||||
|
- **GPU**: NVIDIA GPU with 8GB+ of VRAM
|
||||||
#### Windows
|
|
||||||
1. Download and install [Python 3.12](https://www.python.org/ftp/python/3.12.8/python-3.12.8-amd64.exe) - Check option to add to path
|
#### Requirements for 4k48fps
|
||||||
2. Download and install [Imagemagick](https://imagemagick.org/script/download.php#windows) - Check option to install legacy tools (Required for creating player previews `thumbs.vtt` and `sprite.jpg`)
|
- **GPU**: NVIDIA GPU with 24GB of VRAM
|
||||||
3. Download and install [MKVToolNix](https://mkvtoolnix.download/downloads.html#windows) - **Add to system path environment manually**
|
- **RAM** (Linux): 48GB (there is a memory leak in VapourSynth)
|
||||||
4. Download [ffmpeg](https://www.gyan.dev/ffmpeg/builds/#release-builds) - Either place it inside the MKVToolNix install directory or create a new directory somewhere and **add it to system path environment**
|
|
||||||
5. Download and install [VapourSynth R72](https://github.com/vapoursynth/vapoursynth/releases) - Check options to install vsrepo, avisynth support not required
|
## Installation
|
||||||
6. Install `vsrepo` packages, in Terminal (cmd, NOT Powershell!):
|
|
||||||
```cmd
|
#### Windows
|
||||||
:: FFmpeg Source Plugin
|
1. Download and install [Python 3.12](https://www.python.org/ftp/python/3.12.8/python-3.12.8-amd64.exe) - Check option to add to path
|
||||||
vsrepo.py install ffms2
|
2. Download and install [Imagemagick](https://imagemagick.org/script/download.php#windows) - Check option to install legacy tools (Required for creating player previews `thumbs.vtt` and `sprite.jpg`)
|
||||||
|
3. Download and install [MKVToolNix](https://mkvtoolnix.download/downloads.html#windows) - **Add to system path environment manually**
|
||||||
:: (optional) Miscfilters Plugin, used for scenedetection in vsrife
|
4. Download [ffmpeg](https://www.gyan.dev/ffmpeg/builds/#release-builds) - Either place it inside the MKVToolNix install directory or create a new directory somewhere and **add it to system path environment**
|
||||||
:: Unsure if it even works
|
5. Download and install [VapourSynth R72](https://github.com/vapoursynth/vapoursynth/releases) - Check options to install vsrepo, avisynth support not required
|
||||||
vsrepo.py install misc
|
6. Install `vsrepo` packages, in Terminal (cmd, NOT Powershell!):
|
||||||
```
|
```cmd
|
||||||
7. Install `pip` packages
|
:: FFmpeg Source Plugin
|
||||||
```cmd
|
vsrepo.py install ffms2
|
||||||
pip install packaging setuptools wheel
|
|
||||||
pip install pymediainfo python-dateutil
|
:: (optional) Miscfilters Plugin, used for scenedetection in vsrife
|
||||||
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu126
|
:: Unsure if it even works
|
||||||
pip install vsrealesrgan vsrife
|
vsrepo.py install misc
|
||||||
```
|
```
|
||||||
8. Install models used by `vsrealesrgan` and `vsrife`
|
7. Install `pip` packages
|
||||||
```ps
|
```cmd
|
||||||
python -m vsrealesrgan
|
pip install packaging setuptools wheel
|
||||||
python -m vsrife
|
pip install pymediainfo python-dateutil
|
||||||
```
|
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu126
|
||||||
|
pip install vsrealesrgan vsrife
|
||||||
#### Arch Linux
|
```
|
||||||
Sadly there is some sort of memory leak in vsrife or vapoursynth under Linux.
|
8. Install models used by `vsrealesrgan` and `vsrife`
|
||||||
|
```ps
|
||||||
If you have 32GB of RAM it should suffice for everything EXCEPT 4k48p, there you probably need 48GB or 64GB of RAM.
|
python -m vsrealesrgan
|
||||||
|
python -m vsrife
|
||||||
```bash
|
```
|
||||||
# System Packages
|
|
||||||
sudo pacman -S python vapoursynth ffms2 ffmpeg mkvtoolnix-cli mediainfo imagemagick
|
#### Arch Linux
|
||||||
|
Sadly there is some sort of memory leak in vsrife or vapoursynth under Linux.
|
||||||
# Setup virtual environment (in upscale dirctory)
|
|
||||||
python -m venv .venv
|
If you have 32GB of RAM it should suffice for everything EXCEPT 4k48p, there you probably need 48GB or 64GB of RAM.
|
||||||
source .venv/bin/activate
|
|
||||||
|
```bash
|
||||||
# Install pip dependencies
|
# System Packages
|
||||||
pip install typing-extensions packaging setuptools wheel
|
sudo pacman -S python vapoursynth ffms2 ffmpeg mkvtoolnix-cli mediainfo imagemagick
|
||||||
pip install pymediainfo python-dateutil
|
|
||||||
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu126
|
# Setup virtual environment (in upscale dirctory)
|
||||||
pip install vsrealesrgan vsrife
|
python -m venv .venv
|
||||||
|
source .venv/bin/activate
|
||||||
# Install models
|
|
||||||
python -m vsrealesrgan
|
# Install pip dependencies
|
||||||
python -m vsrife
|
pip install typing-extensions packaging setuptools wheel
|
||||||
|
pip install pymediainfo python-dateutil
|
||||||
|
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu126
|
||||||
|
pip install vsrealesrgan vsrife
|
||||||
|
|
||||||
|
# Install models
|
||||||
|
python -m vsrealesrgan
|
||||||
|
python -m vsrife
|
||||||
```
|
```
|
Reference in New Issue
Block a user