Video post-processing
The term post-processing (or postproc for short) is used in the video/film business for quality-improvement image processing (specifically digital image processing) methods used in video playback devices, (such as stand-alone DVD-Video players), and video players software and transcoding software. It is also commonly used in real-time 3D rendering (such as in video games) to add additional effects.
Uses in video production
Video post-processing is the process of changing the perceived quality of a video on playback (done after the decoding process). Image scaling routines such as linear interpolation, bilinear interpolation, or cubic interpolation can for example be performed when increasing the size of images; this involves either subsampling (reducing or shrinking an image) or zooming (enlarging an image). This helps reduce or hide image artifacts and flaws in the original film material. It is important to understand that post-processing always involves a trade-off between speed, smoothness and sharpness.
- Image scaling and multivariate interpolation:
- SPP (Statistical-Post-Processing)
- Deblocking
- Deringing
- Sharpen / Unsharpen (often referred to as "soften")
- Requantization
- Luminance alterations
- Blurring / Denoising
- Deinterlacing
- weave deinterlace method
- bob deinterlace method
- linear deinterlace method
- yadif deinterlace method
- Deflicking
- 2:3 pull-down / ivtc (inverse telecine) for conversion from 24 frames/s and 23.976 frames/s to 30 frames/s and 29.97 frames/s
- 3:2 pull-up (telecine conversion) for conversion from 30 frames/s and 29.97 frames/s to 24 frames/s and 23.976 frames/s
Uses in 3D rendering
Additionally, post-processing is commonly used in 3D rendering, especially for video games. Instead of rendering 3D objects directly to the display, the scene is first rendered to a buffer in the memory of the video card. Pixel shaders and optionally Vertex shaders are then used to apply post-processing filters to the image buffer before displaying it to the screen. Some post-processing effects also require multiple-passes, gamma inputs, vertex manipulation and depth buffer access. Post-processing allows effects to be used that require awareness of the entire image (since normally each 3D object is rendered in isolation). Such effects include:
- Upscaling for example xBR, Super xBR and SuperRes
- High dynamic range rendering
- Particle Effects
- Bloom
- Light Scattering
- Screen Space Reflections
- Point Light Attenuation
- Filmic Scene Tone Mapping
- Digital Camera Light Compensation
- Eye Adaptation
- Image Distortion
- Barrel Distortion
- Chromatic Aberration
- Bokeh Effect
- Sobel Operator
- Glow
- Lens flare
- Pseudo Lens Flare[1]
- Cubic Lens Distorion Flare[2]
- Sharpen / Unsharpen(Texture Unsharp Mask, LumaSharpen, Sharpen, Sharpen Complex 1/2, Adaptive-Sharpen)
- Bump mapping
- Motion blur
- Smart Blur
- Heat Haze
- Ambient Occlusion including custom types.
- HBAO
- Cel shading
- Outlines
- Sketch Shading
- Paint Shading
- Ink Shading
- Crepuscular rays
- Film grain simulation
- Grayscale simulation
- Infrared and Nightvision simulation
- Bloodlust effect.
- Sepia
- Screen Borders
- Screen Rotation
- Splitscreen
- Anaglyph
- Depth of field
- Depth Haze
- Shadow mapping
- Global illumination
- Gamma Correction
- Color grading
- Color correction
- Contrast Adjustement
- Dynamic Contrast
- Antialiasing like FXAA, AGAA,[3] MSAA, SSAA and SMAA and custom antialiasing methods
- Texture filtering like Point, Linear, Bilinear, Trilinear, Anisotropic and custom algorithms.
- Dithering including Subpixel Dithering.
- Vignette
- Pixel Vibrance
- Posterization and Deposterization.
- Scanline simulation
- Fog/Mist
See also
References
External links
- Videotranscoding Wiki -(documentation on server-side usage of MPlayer for transcoding)