Skip to content

Releases: Irrational-Encoding-Wizardry/descale

r8

02 Apr 10:00
Compare
Choose a tag to compare
  • 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

30 Sep 15:35
Compare
Choose a tag to compare
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 string kernel 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

14 May 18:59
Compare
Choose a tag to compare
r6
  • Fix memory leak
  • Fix potential array bound violation

Hopefully, this is the last bugfix release for a while.

r5

12 May 00:20
Compare
Choose a tag to compare
r5
  • Statically link libwinpthread instead of libpthread on Windows

Identical to r4 for other platforms than Windows.

r4

10 May 22:47
Compare
Choose a tag to compare
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

16 Apr 21:12
Compare
Choose a tag to compare
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

09 May 09:18
Compare
Choose a tag to compare
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

02 May 21:31
Compare
Choose a tag to compare
r1

Cross-compiled with gcc for Windows with statically linked libgcc, libstdc++, and libwinpthread.