Vinverse

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
m (add x64 category)
(v0.92 update)
Line 1: Line 1:
{{FilterCat5|External_filters|Plugins|Plugins_x64|Restoration_filters|Luma_Equalization}}
+
{{FilterCat6|External_filters|Plugins|Plugins_x64|Restoration_filters|Luma_Equalization|Deep_color_tools}}
 
{{Filter3
 
{{Filter3
| {{Author/tp7}}
+
| {{Author/tp7}}, {{Author/Asd-g}}
| v0.9
+
| v0.92
|[http://github.com/tp7/vinverse/releases/download/0.9/vinverse-x86.zip vinverse-x86.zip]
+
|[https://github.com/Asd-g/vinverse/releases vinverse-0.9.2.7z]
[http://github.com/tp7/vinverse/releases/download/0.9/vinverse-x64.zip vinverse-x64.zip]
+
 
| Luma Equalization   
 
| Luma Equalization   
 
| [http://opensource.org/licenses/MIT MIT] but binaries are [http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
 
| [http://opensource.org/licenses/MIT MIT] but binaries are [http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
Line 18: Line 17:
 
* x64 version requires [[AviSynth+]]
 
* x64 version requires [[AviSynth+]]
 
* Supported color formats: [[Y8]], [[YV12]], [[YV16]], [[YV24]], [[YV411]]
 
* Supported color formats: [[Y8]], [[YV12]], [[YV16]], [[YV24]], [[YV411]]
 +
** AviSynth+: All [[planar]] Y/YUV formats (8/10/12/14/16-bits) are supported.
 
<br>
 
<br>
* [http://www.microsoft.com/en-us/download/details.aspx?id=30679 Microsoft Visual C++ 2012 Redistributable Package (x86 / x64)]
+
* [https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 Microsoft VisualC++ Redistributable Package 2022 (x86 / x64)]
 
:<span style="color:red">***</span> <tt>vcredist_x86.exe</tt> is required for <tt>vinverse-x86</tt>
 
:<span style="color:red">***</span> <tt>vcredist_x86.exe</tt> is required for <tt>vinverse-x86</tt>
 
:<span style="color:red">***</span> <tt>vcredist_x64.exe</tt> is required for <tt>vinverse-x64</tt>
 
:<span style="color:red">***</span> <tt>vcredist_x64.exe</tt> is required for <tt>vinverse-x64</tt>
Line 28: Line 28:
 
|-
 
|-
 
|{{Template:FuncDef|vinverse}}
 
|{{Template:FuncDef|vinverse}}
|{{Template:FuncDef| (clip, float "sstr" int "amnt", int "uv", float "scl")}}
+
|{{Template:FuncDef| (clip, float "sstr" int "amnt", int "uv", float "scl", int "opt", clip "clip2")}}
 
|-
 
|-
 
|{{Template:FuncDef|vinverse2}}
 
|{{Template:FuncDef|vinverse2}}
|{{Template:FuncDef| (clip, float "sstr" int "amnt", int "uv", float "scl")}}
+
|{{Template:FuncDef| (clip, float "sstr" int "amnt", int "uv", float "scl", int "opt")}}
 
|}
 
|}
 
<br>
 
<br>
Line 40: Line 40:
 
:::Strength of contra sharpening.  
 
:::Strength of contra sharpening.  
 
<br>
 
<br>
::{{Par2|amnt|int|255}}
+
::{{Par2|amnt|int|}}
 
:::Change no pixel by more than this.
 
:::Change no pixel by more than this.
:::Valid range: 0 to 255
+
:::Valid range: 0 to the maximum range the input clip's bitdepth.
 +
:::Default: range_max ((2 ^ bit_depth) - 1). For example, for 8-bit is 255 and for 16-bit is 65535.
 
<br>
 
<br>
 
::{{Par2|uv|int|3}}
 
::{{Par2|uv|int|3}}
 
:::Chroma mode, as in [[MaskTools2]]:  
 
:::Chroma mode, as in [[MaskTools2]]:  
::::*1 = trash chroma
+
:::*1 = trash chroma
::::*2 = pass chroma through (copy from input clip)
+
:::*2 = pass chroma through (copy from input clip)
::::*3 = process chroma
+
:::*3 = process chroma
 
<br>
 
<br>
 
::{{Par2|scl|float|0.25}}
 
::{{Par2|scl|float|0.25}}
:::Scale factor for VshrpD*VblurD < 0
+
:::Scale factor for <code>VshrpD*VblurD < 0</code>
 +
<br>
 +
::{{Par2|opt|int|-1}}
 +
:::Sets which cpu optimizations to use.
 +
:::*-1: Auto-detect.
 +
:::*0: Use C++ code.
 +
:::*1: Use SSE2 code.
 +
:::*2: Use AVX2 code.
 +
:::*3: Use AVX512 code.
 +
:::Default: -1.
 +
<br>
 +
::{{Par2|clip2|clip|}}
 +
:::Only applicable to vinverse.
 +
:::External clip from which to take contra sharpening.
 +
:::This clip must be the same length, width, height, and colorspace as the input clip.
 
<br>
 
<br>
  
Line 61: Line 76:
 
== Changelog ==
 
== Changelog ==
 
  Version      Date            Changes<br>
 
  Version      Date            Changes<br>
 +
v0.9.2      03/19/2022      - Added parameter clip2. (vinverse only) <br>
 +
v0.9.1      03/14/2022      - Changed MT mode from MT_NICE_FILTER to [[MT_MULTI_INSTANCE]].
 +
                              - Added support for 10..16-bit clips.
 +
                              - Added AVX2 and AVX512 code.
 +
                              - Added parameter opt.
 +
                              - Added support for frame properties passthrough.
 +
                              - Added version.<br>
 
  v0.9        11/30/2013      - Initial release  
 
  v0.9        11/30/2013      - Initial release  
 
<br>
 
<br>
Line 70: Line 92:
 
!!width="150px"| Source Code
 
!!width="150px"| Source Code
 
|-
 
|-
!v1.0
+
!v0.9
 
|[http://github.com/tp7/vinverse/releases/download/0.9/vinverse-x86.zip vinverse-x86.zip]  
 
|[http://github.com/tp7/vinverse/releases/download/0.9/vinverse-x86.zip vinverse-x86.zip]  
 
[http://github.com/tp7/vinverse/releases/download/0.9/vinverse-x64.zip vinverse-x64.zip]
 
[http://github.com/tp7/vinverse/releases/download/0.9/vinverse-x64.zip vinverse-x64.zip]
Line 77: Line 99:
 
<br>
 
<br>
 
== External Links ==
 
== External Links ==
*[http://github.com/tp7/vinverse GitHub] - Source code repository.
+
*[https://github.com/Asd-g/vinverse GitHub] - Source code repository (update).
 +
*[https://github.com/tp7/vinverse GitHub] - Source code repository.
 
<br>
 
<br>
 
<br>
 
<br>
 
-----------------------------------------------
 
-----------------------------------------------
 
'''Back to [[External_filters#Luma_Equalization|External Filters]] &larr;'''
 
'''Back to [[External_filters#Luma_Equalization|External Filters]] &larr;'''

Revision as of 07:02, 20 March 2022

Abstract
Author tp7, Asd-g
Version v0.92
Download vinverse-0.9.2.7z
Category Luma Equalization
License MIT but binaries are GPLv2
Discussion Doom9 Thread

Contents

Description

A modern rewrite of a simple but effective plugin to remove residual combing originally based on an AviSynth script by Didée and then written as a plugin by tritical.
This plugin also includes a fast implementation of the Vinverse2 function (yet another script written by Didée).

Requirements


*** vcredist_x86.exe is required for vinverse-x86
*** vcredist_x64.exe is required for vinverse-x64


Syntax and Parameters

vinverse (clip, float "sstr" int "amnt", int "uv", float "scl", int "opt", clip "clip2")
vinverse2 (clip, float "sstr" int "amnt", int "uv", float "scl", int "opt")


clip   =
Input clip


float  sstr = 2.7
Strength of contra sharpening.


int  amnt =
Change no pixel by more than this.
Valid range: 0 to the maximum range the input clip's bitdepth.
Default: range_max ((2 ^ bit_depth) - 1). For example, for 8-bit is 255 and for 16-bit is 65535.


int  uv = 3
Chroma mode, as in MaskTools2:
  • 1 = trash chroma
  • 2 = pass chroma through (copy from input clip)
  • 3 = process chroma


float  scl = 0.25
Scale factor for VshrpD*VblurD < 0


int  opt = -1
Sets which cpu optimizations to use.
  • -1: Auto-detect.
  • 0: Use C++ code.
  • 1: Use SSE2 code.
  • 2: Use AVX2 code.
  • 3: Use AVX512 code.
Default: -1.


clip  clip2 =
Only applicable to vinverse.
External clip from which to take contra sharpening.
This clip must be the same length, width, height, and colorspace as the input clip.


Examples

Vinverse with default settings:

AviSource("blah.avi")
Vinverse(sstr=2.7, amnt=255, uv=3, scl=0.25)


Changelog

Version      Date            Changes
v0.9.2 03/19/2022 - Added parameter clip2. (vinverse only)
v0.9.1 03/14/2022 - Changed MT mode from MT_NICE_FILTER to MT_MULTI_INSTANCE. - Added support for 10..16-bit clips. - Added AVX2 and AVX512 code. - Added parameter opt. - Added support for frame properties passthrough. - Added version.
v0.9 11/30/2013 - Initial release


Archived Downloads

Version Download Source Code
v0.9 vinverse-x86.zip

vinverse-x64.zip

vinverse-0.9.zip


External Links

  • GitHub - Source code repository (update).
  • GitHub - Source code repository.




Back to External Filters

Personal tools