Home

Awesome

GLSL Joint Bilateral

Overview

This is a simple implementation of joint bilateral chroma upsampling. It uses the luma plane as a guide to achieve sharper edges without introducing any ringing.

The repo contains 2 distinct shaders:

Instructions

Add something like this to your mpv config:

vo=gpu-next
glsl-shader="path/to/shader/JointBilateral.glsl"

gpu-next is required due to the usage of tunable parameters.

Parameters

You can set the following parameters:

On vo=gpu-next, you can set these settings with --glsl-shader-opts=param1=value1,param2=value2,....

The shaders have very aggressive defaults, which may not work well on all content. If you find the output too harsh, try reducing the coefficients.

Example

JointBilateral Example