Metadata-Version: 2.4
Name: dfttest2
Version: 10
Summary: DFTTest re-implemetation
Project-URL: Source Code, https://github.com/AmusementClub/vs-dfttest2
Project-URL: Bug Tracker, https://github.com/AmusementClub/vs-dfttest2/issues
Project-URL: Repository, https://github.com/Jaded-Encoding-Thaumaturgy/vs-wheels
Author: WolframRhodium
Maintainer-email: Vardë <ichunjo.le.terrible@gmail.com>
License-Expression: GPL-3.0-or-later
License-File: vs-dfttest2/LICENSE
Requires-Python: >=3.12
Requires-Dist: vapoursynth>=75
Provides-Extra: cpu
Requires-Dist: vapoursynth-dfttest2-cpu; extra == 'cpu'
Provides-Extra: cuda
Requires-Dist: vapoursynth-dfttest2-cuda; extra == 'cuda'
Requires-Dist: vapoursynth-dfttest2-nvrtc; extra == 'cuda'
Provides-Extra: cufft
Requires-Dist: vapoursynth-dfttest2-cuda; extra == 'cufft'
Provides-Extra: gcc
Requires-Dist: vapoursynth-dfttest2-gcc; extra == 'gcc'
Provides-Extra: hip
Requires-Dist: vapoursynth-dfttest2-hip; extra == 'hip'
Requires-Dist: vapoursynth-dfttest2-hiprtc; extra == 'hip'
Provides-Extra: hipfft
Requires-Dist: vapoursynth-dfttest2-hip; extra == 'hipfft'
Provides-Extra: hiprtc
Requires-Dist: vapoursynth-dfttest2-hiprtc; extra == 'hiprtc'
Provides-Extra: nvrtc
Requires-Dist: vapoursynth-dfttest2-nvrtc; extra == 'nvrtc'
Description-Content-Type: text/markdown

# dfttest2

A VapourSynth re-implementation of DFTTest.

This package serves as a **meta-package** providing:

1.  A high-level **Python interface** for `dfttest2`.
2.  Optional **backend dependencies** via extras to simplify installation.

## Backends

### **GPU Backends**

| Backend  | Platform                                | Implementation Type        |
| -------- | --------------------------------------- | -------------------------- |
| `nvrtc`  | Windows, Linux (x86-64, aarch64)        | JIT Compilation            |
| `hiprtc` | Windows, Linux (x86-64)                 | JIT Compilation            |
| `cufft`  | Windows, Linux (x86-64, aarch64)        | Library                    |
| `hipfft` | Windows, Linux (x86-64)                 | Library                    |
| `cpu`    | Windows, Linux (x86-64), macOS (x86-64) | VCL                        |
| `gcc`    | All Platforms                           | Compiler Vector Extensions |

### **Which one to use?**

| Backend | Requirement                         |
| ------- | ----------------------------------- |
| NVRTC   | `sbsize=16` and CUDA-enabled system |
| HIPRTC  | `sbsize=16` and HIP-enabled system  |
| cuFFT   | CUDA-enabled system                 |
| hipFFT  | HIP-enabled system                  |
| CPU     | `sbsize=16`                         |
| GCC     | `sbsize=16`                         |

**Approximate Speed:** NVRTC == HIPRTC >> cuFFT > hipFFT > CPU == GCC

## Installation

For example, to install the NVRTC and CPU backends:

```bash
pip install dfttest2[nvrtc,cpu]
```

---

README.md from parent project

---
# vs-dfttest2
DFTTest re-implemetation (CUDA and x86)

## Usage
```python3
from dfttest2 import DFTTest
output = DFTTest(input)
```

See also [VapourSynth-DFTTest](https://github.com/HomeOfVapourSynthEvolution/VapourSynth-DFTTest)

## Compilation
```bash
# additional options: -D ENABLE_CUDA=ON -D ENABLE_CPU=ON
cmake -S . -B build

cmake --build build

cmake --install build
```

If the vapoursynth library cannot be found by pkg-config, then the cmake variable `VS_INCLUDE_DIR` should be set.
