Releases: Irrational-Encoding-Wizardry/descale
Releases · Irrational-Encoding-Wizardry/descale
r8
- Switch to VapourSynth API V4
- Add an AviSynth+ plugin (API V8 required)
- Add custom kernels (Functionality is about the same as in AkarinVS's fork, but it's implemented in a different way internally) (VapourSynth plugin only)
- Add
force
/force_h
/force_v
parameter to force sampling even if the resolution stays the same (VapourSynth plugin only)
Custom kernels usage example:
# Debilinear
core.descale.Descale(src, w, h, custom_kernel=lambda x: 1.0 - x, taps=1)
# Delanczos
import math
def sinc(x):
return 1.0 if x == 0 else math.sin(x * math.pi) / (x * math.pi)
taps = 3
core.descale.Descale(src, w, h, custom_kernel=lambda x: sinc(x) * sinc(x / taps), taps=taps)
r7
- Support all constant input formats (internally clips are converted to float before processing and converted back to their original format afterwards; all subsamplings are supported, but for now, left-aligned chroma is always assumed; the python wrapper is now only needed if you don't want to descale chroma)
- Add a generic
Descale
filter that takes a stringkernel
parameter to make it simpler to write wrapper functions - Add
opt
parameter to manually select optimizations - Split the code for the VapourSynth plugin and descale
- Change license to MIT
r6
- Fix memory leak
- Fix potential array bound violation
Hopefully, this is the last bugfix release for a while.
r5
- Statically link
libwinpthread
instead oflibpthread
on Windows
Identical to r4 for other platforms than Windows.
r4
- Lazily generate matrices and do decomposition inside get_frame, to make use of the VS thread pool when multiple descale instances are called (Users of getnative.py benefit greatly from this)
- Fixed rounding on the pixel grid for negative values (Could affect some left/top pixels, but visible difference is probably next to non-existent)
r3
- Restructured the vertical pass to be less stupid with a much better memory access pattern
- Added AVX2 optimizations
- The defaults for Debicubic are now b=0.0 and c=0.5 to be consistent with the new defaults of VapourSynth's resizer
- Added Despline64
r2
- Fixed a bug in the python wrapper of Debicubic that caused c to always equal b
- Added native support for YUV444PS and RGBS to the plugin
- Added some sanity checks
Cross-compiled with gcc for Windows.
r1
Cross-compiled with gcc for Windows with statically linked libgcc, libstdc++, and libwinpthread.