Configure FFmpeg Deblock Block Size and Thresholds

This article provides a direct guide on how to configure the block size, alpha, and beta thresholds using FFmpeg’s deblock filter. You will learn how these parameters interact to reduce blockiness in compressed videos, along with practical command-line examples to fine-tune your video outputs.

The deblock filter in FFmpeg is used to smooth out sharp, blocky artifacts caused by high video compression. It operates by analyzing pixel boundaries and applying a smoothing filter based on three main parameters: blocksize, alpha, and beta.

The Deblock Filter Syntax

The basic syntax for applying the deblock filter in an FFmpeg command is:

-vf "deblock=blocksize=VALUE:alpha=VALUE:beta=VALUE"

Parameter Breakdown

1. Block Size (blocksize)

  • Description: Specifies the size of the block grid to be analyzed and smoothed.
  • Range: Integers from 4 to 16.
  • Default: 8
  • Usage: For standard definition (SD) or high-definition (HD) video, the default value of 8 is generally optimal. For very low-resolution videos with massive blocks, you can increase this to 16. For fine-grained, high-resolution videos, lower values like 4 or 6 may work better to prevent over-smoothing.

2. Alpha Threshold (alpha)

  • Description: Controls the detection threshold for block boundaries. A higher alpha value increases the filter's sensitivity, causing it to treat more edges as blocky artifacts and apply smoothing.
  • Range: Floating-point numbers from 0.0 to 1.0.
  • Default: 0.098
  • Usage: Increase this value (e.g., to 0.2 or 0.3) if you still see prominent blocky edges in highly compressed scenes. Lower this value if the video looks too blurry and is losing natural edge detail.

3. Beta Threshold (beta)

  • Description: Controls the threshold for distinguishing flat areas from detailed areas. It prevents the filter from smoothing over natural textures and details by limiting the deblocking process to uniform, flat regions where compression artifacts are most visible.
  • Range: Floating-point numbers from 0.0 to 1.0.
  • Default: 0.05
  • Usage: If flat areas like skies or solid walls look blotchy, increase the beta value. If fine details (like hair or fabric) are becoming smudged, decrease the beta value.

Practical Command Examples

Standard Deblocking (Balanced)

To apply mild deblocking using a standard 8x8 grid with slightly elevated thresholds for general video improvement:

ffmpeg -i input.mp4 -vf "deblock=blocksize=8:alpha=0.15:beta=0.08" output.mp4

Strong Deblocking (For Highly Compressed Video)

For web videos with severe pixelation and visible square patterns, use a larger block size and aggressive thresholds:

ffmpeg -i input.mp4 -vf "deblock=blocksize=12:alpha=0.3:beta=0.15" output.mp4

Light Deblocking (Preserving High Detail)

To clean up minor artifacts in 1080p or 4K footage without losing sharpness:

ffmpeg -i input.mp4 -vf "deblock=blocksize=4:alpha=0.05:beta=0.02" output.mp4