VapourSynth

Fredrik Mellbin·VapourSynth.VapourSynth

A video processing framework with simplicity in mind

winget install --id VapourSynth.VapourSynth --exact --source winget

Latest R78·July 24, 2026

Release Notes
  • a compiler supporting c++20 is now required to build the project, compatibility has been verified with recent msvc, clang(-cl) and gcc
  • relaxed the zen4 level instruction check to not include avx512bf16 since compilers never use these instructions on their own, this allows the faster binaries to be used on intel ice lake cpus and later as well
  • added turn90 and turn270 functions
  • fixed multiple rare threading issues, the most likely of these to be actually encountered in r76 and r77 was a deadlock that could happen when synchronous getFrame() is called from a filter getFrame function and a pipeline flush is in progress
  • added basic avx512 as an additional cpu instruction level meaning that on x64 it's now baseline, avx2, avx512 and zen4 level
  • fixed audiogain and audiomix destroying audio with a bit depth between 17 and 31 bits, most commonly 24 bit, where samples were clamped against the significant bit range instead of the range of the container they are stored left aligned in
  • added the AudioResample filter for audio sample rate, channel layout and sample format conversion, the downmix coefficients follow itu-r bs.775 and the mix matrix is derived from the two layouts so any combination works
  • added waveform, amplitude and frequency arguments to BlankAudio for generating slope, sine, square and triangle test signals
  • added chromatic_adaptation argument to resize filters, it defaults to True which is identical to the previous behavior
  • mergefulldiff now handles float appropriately
  • maskedmerge and premultiply will no longer reject clips with different chroma location if only luma is being processed
  • generic filters now checks the minimum plane dimension restrictions only the actually processed planes
  • fixed the levels filter not actually reading the second and third plane gamma/max_in/min_in and so on values
  • many fixes to the python bindings such as fixing potential deadlocks when freeing the core and using frames and other references after a core has been destroyed (ichunjo)
  • added 7x7, 9x9 and 11x11 square convolution sizes
  • added half-precision float support to all functions where it makes sense at all (basically only lut/lut2 excluded) in a portable way that generates fast code on both aarch64 and avx2 class x86
  • all floating point masks passed to maskedmerge are now clamped to the 0-1 range before applying, this includes UV planes as well
  • fixed possible memory leak audionode.output if an error is triggered early in the output process
  • the core filters have now been split out and on x64 and are also compiled for avx2 and zen4 class cpus
  • fixed proptoclip frame reference leak on error
  • fixed potential crash in shufflechannels with multiple audio clip inputs
  • lut optimization for all cpus and lut2 optimizations on avx512 cpus
  • boxblur optimization
  • improved planestats optimizations
  • improved merge filters optimization and added avx512 path
  • added avx512 optimizations to min, max, convolution and other filters internally known as genericfilters
  • greatly improved the memory management and speed in very memory constrained scenarios, speedups of 2-3x are possible if you run scripts with far too low memory max cache size
  • now the initial max cache size default is half of the physical available ram (HolyWu)
  • remembered to actually remove avfs from the source tree
  • several more small fixes for ai found bugs
  • added aarch64 neon intrinsics for many for many functions
  • added YUV410, 411 and 440 constants for 16 bit integer, half and single precision
  • plugin function return type declarations are now checked and warnings will be printed on mismatch, this will be an error in future versions

Installer type: inno

x64user654B8BC922AA224BB50CF75CDD16ADB09B6BE6C38AAED1D1E9C98586D1DB581A
x64machine654B8BC922AA224BB50CF75CDD16ADB09B6BE6C38AAED1D1E9C98586D1DB581A

Details

Homepage
https://www.vapoursynth.com/
License
LGPL-2.1
Publisher
Fredrik Mellbin
Support
https://github.com/vapoursynth/vapoursynth/issues
Copyright
Copyright (c) 2012-2026 Fredrik Mellbin

Tags

frameservermediamultimediavideovs

Older versions (11)

R76
x64userF8B01C9D022CECC5653ECC5395E878972FB0ADA0F0743390D6FFDBE83B32F964
x64machineF8B01C9D022CECC5653ECC5395E878972FB0ADA0F0743390D6FFDBE83B32F964
R75
x64user627B9045C126897333F0F749A02B51193FD138F30603E9D2D1F3A88C60760E26
x64machine627B9045C126897333F0F749A02B51193FD138F30603E9D2D1F3A88C60760E26
R74
x64user1D06A1C6C9299D6F8E05757870B9CB49784DE15F9021B72E44F406461815491E
x64machine1D06A1C6C9299D6F8E05757870B9CB49784DE15F9021B72E44F406461815491E
R73
x64user0EBD1647BEADA71E1774CB0008EC8FB6D127148BA28D38C89AB4867FF6BF0078
x64machine0EBD1647BEADA71E1774CB0008EC8FB6D127148BA28D38C89AB4867FF6BF0078
R72
x64userA73C5FC7245DBA163489E31F3BF346EBC60E02A691D32CDCA32FF26E4F028A6B
x64machineA73C5FC7245DBA163489E31F3BF346EBC60E02A691D32CDCA32FF26E4F028A6B
R71
x64user0CB30BF1ED435BDAFE86F7AB7F18A7BFE4307E2B5FEDEE2E790B830807CFF02C
x64machine0CB30BF1ED435BDAFE86F7AB7F18A7BFE4307E2B5FEDEE2E790B830807CFF02C
R70
x64userEA83E9FEAA3D2029579E583CE1403B62F30505513B397A3C3456E338D04CBB59
x64machineEA83E9FEAA3D2029579E583CE1403B62F30505513B397A3C3456E338D04CBB59
R69
x64userF8FF8D198FA2AACD49F19CCEC95775795E214B7C0336C4E45603FCC035C8A1ED
x64machineF8FF8D198FA2AACD49F19CCEC95775795E214B7C0336C4E45603FCC035C8A1ED
R68
x64user11F261860E34E70B397891CBCEAD0BC8D3A56156C076D3E14C34F56774915567
x64machine11F261860E34E70B397891CBCEAD0BC8D3A56156C076D3E14C34F56774915567
R66
x64user08B470DB53871AC290971A0EA90B3ABC7030014720B26DDDF2F09A147965CE7B
x64machine08B470DB53871AC290971A0EA90B3ABC7030014720B26DDDF2F09A147965CE7B
R65
x64user130B7C0769E88E0E09F1883698E10BEC5E29AA585DF0180B746B78D11A130FE6
x64machine130B7C0769E88E0E09F1883698E10BEC5E29AA585DF0180B746B78D11A130FE6