All Projects → bjin → Mpv Prescalers

bjin / Mpv Prescalers

Licence: lgpl-3.0
prescalers for mpv, as user shaders

Labels

Projects that are alternatives of or similar to Mpv Prescalers

Play With Mpv
Chrome extension that allows you to play videos in webpages like youtube with MPV instead
Stars: ✭ 163 (-14.66%)
Mutual labels:  mpv
Filters4processing
Useful GLSL filters adapted for Processing
Stars: ✭ 177 (-7.33%)
Mutual labels:  glsl
Vim Glsl
Vim runtime files for OpenGL Shading Language
Stars: ✭ 184 (-3.66%)
Mutual labels:  glsl
Processing Shader Examples
A collection of GLSL shaders and how to use them in Processing sketches
Stars: ✭ 167 (-12.57%)
Mutual labels:  glsl
Spirv Vm
Virtual machine for executing SPIR-V
Stars: ✭ 173 (-9.42%)
Mutual labels:  glsl
Metaballs
Unity 3D implementation of metaballs and marching cubes algorithm
Stars: ✭ 178 (-6.81%)
Mutual labels:  glsl
Shadertoy lab
✏️ Test some shadertoy examples in Unity.
Stars: ✭ 164 (-14.14%)
Mutual labels:  glsl
Godot Utils And Other
random code that I made/use for godot
Stars: ✭ 191 (+0%)
Mutual labels:  glsl
React Regl
React Fiber Reconciler Renderer for Regl WebGL
Stars: ✭ 171 (-10.47%)
Mutual labels:  glsl
Godot 3 2d Crt Shader
A 2D shader for Godot 3 simulating a CRT
Stars: ✭ 183 (-4.19%)
Mutual labels:  glsl
Glsltuto
GLSL shaders tutorial
Stars: ✭ 168 (-12.04%)
Mutual labels:  glsl
Gpu.js
GPU Accelerated JavaScript
Stars: ✭ 13,427 (+6929.84%)
Mutual labels:  glsl
Glsl Noise
webgl-noise shaders ported to work with glslify
Stars: ✭ 179 (-6.28%)
Mutual labels:  glsl
Glow
mpv Config File Generator for Windows
Stars: ✭ 167 (-12.57%)
Mutual labels:  mpv
Godot Psx Shaders
PSOne visuals through shaders in Godot 3.1
Stars: ✭ 185 (-3.14%)
Mutual labels:  glsl
Fragment
Live Code Graphics via GLSL Fragment Shaders
Stars: ✭ 166 (-13.09%)
Mutual labels:  glsl
Hsva Unity
A Hue Saturation Value adjustment shader for Unity. Useful for making lots of character colors.
Stars: ✭ 177 (-7.33%)
Mutual labels:  glsl
Nomansscanner
A Depth-based Image Effect recreating the Topographic Scanner of No Man's Sky.
Stars: ✭ 191 (+0%)
Mutual labels:  glsl
Anime4k
A High-Quality Real Time Upscaler for Anime Video
Stars: ✭ 14,083 (+7273.3%)
Mutual labels:  glsl
Varjo
Lisp to GLSL Language Translator
Stars: ✭ 181 (-5.24%)
Mutual labels:  glsl

This repo contains user shaders for prescaling in mpv.

For the scripts generating these user shaders, check the source branch.

Shaders in gather/ directory and compute/ directory are generally faster but requires recent version of OpenGL. Use these shaders only if they actually work (i.e. no blue screen and no noticeable distortion).

Shaders in vulkan/ directory are using rgba16hf LUT, and required by gpu-api=vulkan and gpu-api=d3d11. Use these shaders if you encountered the following error:

[vo/gpu] Unrecognized/unavailable FORMAT name: 'rgba16f'!

Usage

You only need to download shaders you actually use. The following part of this section assumes that they are in shaders directory in the mpv configure folder (usually ~/.config/mpv/shaders on Linux).

Use glsl-shaders="prescaler.hook" option to load those shaders. (This will override other user shaders, use glsl-shaders-append in that case)

glsl-shaders="~~/shaders/ravu-lite-r3.hook"

All shaders are for one pass only. If you want to have 4x upscaling, trigger the same shader twice. All the shaders here are generated with max-downscaling-ratio set to 1.414213. They will be disabled if upscaling is not necessary.

glsl-shaders-append="~~/shaders/ravu-lite-r3.hook"
glsl-shaders-append="~~/shaders/ravu-lite-r3.hook"

For nnedi3 prescaler, neurons and window settings are indicated in the filename.

For ravu prescaler, radius setting is indicated in the filename. r3 (with radius=3 setting) shaders are generally recommended, those shaders achieve good balance between performance and quality.

About RAVU

RAVU (Rapid and Accurate Video Upscaling) is a set of prescalers inspired by RAISR (Rapid and Accurate Image Super Resolution). It comes with different variants to fit different scenarios.

ravu and ravu-lite upscale only luma plane (of a YUV video), which means chroma planes will be handled by --cscale later. ravu-lite is faster and sharper. It also introduces no half pixel offset.

ravu-yuv and ravu-rgb upscale video after all planes are merged. This happens after --cscale (or other chroma prescaler) is applied. ravu-yuv assumes YUV video and will fail on others (for example, PNG picture).

ravu-zoom is another variant which is able to upscale video to arbitrary ratio directly. Its sharpness is close to ravu-lite. But it renders at target resolution, so expect it to be much slower than ravu for perfect 2x upscaling.

ravu-zoom also comes with a chroma variant which is mostly a drop-in replacement of --cscale.

Known Issue

  1. ravu-lite is incompatible with --fbo-format=rgb10_a2 (default for some OpenGL ES implementation). Use rgba16f or rgba16 if available.
  2. ravu-[zoom-]r4-{rgb,yuv} causes distortion with lower-end intel card.

License

Shaders in this repo are licensed under terms of LGPLv3. Check the header of each file for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].