DeBlock

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
(External Links: add link to optimized Deblock)
(add optimized Deblock from 299792458m)
Line 1: Line 1:
 
{{FilterCat6|External_filters|Plugins|Plugins_x64|Restoration_filters|Deblockers|Deep_color_tools}}
 
{{FilterCat6|External_filters|Plugins|Plugins_x64|Restoration_filters|Deblockers|Deep_color_tools}}
 
{{Filter3
 
{{Filter3
|{{Author/Manao}},{{Author/Fizick}}, {{Author/tp7}}, [https://github.com/mysteryx93 MysteryX]
+
|{{Author/Manao}},{{Author/Fizick}}, {{Author/tp7}}, [https://github.com/mysteryx93 MysteryX], [https://github.com/299792458m/ 299792458m]
|1.3
+
|2020/08/30 (@9802e03)
|[https://github.com/mysteryx93/Avisynth-Deblock/releases Deblock13.zip]
+
|[https://files.videohelp.com/u/223002/Avisynth-Deblock_299792458m_noAVX2req.7z Deblock_299792458m_noAVX2req.7z]
 
|Deblocker
 
|Deblocker
 
|5=[http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
 
|5=[http://www.gnu.org/licenses/gpl-2.0.txt GPLv2]
Line 36: Line 36:
 
::{{Par2|planes|string|"yuv"}}
 
::{{Par2|planes|string|"yuv"}}
 
:::Specifies which planes to process between y, u and v.
 
:::Specifies which planes to process between y, u and v.
 +
 +
::{{Par2|opt|int|0}}
 +
:::Sets which cpu optimizations to use.
 +
:::*0 : Auto-detect.
 +
:::*1 : Use C++ code.
 +
:::*2 : Use SSE4.2 code.
 +
:::*3 : Use AVX2 code.
 +
:::Only 8-16bit is optimized, not float.
 
<br>
 
<br>
 
:*If {{FuncDef3|quant}} + {{FuncDef3|aOffset}} is less than 16, the filter does nothing at all. The same goes for {{FuncDef3|quant}} + {{FuncDef3|bOffset}}.
 
:*If {{FuncDef3|quant}} + {{FuncDef3|aOffset}} is less than 16, the filter does nothing at all. The same goes for {{FuncDef3|quant}} + {{FuncDef3|bOffset}}.
Line 55: Line 63:
 
== Changelog ==
 
== Changelog ==
 
  Version      Date            Developer      Changes<br>
 
  Version      Date            Developer      Changes<br>
 +
@9802e03    2020/08/30      299792458m      - Added SIMD optimization for 8-16bit
 +
                                              - Added "opt" parameter
 
  v1.3        2018/05/29      MysteryX        - Back-ported code from VapourSynth
 
  v1.3        2018/05/29      MysteryX        - Back-ported code from VapourSynth
 
                                               - Added high-bit-depth support
 
                                               - Added high-bit-depth support
Line 71: Line 81:
 
!!width="150px"| Download
 
!!width="150px"| Download
 
!!width="150px"| Mirror
 
!!width="150px"| Mirror
 +
|-
 +
!2020/08/30
 +
|[https://files.videohelp.com/u/223002/Avisynth-Deblock_299792458m_noAVX2req.7z Avisynth-Deblock_299792458m_noAVX2req.7z]
 +
|[https://web.archive.org/web/20221023185605if_/https://files.videohelp.com/u/223002/Avisynth-Deblock_299792458m_noAVX2req.7z Avisynth-Deblock_299792458m_noAVX2req.7z]
 
|-
 
|-
 
!v0.0.9
 
!v0.0.9

Revision as of 20:08, 23 October 2022

Abstract
Author Manao,Fizick, tp7, MysteryX, 299792458m
Version 2020/08/30 (@9802e03)
Download Deblock_299792458m_noAVX2req.7z
Category Deblocker
License GPLv2
Discussion Doom9 Thread (original v1.2)
Doom9 Thread (update v1.3

Contents

Description

It performs deblocking on the picture, using the deblocking filter of H264. It's useful to deblock the result of MVCompensate of MVTools plugin, etc.


Requirements


Syntax and Parameters

Deblock (clip, int "quant", int "aOffset", int "bOffset")


clip   =
Input clip, width and height must be mod 8.
int  quant = 25
The higher the quant, the stronger the deblocking. Range is from 0 to 60.
int  aOffset = 0
Quant modifier to the blocking detector threshold. Setting it higher means than more edges will deblocked.
int  bOffset = 0
Another quant modifier, for block detecting and for deblocking's strength. There again, the higher, the stronger.
string  planes = "yuv"
Specifies which planes to process between y, u and v.
int  opt = 0
Sets which cpu optimizations to use.
  • 0 : Auto-detect.
  • 1 : Use C++ code.
  • 2 : Use SSE4.2 code.
  • 3 : Use AVX2 code.
Only 8-16bit is optimized, not float.


  • If quant + aOffset is less than 16, the filter does nothing at all. The same goes for quant + bOffset.


Examples

Deblock with default settings:

MPEG2Source("Blocky.dv2")
Deblock(quant=25, aOffset=0, bOffset=0, planes="yuv")


To deblock the motion compensation (MVTools plugin):

vectors = source.MVAnalyse(isb = false, lambda = 1000)
compensation = source.MVCompensate(vectors, mode = 0)
compensation.Deblock()


Changelog

Version      Date            Developer       Changes
@9802e03 2020/08/30 299792458m - Added SIMD optimization for 8-16bit - Added "opt" parameter v1.3 2018/05/29 MysteryX - Back-ported code from VapourSynth - Added high-bit-depth support - Added Planes parameter to specify which planes to process - AviSynth+: self-registers as a MT_NICE_FILTER v0.9 2013/12/03 tp7 - Faster and supports all planar colorspaces - Compiled with Microsoft Visual Studio C++ 2012. v1.2 2006/04/23 Fizick - Moved code into separate project v1.1 2006/01/09 Manao/Fizick - Present in old MvTools (up to v1.1)


Archived Downloads

Version Download Mirror
2020/08/30 Avisynth-Deblock_299792458m_noAVX2req.7z Avisynth-Deblock_299792458m_noAVX2req.7z
v0.0.9 GitHub
v0.1.2 deblock12.zip


External Links

  • GitHub Source code repository (latest version, v1.3)
  • GitHub Source code repository (mod, v1.3 with SIMD optimizations)
  • GitHub Source code repository (older version, v0.9)




Back to External Filters


Personal tools