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-25.tar.gz (878.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-25-py3-none-win_amd64.whl (3.5 MB view details)

Uploaded Python 3Windows x86-64

vapoursynth_mvtools-25-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-25-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-25-py3-none-macosx_15_0_x86_64.whl (2.3 MB view details)

Uploaded Python 3macOS 15.0+ x86-64

vapoursynth_mvtools-25-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-25.tar.gz.

File metadata

  • Download URL: vapoursynth_mvtools-25.tar.gz
  • Upload date:
  • Size: 878.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-25.tar.gz
Algorithm Hash digest
SHA256 1cf7aa2bb77d59955cf4dbd813a115f01d745066e8d68eeef693d683c1fa351c
MD5 95b94d57eb73fa0cefa4b720a59e8565
BLAKE2b-256 63b1227bfe1be565ece3153dc51f1525c164b97450bfb8aa58e5976d97aba96d

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-25.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-25-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for vapoursynth_mvtools-25-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 c027540dd3846c43fb73355c9c3be8ddae3807cdf10fe14ce9bbc684eb16edd0
MD5 a91e891f90f514e66cd7a7c812a3c14b
BLAKE2b-256 0c67f31f127b63f5bc5cdcfd36d64abd1fab02e303ea3bd6226927606b36206d

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-25-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-25-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for vapoursynth_mvtools-25-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a4f2a97dc9b80f187eb6b75d082077e1dd9ffb8fefe7aa6bb84651ff5989d66a
MD5 080ac902e49ef6330d71a6e8b15f56b7
BLAKE2b-256 00835a96f4c233e38f652173f4129669b488a47be38d53ffd85cfe9d7b5db300

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-25-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-25-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for vapoursynth_mvtools-25-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 064377fc1d327cb17dad3ea4f438d4e071ff658baa5894c017768a4fcc9a6c85
MD5 ca3a3bcb9f167b175f97ff4ab3621e0a
BLAKE2b-256 3c75b8328efc94d38e36a22f76c27df5ec5c413db8ac4b5221e687ca2ebc121e

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-25-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-25-py3-none-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for vapoursynth_mvtools-25-py3-none-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 30c2e6dd4a11d0fa32d0686617ebecfe2f48558ac42ec79b601392a02c982a8e
MD5 16458cd0fdd9b4f9659f15731a624d50
BLAKE2b-256 f12367d14ca466c1ea8419bc18aa36d53076b53de112c55aca0cbde5b7d41532

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-25-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-25-py3-none-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for vapoursynth_mvtools-25-py3-none-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 97c54301589618c01b80357b9cd37a50bbc7ec5691f320e835bc607dd05fbebf
MD5 2f4ce689e277aa023df3260b776cf634
BLAKE2b-256 4ab4a02da836a50e34a184fb4b09c53b7b0a5165b8a719d6634069e06283108a

See more details on using hashes here.

Provenance

The following attestation bundles were made for vapoursynth_mvtools-25-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