Vapoursynth-ATWT
Vapoursynth-ATWT is a VapourSynth plugin that implements the À Trous Wavelet Transform for frequency separation. It decomposes a video clip into multiple frequency layers (Detail) and a residual layer (Base).
Installation
pip install vapoursynth-atwt
Core Plugin API
The plugin exports two low-level functions.
atwt.ExtractFrequency(clip, radius=1)
Extracts a detail layer from the input clip.
- Formula: $Detail = Src - Blur(Src)$
- clip: Input clip.
- radius: The dilation factor of the wavelet kernel. Step size = $2^{(radius-1)}$. Default is 1.
atwt.ReplaceFrequency(base, detail)
Recombines a base layer with a detail layer.
- Formula: $Output = Base + (Detail - Neutral)$
- base: The low-frequency clip.
- detail: The high-frequency clip (result from
ExtractFrequency). - Note: This function automatically handles neutral grey offsets for integer formats.
Python Helper Scripts
To modify specific levels, one cannot simply call ExtractFrequency(radius=2) on the source, as that would include Level 1 details as well. One must peel the layers recursively.
import vapoursynth as vs
core = vs.core
def atwt_decompose(clip: vs.VideoNode, levels: int = 2) -> list[vs.VideoNode]:
"""
[Level_1, Level_2, ..., Level_N, Base(Residual)]
layers[0] -> Level 1
layers[1] -> Level 2
layers[-1] -> Base
"""
details = []
current_base = clip
for i in range(1, levels + 1):
d = core.atwt.ExtractFrequency(current_base, radius=i)
next_base = core.std.MakeDiff(current_base, d)
details.append(d)
current_base = next_base
return details + [current_base]
def atwt_recombine(layers: list[vs.VideoNode]) -> vs.VideoNode:
current_clip = layers[-1]
details_reversed = layers[:-1][::-1]
for detail in details_reversed:
current_clip = core.atwt.ReplaceFrequency(base=current_clip, detail=detail)
return current_clip
Compilation
A C++23-compatible compiler is required.
python -m pip install build
python -m build
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vapoursynth_atwt-2.tar.gz.
File metadata
- Download URL: vapoursynth_atwt-2.tar.gz
- Upload date:
- Size: 19.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb1ad8a3c4f0b0bc6bc8fa747217b20fb12b4be363f850ecc0eb68dc9ee6e243
|
|
| MD5 |
03c91580edd62569f99832696a1418c5
|
|
| BLAKE2b-256 |
0b8192e65649b63d4e06055eb2abd35a374f6720036bc0a5bed9fa60ae2abe23
|
Provenance
The following attestation bundles were made for vapoursynth_atwt-2.tar.gz:
Publisher:
publish.yml on pifroggi/Vapoursynth-ATWT
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_atwt-2.tar.gz -
Subject digest:
bb1ad8a3c4f0b0bc6bc8fa747217b20fb12b4be363f850ecc0eb68dc9ee6e243 - Sigstore transparency entry: 2772727452
- Sigstore integration time:
-
Permalink:
pifroggi/Vapoursynth-ATWT@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Branch / Tag:
refs/tags/R2 - Owner: https://github.com/pifroggi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Trigger Event:
release
-
Statement type:
File details
Details for the file vapoursynth_atwt-2-py3-none-win_amd64.whl.
File metadata
- Download URL: vapoursynth_atwt-2-py3-none-win_amd64.whl
- Upload date:
- Size: 77.6 kB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
429417468bdc70099da585b9712cde30c69cff9db3728ad8029cd6b5e671b9be
|
|
| MD5 |
f75e5fd0d5221002213590cc15380398
|
|
| BLAKE2b-256 |
f9370837a2050a299a091a73682b1b94060106fd6121c3ed78783c062df56d10
|
Provenance
The following attestation bundles were made for vapoursynth_atwt-2-py3-none-win_amd64.whl:
Publisher:
publish.yml on pifroggi/Vapoursynth-ATWT
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_atwt-2-py3-none-win_amd64.whl -
Subject digest:
429417468bdc70099da585b9712cde30c69cff9db3728ad8029cd6b5e671b9be - Sigstore transparency entry: 2772727555
- Sigstore integration time:
-
Permalink:
pifroggi/Vapoursynth-ATWT@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Branch / Tag:
refs/tags/R2 - Owner: https://github.com/pifroggi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Trigger Event:
release
-
Statement type:
File details
Details for the file vapoursynth_atwt-2-py3-none-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: vapoursynth_atwt-2-py3-none-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 1.1 MB
- Tags: Python 3, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9303f155a3f51eb0b14f2b9de9019c11682be0c9510ede2ef7a27751a8e1d6b3
|
|
| MD5 |
50edcdde5d7918d061355a11d85b2178
|
|
| BLAKE2b-256 |
62ff50dfb317e1e194843a04774aa6a99e9eff402a35cc560d2af1c857b33c42
|
Provenance
The following attestation bundles were made for vapoursynth_atwt-2-py3-none-musllinux_1_2_x86_64.whl:
Publisher:
publish.yml on pifroggi/Vapoursynth-ATWT
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_atwt-2-py3-none-musllinux_1_2_x86_64.whl -
Subject digest:
9303f155a3f51eb0b14f2b9de9019c11682be0c9510ede2ef7a27751a8e1d6b3 - Sigstore transparency entry: 2772727594
- Sigstore integration time:
-
Permalink:
pifroggi/Vapoursynth-ATWT@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Branch / Tag:
refs/tags/R2 - Owner: https://github.com/pifroggi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Trigger Event:
release
-
Statement type:
File details
Details for the file vapoursynth_atwt-2-py3-none-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: vapoursynth_atwt-2-py3-none-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 1.0 MB
- Tags: Python 3, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c77e8e85c56357bbe2b4601fa0c8f745a4d8a45fa9f35e2e7f3f796bd536fc04
|
|
| MD5 |
48f913732335d2efacef9e2cd524f278
|
|
| BLAKE2b-256 |
7e37bc0dacf68de0eab2721eb369db54aa04df149e55dce4df61530d3369ca97
|
Provenance
The following attestation bundles were made for vapoursynth_atwt-2-py3-none-musllinux_1_2_aarch64.whl:
Publisher:
publish.yml on pifroggi/Vapoursynth-ATWT
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_atwt-2-py3-none-musllinux_1_2_aarch64.whl -
Subject digest:
c77e8e85c56357bbe2b4601fa0c8f745a4d8a45fa9f35e2e7f3f796bd536fc04 - Sigstore transparency entry: 2772727695
- Sigstore integration time:
-
Permalink:
pifroggi/Vapoursynth-ATWT@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Branch / Tag:
refs/tags/R2 - Owner: https://github.com/pifroggi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Trigger Event:
release
-
Statement type:
File details
Details for the file vapoursynth_atwt-2-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: vapoursynth_atwt-2-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 29.2 kB
- Tags: Python 3, manylinux: glibc 2.24+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e02f250e42cca2c911e65c6ff153036502a8797a5596db701b63823e6e04c57c
|
|
| MD5 |
aa6c525ee845cbcc0de8c14825a47fa8
|
|
| BLAKE2b-256 |
1371f24e444a4efe8fc05651173cd0af0d19842cbefe67249498556ae15115b4
|
Provenance
The following attestation bundles were made for vapoursynth_atwt-2-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
publish.yml on pifroggi/Vapoursynth-ATWT
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_atwt-2-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
e02f250e42cca2c911e65c6ff153036502a8797a5596db701b63823e6e04c57c - Sigstore transparency entry: 2772727731
- Sigstore integration time:
-
Permalink:
pifroggi/Vapoursynth-ATWT@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Branch / Tag:
refs/tags/R2 - Owner: https://github.com/pifroggi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Trigger Event:
release
-
Statement type:
File details
Details for the file vapoursynth_atwt-2-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: vapoursynth_atwt-2-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 32.3 kB
- Tags: Python 3, manylinux: glibc 2.24+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7eaa1f317986d32fe93c75fae543f102bc3ffd9a7fffe4cc54b9e45f4e3b3f8e
|
|
| MD5 |
6456dad9d17d9202ec99201250efc0b4
|
|
| BLAKE2b-256 |
06be57f40db62603e69d587ef1e2ec96c897e0a6c10713997528596cd8f49d32
|
Provenance
The following attestation bundles were made for vapoursynth_atwt-2-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:
Publisher:
publish.yml on pifroggi/Vapoursynth-ATWT
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_atwt-2-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl -
Subject digest:
7eaa1f317986d32fe93c75fae543f102bc3ffd9a7fffe4cc54b9e45f4e3b3f8e - Sigstore transparency entry: 2772727647
- Sigstore integration time:
-
Permalink:
pifroggi/Vapoursynth-ATWT@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Branch / Tag:
refs/tags/R2 - Owner: https://github.com/pifroggi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Trigger Event:
release
-
Statement type:
File details
Details for the file vapoursynth_atwt-2-py3-none-macosx_13_0_x86_64.whl.
File metadata
- Download URL: vapoursynth_atwt-2-py3-none-macosx_13_0_x86_64.whl
- Upload date:
- Size: 23.4 kB
- Tags: Python 3, macOS 13.0+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
728797a58b3a89fc391f230bde1c5f442bfe20d6d5eb86ccab5ab6657b5fdddc
|
|
| MD5 |
1ce712778763eb11e488d74b8cb07a86
|
|
| BLAKE2b-256 |
b1bb4f9f6b8fccb1b9c33ca892ac9b5743b4634a308b5a2646396e2c0fdc26dc
|
Provenance
The following attestation bundles were made for vapoursynth_atwt-2-py3-none-macosx_13_0_x86_64.whl:
Publisher:
publish.yml on pifroggi/Vapoursynth-ATWT
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_atwt-2-py3-none-macosx_13_0_x86_64.whl -
Subject digest:
728797a58b3a89fc391f230bde1c5f442bfe20d6d5eb86ccab5ab6657b5fdddc - Sigstore transparency entry: 2772727780
- Sigstore integration time:
-
Permalink:
pifroggi/Vapoursynth-ATWT@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Branch / Tag:
refs/tags/R2 - Owner: https://github.com/pifroggi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Trigger Event:
release
-
Statement type:
File details
Details for the file vapoursynth_atwt-2-py3-none-macosx_13_0_arm64.whl.
File metadata
- Download URL: vapoursynth_atwt-2-py3-none-macosx_13_0_arm64.whl
- Upload date:
- Size: 23.1 kB
- Tags: Python 3, macOS 13.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8565e337ebc2eee381167b536573648ed1180740e4e2a77e51dff8298c373406
|
|
| MD5 |
a8e4752c5f132cc88a16f1f467417983
|
|
| BLAKE2b-256 |
ab9108f27c18b6ea149e702ad7d0db997629e26630d2d568b072ce2161a5eb0e
|
Provenance
The following attestation bundles were made for vapoursynth_atwt-2-py3-none-macosx_13_0_arm64.whl:
Publisher:
publish.yml on pifroggi/Vapoursynth-ATWT
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_atwt-2-py3-none-macosx_13_0_arm64.whl -
Subject digest:
8565e337ebc2eee381167b536573648ed1180740e4e2a77e51dff8298c373406 - Sigstore transparency entry: 2772727509
- Sigstore integration time:
-
Permalink:
pifroggi/Vapoursynth-ATWT@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Branch / Tag:
refs/tags/R2 - Owner: https://github.com/pifroggi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6862812b2ae7a51a2470be9dd8e48394addf7fc6 -
Trigger Event:
release
-
Statement type: