Replies: 3 comments 16 replies
-
音频滤镜 --af多声道下混
此方案作为 FAQ人声增强 的额外方案,可通过增大其中的 变速播放时修正音调
[APC]
profile-cond = speed~=1
af-append = @apc:rubberband
[APC-alt]
profile-cond = speed==1
af-remove = @apc:rubberband
音频均衡器对不同频段进行增益调节
https://ffmpeg.org/ffmpeg-filters.html#superequalizer
复合滤镜 --lavfi-complex多音轨同时播放
或者采用便捷的方式 input_plus.lua |
Beta Was this translation helpful? Give feedback.
-
增加点音频滤镜相关内容双通道设备调节各通道音
另一组示例
dynnorm的动态调节菜单脚本: drcbox.lua 修复mpv的音轨载入和切换时的兼容问题 |
Beta Was this translation helpful? Give feedback.
-
复合滤镜没有办法实时切换是吧? |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
欢迎补充更多案例!
关联前置文档: 《音视频滤镜》
全部写进设置与快捷键显得啰嗦和冗长,大多数用户并不需要用到它们。
跳过赘述阶段,直接记录一些有实用意义的滤镜。使用精简语法,根据需求自行修改适配 input.conf / mpv.conf
Note
本帖不记录 d3d11vpp 滤镜,它特定于
--gpu-context=d3d11
和具体硬件实现相关功能。当前的典型用例参考《RTX VSR HDR》本帖不记录 vapoursynth系 的滤镜,当前的可食用vs滤镜见wiki的 相关页面
Note
此楼仅列举 视频 vf 及 复合滤镜 lavfi-complex 的示例,二楼为音频滤镜的示例。
点击以快速跳转至 👉 音频滤镜 af 部分
Tip
一些滤镜有可选的着色器方案,它们通常是性能&解码兼容性更佳的上位替代品。
视频滤镜 --vf
因为大多数滤镜都只是软件实现没有硬件加速,所以确保在挂载前使用
--hwdec=no
或auto-copy
以保证滤镜正常工作,但是对于有硬件解码支持的滤镜,应该切换到auto
/yes
或者auto-copy
使其更高效执行。硬解hack
通过前置一个滤镜
format=fmt=yuv420p
(或其它受支持的格式) ,可以让绝大多数不支持原生硬解(--hwdec=auto
)的滤镜强行支持,但是此时的整个处理链路的效率可能较低下,甚至可能不如直接使用--hwdec=auto-copy
格式转换
https://mpv.io/manual/master/#video-filters-format
重新标记色彩范围为有限,可用于修正一些片源被错误的标记为全范围(即full)
重新标记色彩原色为bt.709,可用于修正一些片源被错误标记(比如bt.470m)
重新标记色彩矩阵为bt.709,可用于修正一些片源被错误标记(比如smpte-240m)
修正伽马曲线为gamma2.2(显示器业界标准),用于补正mpv使用icc(bt.1886)时的亮度错误
format
滤镜功能多且基本支持 硬件加速 ;如果需要调用lavfi的同名滤镜,参考写法lavfi-format=pix_fmts=yuv444p16
。画面转动
垂直翻转
水平翻转
lavfi滤镜的顺时针90° https://ffmpeg.org/ffmpeg-filters.html#rotate
mpv原生滤镜的顺时针90°(仅90°/180°/270°时支持 硬件加速 )
format=rotate
或--video-rotate
(不会裁剪画面)。Tip
类似效果的着色器方案:
翻转 flip_RT.glsl
旋转 rotate_RT.glsl
黑边控制
填充黑边至16:9并居中原帧画面,可用于2.35:1的片源适配16:9的字幕
https://ffmpeg.org/ffmpeg-filters.html#pad-1
切掉底部200像素行,填充顶部200像素行。实现视觉上的等效画面平移。(不使用原生的
--video-pan
的理由是这个参数影响字幕布局)https://ffmpeg.org/ffmpeg-filters.html#crop
Tip
类似效果的着色器方案:
画面平移 pan_RT.glsl
自适应黑边填充 box_pad_ada.glsl
畸变校正
补正广角镜头的径向畸变。示例可用于GoPro
https://ffmpeg.org/ffmpeg-filters.html#lenscorrection
帧率变换
通过帧采样强制视频以指定帧率输出。示例可用于播放滚动弹幕时增强平滑性,此时分子数值(取整)为你的显示器刷新率
https://ffmpeg.org/ffmpeg-filters.html#fps-1
作用类似,区别是帧混合(线性插值)。
https://ffmpeg.org/ffmpeg-all.html#framerate
--interpolation=yes
--deterlance=yes
尺寸调节
lavfi的预缩放尺寸。示例为锁定高度720,宽度按源比例重设 https://ffmpeg.org/ffmpeg-filters.html#scale-1
mpv原生滤镜的对应功能较弱,不支持按比例只能手动指定双边数值,由于必须要使用
convert=yes
才生效,结果失去了硬件加速的支持。色彩控制
反相颜色(使图片具有底片质感)。两组分别适用于处理不同类型的源
negate滤镜可以精简输入为
negate
而无需补完后续的参数,它会自动识别源类型处理。https://ffmpeg.org/ffmpeg-filters.html#negate
lutyuv/lutrgb中的
negval
等效maxval+minval-val
https://ffmpeg.org/ffmpeg-filters.html#lut_002c-lutrgb_002c-lutyuv
format=colorlevels=limited:convert=yes
预转换片源为有限动态范围再交给lutyuv处理。Tip
等效的着色器方案:
反相 color_alt_luma.glsl color_alt_rgb.glsl
移除片源中指定的平面。两示例分别为仅保留LUMA(8bit);仅保留BLUE通道
(minval+maxval)/2
作为值。Tip
等效的着色器方案:
平面屏蔽 plane_block_RT.glsl
导入3dlut进行调色
https://ffmpeg.org/ffmpeg-filters.html#lut3d-1
Important
该滤镜远不及
--vo=gpu-next
中的--lut
--target-lut
--image-lut
这些实现来的多变和高效。矫正色温到D65。我只知道11区的部分视频会以9300K拍摄出品,可以用此方法补正
https://ffmpeg.org/ffmpeg-filters.html#colortemperature
Tip
类似效果的着色器方案:
色温调节 color_temperature_RT.glsl
字幕渲染
独立于原生字幕渲染。它的一种用处在 #61 已记录,并以外部脚本的方式进行了局部实现。
https://ffmpeg.org/ffmpeg-filters.html#subtitles-1
复合滤镜 --lavfi-complex
https://mpv.io/manual/master/#options-lavfi-complex
同步播放
常见的一个用法是单个mpv进程中同时播放多个视频源。
由于该滤镜的特殊性,从命令行启动mpv比较方便(或者启动后手动导入多条视频轨)
示例一:双源水平并排
示例二:同源一分九阵列3x3
恢复此滤镜需要刷新轨道:
或者使用 input_plus.lua 脚本中的命令
注意:
要求输入的源具有相同尺寸,不同尺寸的源应该联合用
scale
滤镜限制它。如需更多源和不同排列方向则阅读下方的链接。
参考: 【 mpv-player/mpv#3854 】 【FFmpeg_wiki】
Beta Was this translation helpful? Give feedback.
All reactions