ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

4 个场景讲清 mpv Lua 脚本:裁黑边、自动续播、压音量、管置顶

4 个场景讲清 mpv Lua 脚本:裁黑边、自动续播、压音量、管置顶 4 个场景讲清 mpv Lua 脚本:裁黑边、自动续播、压音量、管置顶【免费下载链接】mpv Command line media player项目地址: https://gitcode.com/GitHub_Trending/mp/mpv这篇写给没碰过 mpv 脚本的人:讲清 mpv Lua 脚本怎么装、配置怎么写,覆盖 4 个最常见的 mpv 脚本扩展场景,照着复制就能跑起来。⏱️ 用 3 步跑起第一个脚本先不用懂原理,最短路径就是 3 步。把仓库里TOOLS/lua/目录中的autocrop.lua复制到~/.config/mpv/scripts/;在~/.config/mpv/input.conf里加一行:c script-binding autocrop;打开一段带黑边的视频,按c,黑边消失;再按一次恢复。✂️ 给老片裁掉上下黑边老电影上下总有一条黑带,按了全屏也还在?autocrop.lua负责 mpv 自动裁剪黑边:它检测视频画面里的黑边区域,把这块裁掉,画面直接铺满。默认在播放开始约 4 秒后自动裁一次,你也可以随时手动按快捷键。如果开场是暗场导致裁多了,用script-opts-appendautocrop-auto_delay8把检测往后延;只想手动裁,就写script-opts-appendautocrop-autono。画面处理完了,麻烦多半在片单上。▶️ 让同目录视频自动续播看完一集还得手动点开下一集,对吧?autoload.lua负责 mpv 自动播放列表:播放开始时扫描当前文件所在目录,把前后的文件按字母序加进播放列表。关键配置一行:script-optsautoload-imagesno,autoload-directory_moderecursive。启用后点开任意一集,整个目录连续播放;imagesno排除图片文件,directory_moderecursive会进子目录扫描。只想要和当前文件同类型的,再加same_typeyes。下一类痛点不在画面上,在声音上。 把忽大忽小的音量压平预告片炸耳、后面台词又听不见,这种情况你肯定遇到过?acompressor.lua负责 mpv 音量压缩:给音频加一个动态范围压缩器,把大的拉下来、把小的顶上去。默认滤波关闭,播放时按n开关,F1~F6及其 Shift 组合键分别微调各参数。默认值:threshold(压缩阈值)-12dB,可调范围 -30~0dB;ratio(压缩比率)2.5:1;attack(攻击时间)5ms;release(释放时间)50ms。觉得压得不够狠就调大ratio,觉得过渡突兀就把release调高一点。黑边裁了、续播通了、音量稳了,最后一个场景跟窗口有关。 让播放窗口工作置顶,暂停自动让位边干活边看视频,切个窗口视频就缩到角落,暂停想一下又挡住编辑器?ontop-playback.lua负责 mpv 窗口置顶:播放时播放器窗口保持在最上层,一暂停就自动让出前台。把脚本放进~/.config/mpv/scripts/,先启用--ontop;需要更细控制,就在~/.config/mpv/script-opts/ontop-playback.conf里写ontop_while_playingyes和ignore_fullscreenyes。播放时窗口置顶,暂停后它退回你的窗口下面,按继续又回来。ignore_fullscreenyes时全屏会自动放弃置顶,窗口不会卡在别人全屏的后面。⚙️ 把多个脚本配到一起脚本之间互不干扰,配置统一写在主配置文件~/.config/mpv/mpv.conf:# ~/.config/mpv/mpv.conf script-optsautoload-imagesno,autoload-directory_moderecursive script-opts-appendautocrop-auto_delay8,acompressor-default_enableyes cache2M脚本本身不吃资源,网络源播放时把cache调大一些,加载更稳。OSD 频繁跳动碍事的话,加一行script-opts-appendautocrop-suppress_osdyes,autocrop 就不刷屏了。⌨️ 自己加一行:按键显示播放进度把这段存到~/.config/mpv/scripts/下,文件名随意,比如progress.lua:function show_progress() local pos mp.get_property(time-pos) local dur mp.get_property(duration) mp.osd_message(string.format(进度: %.1fs / %.1fs, pos or 0, dur or 0)) end mp.add_key_binding(T, show-progress, show_progress)mp.get_property负责读播放器状态,这里取当前位置和总时长;mp.osd_message把文字画到画面上;mp.add_key_binding把按键T绑到这个函数上。重启 mpv 后,播放时按一下T,进度条就出来了。完整接口看仓库里的 Lua 脚本手册,更多现成例子都在 TOOLS/lua/ 目录。记不住也没关系,记住场景对应脚本就行:黑边、续播、音量、窗口,各有各的。新手建议先只装autoload.lua:零配置、立刻见效,用几天顺手了,再一个一个上其余三个。【免费下载链接】mpv Command line media player项目地址: https://gitcode.com/GitHub_Trending/mp/mpv创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表