Skip to content

VIDEO FILTERS(视频滤镜)

视频滤镜可以在视频数据到达视频输出之前对其进行修改。

使用方法

bash
# 使用视频滤镜
mpv --vf=filter1,filter2 video.mp4

# 在运行时添加滤镜
vf add filter

常用滤镜

scale(缩放)

视频缩放。

bash
vf=scale=1920:1080

参数:

  • 宽度
  • 高度
  • flags - 缩放算法(bilinear、lanczos、spline36 等)

crop(裁剪)

视频裁剪。

bash
vf=crop=1280:720:0:0

参数:

  • 宽度
  • 高度
  • X 偏移
  • Y 偏移

rotate(旋转)

视频旋转。

bash
vf=rotate=90

参数:

  • 角度(度)

hflip(水平翻转)

水平翻转视频。

bash
vf=hflip

vflip(垂直翻转)

垂直翻转视频。

bash
vf=vflip

eq(均衡器)

视频均衡器(亮度、对比度、饱和度、伽马)。

bash
vf=eq=brightness=0.1:contrast=1.2:saturation=1.5:gamma=1.0

参数:

  • brightness - 亮度
  • contrast - 对比度
  • saturation - 饱和度
  • gamma - 伽马

hue(色调)

色调调整。

bash
vf=hue=h=30

unsharp(锐化)

反锐化掩模锐化。

bash
vf=unsharp

hqdn3d(去噪)

高质量 3D 去噪。

bash
vf=hqdn3d

yadif(去隔行)

Yet Another DeInterlacing Filter。

bash
vf=yadif

w3fdif(去隔行)

Weston 3 Field Deinterlacing Filter。

bash
vf=w3fdif

lavfi(FFmpeg 滤镜)

使用 FFmpeg 的 libavfilter。

bash
vf=lavfi=[滤镜名称=参数]

示例:

bash
# 缩放
vf=lavfi=[scale=1920:1080]

# 裁剪
vf=lavfi=[crop=1280:720:0:0]

# 去噪
vf=lavfi=[hqdn3d]

# 锐化
vf=lavfi=[unsharp]

sub(字幕)

字幕叠加。

bash
vf=sub=filename.srt

GPU 着色器

bash
# 加载 GLSL 着色器
glsl-shader=~/.config/mpv/shaders/sharpen.glsl

# 着色器目录
glsl-shader-dir=~/.config/mpv/shaders

滤镜链

多个滤镜

bash
# 多个滤镜
vf=crop=1280:720:0:0,scale=1920:1080

滤镜顺序

bash
# 滤镜顺序
vf=hqdn3d,unsharp

运行时操作

bash
# 添加滤镜
vf add scale=1920:1080

# 移除滤镜
vf remove scale

# 切换滤镜
vf toggle scale=1920:1080

# 清除所有滤镜
vf clr

相关链接