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-26.tar.gz (878.7 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-26-py3-none-win_amd64.whl (3.0 MB view details)

Uploaded Python 3Windows x86-64

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

Uploaded Python 3macOS 15.0+ x86-64

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

File metadata

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

File hashes

Hashes for vapoursynth_mvtools-26.tar.gz
Algorithm Hash digest
SHA256 8b35200c10601129c8110dedb90660e3a8c01c2a151ffe728a2ef65bdbb96dba
MD5 87fb8d30cf5801a3da3933432e6093d8
BLAKE2b-256 70e6a01503a393f607d138cea24b01d9f5478ec01fe7bc4b302565f12a42e103

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for vapoursynth_mvtools-26-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 21e38b5df4a6f63100d9471daa9893d6229cc82008a53df6163ceca61184db67
MD5 f88964dfc4b688f4c041b2ec57f4c965
BLAKE2b-256 cb3d3ccaa4dc8e8c18b63d123d72bd29a6a28f475f35d3fd53619fd592ff9a0a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for vapoursynth_mvtools-26-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6e7a0094f0476da62c641e1e0bd6922d2848bfcd2716e86b8db4f9bd4514f700
MD5 ec4c2640960ae114778e0349b17a1e99
BLAKE2b-256 760051bf87233cdfc93a45252f2f9ed0456e3ca14ddfc0cc6e6debcda1df27d4

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for vapoursynth_mvtools-26-py3-none-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 12f5c5837ab6c4808047dfcc02375da6ee97b43ba02e8c58940b4845cdc7faa1
MD5 1c8ce4123dbcf90d00adc5e62cfedf39
BLAKE2b-256 5e5ce81097fd0637f66d9032c8b7b1934c63cf06d4680a12bc5abc93c1a36c27

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for vapoursynth_mvtools-26-py3-none-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 1ab1469fa5dcdf2830196e3d70c6435791da46c6b730f95fabc762d5b099175c
MD5 eeb1e11905e363857bd78edb13e7edc2
BLAKE2b-256 78946aff9d85aee83eac8d26f7690507ee3ebeda7b50e10ebd5892c18cbc032a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for vapoursynth_mvtools-26-py3-none-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 c61779954fe293c1ca82953cabfee7c17ff52fb2489d1e4fd5f5b7d491d12c66
MD5 7583080835a81ca62941e16b24a29863
BLAKE2b-256 cd1bae91c3ca9e514d45dccbb6403c644d45ef2e681f525aff7e8cf87ec9b072

See more details on using hashes here.

Provenance

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