Replies: 4 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.
-
欢迎补充更多案例!
关联前置文档: 《音视频滤镜》
全部写进设置与快捷键显得啰嗦和冗长,大多数用户并不需要用到它们。
跳过赘述阶段,直接记录一些有实用意义的滤镜。使用精简语法,根据需求自行修改适配 input.conf / mpv.conf
Important
本帖不记录 d3d11vpp 滤镜,它特定于
--gpu-context=d3d11
和具体硬件实现相关功能。当前的典型用例参考《RTX VSR HDR》本帖不记录 vapoursynth系 的滤镜,当前的可食用vs滤镜见wiki的 相关页面
Note
此楼仅列举 视频 vf 及 复合滤镜 lavfi-complex 的示例,二楼为音频滤镜的示例。
点击以快速跳转至 👉 音频滤镜 af 部分
视频滤镜 --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
(不会裁剪画面)。黑边控制
填充黑边至16:9并居中原帧画面,可用于2.35:1的片源适配16:9的字幕
https://ffmpeg.org/ffmpeg-filters.html#pad-1
畸变校正
补正广角镜头的径向畸变。示例可用于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处理。移除片源中指定的平面。两示例分别为仅保留LUMA(8bit);仅保留BLUE通道
(minval+maxval)/2
作为值。导入3dlut进行调色
https://ffmpeg.org/ffmpeg-filters.html#lut3d-1
--vo=gpu-next
中的 https://mpv.io/manual/master/#options-lut 和 https://mpv.io/manual/master/#options-target-lut 实现来的高效。矫正色温到D65。我只知道11区的部分视频会以9300K拍摄出品,可以用此方法补正
https://ffmpeg.org/ffmpeg-filters.html#colortemperature
字幕渲染
独立于原生字幕渲染。它的一种用处在 #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