SmoothD (clip clip, int quant, int num_shift, int adaptive_shift, int zero_weight)

default: SmoothD(3, 4, 0, 1) or SmoothD()

Version 0.0.9pre2 November 8th, 2004
Copyright (C) 2004 Tobias Bergmann.
contact: tobias.bergmann at

Look here for the SmoothD announcement thread on doom9.


Look here for releases.

Description of filter and parameters

Look here for the SmoothD announcement thread on doom9.

SmoothD filters the input stream by repeated application of a DCT-quant-iDCT on shifted copies of each frame. By doing so it reduces blocks while keeping high frequency detail intact.
Ideally it should be used with exactly the same quant matrix as the stream was produced with. In order to keep the list of parameters small and usage simple Didée's 6-of-9 matrix is used. This matrix offers very light filtering at low quants.

Parameters (range in brackets; default in bold):

Default values are used if omitted in function call.

Background information

The original idea stems from a 2001 master thesis at University of Dallas. It was later published as a paper by A. Nosratinia.


  1. A. Nosratinia, Enhancement of JPEG-Compressed images by re-application of JPEG, Journal of VLSI Signal Processing, vol. 27, pp. 69-79, 2001.

  2. Homepage of Aria Nosratinia


V0.0.9pre2 , November 8th, 2004

V0.0.9pre , November 5th, 2004

V0.0.8 , October 27th, 2004

V0.0.8pre , October 27th, 2004

V0.0.7 , October 24th, 2004

Known issues