Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
nnedi3 filter for VapourSynth
Assembly C++ C
Branch: master

Translate some SSE2 functions into NEON intrinsics

Babby's first NEON.

Testing on an ODROID-U2 shows that it is ~3.6 times faster
with 8 bit input and default parameters, and ~2.1 times
faster with 16 bit input and default parameters, compared
to plain C code.
latest commit 7c9348fa07
@dubhater authored

readme.rst

Description

nnedi3 filter for VapourSynth.

This is a port of tritical's nnedi3 filter.

Usage

The file nnedi3_weights.bin is required. In Windows, it must be located in the same folder as libnnedi3.dll. Everywhere else it can be located either in the same folder as libnnedi3.so/libnnedi3.dylib, or in $prefix/share/nnedi3/. The build system installs it at the latter location automatically.

nnedi3.nnedi3(clip clip, int field[, bint dh=False, bint Y=True, bint U=True, bint V=True, int nsize=6, int nns=1, int qual=1, int etype=0, int pscrn=2, bint opt=True, int fapprox=15])

Allowed values (ranges are inclusive):

  • field: 0..3
  • nsize: 0..6
  • nns: 0..4
  • qual: 1..2
  • etype: 0..1
  • pscrn: 0..4
  • fapprox: 0..15

When the input clip has more than 8 bits per sample, some parameters' allowed and default values change:

  • pscrn: 0, 1, default 1
  • fapprox: 0, 4, 8, 12, default 12

The opt parameter is now a boolean. If False, only C functions will be used. If True, the best functions that can run on your CPU will be selected automatically.

The _FieldBased frame property is now used to determine each frame's field dominance. The field parameter is only a fallback for frames that don't have the _FieldBased property, or where said property indicates that the frame is progressive.

nnedi3.nnedi3_rpow2(clip clip, int rfactor[, int width=clip.width*rfactor, int height=clip.height*rfactor, bint correct_shift=1, int nsize=0, int nns=3, int qual=1, int etype=0, int pscrn=2, bint opt=True, int fapprox=15])

Requires Firesledge's fmtconv plugin.

  • rfactor

    Magnification factor. It must be a power of 2 between 2 and 1024.

  • width

  • height

    Dimensions of the output. These parameters only have an effect if correct_shift is True. If they are different from the default values, the image will be enlarged by rfactor and then scaled to the desired dimensions using fmtconv.

  • correct_shift

    If set to True, the shift introduced by nnedi3 will be corrected using fmtconv's spline36 resizer. The same resizer will scale the image to width×height pixels, if those parameters were provided.

    If the video is vertically subsampled, the vertical chroma shift will be corrected regardless of this parameter's value.

Compilation

./autogen.sh
./configure
make

On x86, yasm is currently not optional.

DLLs can be found in the "releases" section.

License

GPLv2.

Something went wrong with that request. Please try again.