Skip to main content

Motion estimation and denoising filter for VapourSynth

Project description

Description

MVTools is a set of filters for motion estimation and compensation.

This is a port of version 2.5.11.20 of the Avisynth plugin.

Some changes from version 2.5.11.9 of the SVP fork have been incorporated as well (http://www.svp-team.com/wiki/Download).

The filter DepanEstimate was ported from the Avisynth plugin DepanEstimate, version 1.10.

The filters DepanCompensate and DepanStabilise were ported from the Avisynth plugin Depan, version 1.13.1.

Differences

  • All:
    • Free multithreading, courtesy of VapourSynth.

    • Parameters are all lowercase now.

    • YUY2 is not supported.

    • Grayscale, 4:2:0, 4:2:2, 4:4:0, and 4:4:4 are supported, except for DepanCompensate and DepanStabilise, which don’t support 4:4:0.

    • Up to 16 bits per sample are supported.

    • The audio is definitely not killed.

    • No “planar” parameter.

    • “isse” parameter renamed to “opt”.

  • Analyse:
    • No “temporal” parameter, as it’s sort of incompatible with multithreading.

    • No “outfile” parameter.

    • No “sadx264” parameter. If opt is True, the best functions imported from x264 will be selected automatically. Otherwise, only C functions will be used.

    • New parameters “fields” and “tff”.

    • The optimised SAD, SATD, and SSD functions from x264 have been updated to the latest versions (as of September 2014).

    • Block sizes of 64x32, 64x64, 128x64, and 128x128 are supported.

    • The “dct” parameter can be 5..10 even with blocks larger than 16x16.

  • Recalculate:
    • Same as Analyse.

  • Compensate:
    • No “recursion” parameter. It was dodgy.

    • New parameter “tff”.

  • Flow
    • New parameter “tff”.

  • SCDetection:
    • No “ysc” parameter. The input frames are returned unchanged, with the _SceneChangePrev or _SceneChangeNext property attached.

    • No “isse” parameter. It wasn’t used.

  • DepanAnalyse:
    • Formerly “MDepan”.

    • New parameters “fields” and “tff”.

    • No “log”, “range”, “isse” parameters.

  • DepanEstimate:
    • New parameters “fields” and “tff”.

    • No “range”, “log”, “debug”, “extlog” parameters.

  • DepanCompensate:
    • Formerly “DePan”.

    • No “inputlog” parameter.

  • DepanStabilise:
    • Formerly “DePanStabilize”.

    • No “inputlog” parameter.

    • Methods -1 and 2 unavailable.

Usage

mv.Super(clip clip[, int hpad=16, int vpad=16, int pel=2, int levels=0, bint chroma=True, int sharp=2, int rfilter=2, clip pelclip=None, bint opt=True])

mv.Analyse(clip super[, int blksize=8, int blksizev=blksize, int levels=0, int search=4, int searchparam=2, int pelsearch=0, bint isb=False, int lambda, bint chroma=True, int delta=1, bint truemotion=True, int lsad, int plevel, int global, int pnew, int pzero=pnew, int pglobal=0, int overlap=0, int overlapv=overlap, bint divide=False, int badsad=10000, int badrange=24, bint opt=True, bint meander=True, bint trymany=False, bint fields=False, bint tff, int search_coarse=3, int dct=0])

mv.Recalculate(clip super, clip vectors[, int blksize=8, int blksizev=blksize, int search=4, int searchparam=2, int lambda, bint chroma=True, bint truemotion=True, int pnew, int overlap=0, int overlapv=overlap, bint divide=False, bint opt=True, bint meander=True, bint fields=False, bint tff, int dct=0])

mv.Compensate(clip clip, clip super, clip vectors[, int scbehavior=1, int thsad=10000, bint fields=False, float time=100.0, int thscd1=400, int thscd2=130, bint opt=True, bint tff])

mv.Degrain1(clip clip, clip super, clip mvbw, clip mvfw[, int thsad=400, int thsadc=thsad, int plane=4, int limit=255, int limitc=limit, int thscd1=400, int thscd2=130, bint opt=True])

mv.Degrain2(clip clip, clip super, clip mvbw, clip mvfw, clip mvbw2, clip mvfw2[, int thsad=400, int thsadc=thsad, int plane=4, int limit=255, int limitc=limit, int thscd1=400, int thscd2=130, bint opt=True])

mv.Degrain3(clip clip, clip super, clip mvbw, clip mvfw, clip mvbw2, clip mvfw2, clip mvbw3, clip mvfw3[, int thsad=400, int thsadc=thsad, int plane=4, int limit=255, int limitc=limit, int thscd1=400, int thscd2=130, bint opt=True])

mv.Mask(clip clip, clip vectors[, float ml=100.0, float gamma=1.0, int kind=0, float time=100.0, int ysc=0, int thscd1=400, int thscd2=130, bint opt=True])

mv.Finest(clip super[, bint opt=True])

mv.Flow(clip clip, clip super, clip vectors[, float time=100.0, int mode=0, bint fields=False, int thscd1=400, int thscd2=130, bint opt=True, bint tff])

mv.FlowBlur(clip clip, clip super, clip mvbw, clip mvfw[, float blur=50.0, int prec=1, int thscd1=400, int thscd2=130, bint opt=True])

mv.FlowInter(clip clip, clip super, clip mvbw, clip mvfw[, float time=50.0, float ml=100.0, bint blend=True, int thscd1=400, int thscd2=130, bint opt=True])

mv.FlowFPS(clip clip, clip super, clip mvbw, clip mvfw[, int num=25, int den=1, int mask=2, float ml=100.0, bint blend=True, int thscd1=400, int thscd2=130, bint opt=True])

mv.BlockFPS(clip clip, clip super, clip mvbw, clip mvfw[, int num=25, int den=1, int mode=3, float ml=100.0, bint blend=True, int thscd1=400, int thscd2=130, bint opt=True])

mv.SCDetection(clip clip, clip vectors[, int thscd1=400, int thscd2=130])

mv.DepanAnalyse(clip clip, clip vectors[, clip mask, bint zoom=True, bint rot=True, float pixaspect=1.0, float error=15.0, bint info=False, float wrong=10.0, float zerow=0.05, int thscd1=400, int thscd2=130, bint fields=False, bint tff])

mv.DepanEstimate(clip clip[, float trust=4.0, int winx=0, int winy=0, int wleft=-1, int wtop=-1, int dxmax=-1, int dymax=-1, float zoommax=1.0, float stab=1.0, float pixaspect=1.0, bint info=False, bint show=False, bint fields=False, bint tff])

mv.DepanCompensate(clip clip, clip data[, float offset=0.0, int subpixel=2, float pixaspect=1.0, bint matchfields=True, int mirror=0, int blur=0, bint info=False, bint fields=False, bint tff])

mv.DepanStabilise(clip clip, clip data[, float cutoff=1.0, float damping=0.9, float initzoom=1.0, bint addzoom=False, int prev=0, int next=0, int mirror=0, int blur=0, float dxmax=60.0, float dymax=30.0, float zoommax=1.05, float rotmax=1.0, int subpixel=2, float pixaspect=1.0, int fitlast=0, float tzoom=3.0, bint info=False, int method=0, bint fields=False])

If fields is True, it is assumed that the clip named clip first went through std.SeparateFields.

For information about the other parameters, consult the Avisynth plugins’ documentation at http://avisynth.org.ru/mvtools/mvtools2.html or http://www.avisynth.nl/users/fizick/depan/depan.html. This will not be necessary in the future.

Compilation

FFTW3 configured for 32 bit floats is required (“fftw3f”).

meson setup build
ninja -C build

License

GPL 2, like the Avisynth plugins.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vapoursynth_mvtools-27.tar.gz (284.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

vapoursynth_mvtools-27-py3-none-win_amd64.whl (3.0 MB view details)

Uploaded Python 3Windows x86-64

vapoursynth_mvtools-27-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.5 MB view details)

Uploaded Python 3manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

vapoursynth_mvtools-27-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded Python 3manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

vapoursynth_mvtools-27-py3-none-macosx_15_0_x86_64.whl (2.3 MB view details)

Uploaded Python 3macOS 15.0+ x86-64

vapoursynth_mvtools-27-py3-none-macosx_15_0_arm64.whl (1.0 MB view details)

Uploaded Python 3macOS 15.0+ ARM64

File details

Details for the file vapoursynth_mvtools-27.tar.gz.

File metadata

  • Download URL: vapoursynth_mvtools-27.tar.gz
  • Upload date:
  • Size: 284.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for vapoursynth_mvtools-27.tar.gz
Algorithm Hash digest
SHA256 8eeb5f004c57fd0eea1970365e50f7254b802baccead742ee212168289f7e879
MD5 d213cac0389e97ab33b8cdbb6bdb2b91
BLAKE2b-256 dbc94b21ac255c16fbc47357defacdc180b7509159609493809b860a5d76e2f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-27.tar.gz:

Publisher: build.yml on dubhatervapoursynth/vapoursynth-mvtools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vapoursynth_mvtools-27-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for vapoursynth_mvtools-27-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 aa5812def517dadfc0516396f99416723bae71227012ec1e5a0a689108f54f99
MD5 4f122c33bc89a78b7f8ae2dbc0d19284
BLAKE2b-256 776470bef9df6fb9bde891ab2ffc6a75e80f924f754b407b2efc750e14fde6ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-27-py3-none-win_amd64.whl:

Publisher: build.yml on dubhatervapoursynth/vapoursynth-mvtools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vapoursynth_mvtools-27-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for vapoursynth_mvtools-27-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6f17e7d7b6fe4031e83d0f809f044c8b6fb6cf0d56082eb32cfc4d216271ca70
MD5 68894f152fb2ea797fa17258e793cfc6
BLAKE2b-256 c6e3ad395669392f51eed35445b26d14d49e82dc9be68b0202be871539a5ddd4

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-27-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build.yml on dubhatervapoursynth/vapoursynth-mvtools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vapoursynth_mvtools-27-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for vapoursynth_mvtools-27-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 63d89c8c1d2378a43b30b06bfded462eeed0b7529b12cd5971fa6e3cecbad7c6
MD5 c42e9c199b2756d980777313c8ef963f
BLAKE2b-256 cd21730032b6f1e78785896fdcf5636a6587ef8721de86ec545dba0c4709af26

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-27-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build.yml on dubhatervapoursynth/vapoursynth-mvtools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vapoursynth_mvtools-27-py3-none-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for vapoursynth_mvtools-27-py3-none-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 e0390af526b05c26550b33e9ee17f9edc85bd5fd16d6d7b095086ceb7906d85f
MD5 fa12a919ef16b812d12488d41f4dc54b
BLAKE2b-256 733bfa60d73b019938ab99e8e1d76474fff79ebbe9b48b76249529e871677edc

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-27-py3-none-macosx_15_0_x86_64.whl:

Publisher: build.yml on dubhatervapoursynth/vapoursynth-mvtools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vapoursynth_mvtools-27-py3-none-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for vapoursynth_mvtools-27-py3-none-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 38697fd8d777f28f9ead95b432e93a7fde6ddf12fe1fe5b15425c18fc839a8b0
MD5 ace7732ca68f862ed21695e59e38bcb8
BLAKE2b-256 a87f57f5cdd7a700fd544763fac6b6de2367790896a663199b8d6a954d50612a

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-27-py3-none-macosx_15_0_arm64.whl:

Publisher: build.yml on dubhatervapoursynth/vapoursynth-mvtools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page