news 2026/9/1 11:11:01

mpv 命令行参数速查:从窗口控制到滤镜链的 9 大场景配置手册

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
mpv 命令行参数速查:从窗口控制到滤镜链的 9 大场景配置手册

mpv 命令行参数速查:从窗口控制到滤镜链的 9 大场景配置手册

【免费下载链接】mpv🎥 Command line media player项目地址: https://gitcode.com/GitHub_Trending/mp/mpv

mpv 选项动辄上百个,想把字幕字体、延迟、位置一次调到位,靠翻 man 页显然不现实。这份手册按你实际要干的活把 mpv 命令行参数切成 9 类,每条命令都能直接复制运行,配一张速查表,改完保存即生效。

快速上手:6 条最常用的命令

mpv --fs --ontop video.mp4 # 全屏播放并窗口置顶 mpv --geometry=100:100:800x600 video.mp4 # 在指定坐标以 800x600 打开窗口 mpv --hwdec=auto --volume=80 video.mp4 # 自动硬解并把音量设为 80 mpv --start=330 --end=900 --speed=1.25 video.mp4 # 从 5:30 播到 15:00,1.25 倍速 mpv --sub-font="Noto Sans" --sub-font-size=32 --sub-delay=0.5 video.mkv # 字幕字体、字号、延迟一次调好 mpv --loop=inf --shuffle music/ # 整目录随机循环播放

参数体系一览:先认对类型再填值

类型含义典型参数举例
bool是/否开关--fs--ontop--pause
int整数--volume=80--vd-lavc-threads=4
float浮点数--speed=1.25--sub-scale=1.0
string字符串--sub-font=Noto Sans--audio-device
choice枚举值--video-sync=display-resample--framedrop
geometry几何尺寸--geometry=100:100:800x600--autofit=90%x90%
color颜色--sub-outline-color=0x000000
time时间点/时长--start=330--end=900

配置优先级从低到高依次为:内置默认值 < 系统配置 < 用户配置 < 命令行。

一句话:你在终端里敲的--参数,永远压过配置文件里写死的同名设置。

4.1 🎬 窗口与画面控制

本节覆盖:全屏、置顶、几何定位、自动适配窗口大小。

选项类型默认值一句话说明
--fsboolno启动即全屏
--ontopboolno窗口置顶于所有窗口之上
--geometrygeometry-指定窗口位置与尺寸
--autofitgeometry-窗口自适应到给定尺寸
--autofit-largergeometry-仅限制窗口最大尺寸
--panscanfloat0裁剪黑边并放大画面
--window-scalefloat1按倍数缩放窗口
--keep-openboolno播放结束后不退出
mpv --fs video.mp4 # 直接进全屏 mpv --geometry=50%:50% video.mp4 # 窗口居中打开 mpv --autofit-larger=90%x90% video.mp4 # 窗口不超过屏幕 90% mpv --panscan=0.2 video.mp4 # 裁掉上下黑边再放大

⚠️--geometry的坐标与尺寸之间用冒号:分隔、尺寸内宽高校正用x小写,写错会直接报几何参数错误。--autofit--autofit-larger语义相反:前者是"撑满到",后者是"封顶到"。

4.2 ⚙️ 音画质量调优

本节覆盖:硬解、解码线程、去块、反交错与插帧。

选项类型默认值一句话说明
--hwdecchoiceauto指定硬件解码后端
--hwdec-extra-framesintauto提高硬解缓冲区帧数防掉帧
--video-syncchoiceaudio视频与显示刷新同步模式
--deinterlacechoiceno启用反交错
--deinterlace-field-paritychoiceauto反交错场序
--interpolationboolno帧间插值(需 GPU 解码上下文)
--scalechoice-缩放算法
--dscalechoice-桌面缩放算法
mpv --hwdec=vaapi --vo=gpu video.mp4 # Linux 走 VA-API 硬解 mpv --hwdec=d3d11va --vo=gpu video.mp4 # Windows 走 D3D11VA 硬解 mpv --video-sync=display-resample video.mp4 # 锁定显示刷新率重采样 mpv --deinterlace --interpolation video.mkv # 老片源反交错 + 插帧

⚠️ 硬解后端与渲染上下文是绑定关系:--hwdec=vaapi需要--vo=gpu--vo=dmabuf-wayland--hwdec=vulkan则必须--vo=gpu-next。选错组合时 mpv 会静默回退软解,终端里会打一条 "hwdec failed" 提示,别以为硬解没生效。

4.3 字幕全链路

本节覆盖:轨道选择、字体字号、位置、延迟、编码与边框样式。

选项类型默认值一句话说明
--sidchoiceauto指定字幕轨道 ID
--sub-autochoicefuzzy自动外挂字幕匹配方式
--sub-fontstring-字幕字体名
--sub-font-sizefloat5.0字号(相对比例)
--sub-posfloat100字幕垂直位置,越小越靠上
--sub-delayfloat0字幕延迟(秒)
--sub-codepagestringauto非 UTF-8 字幕的编码
--sub-border-sizefloat2描边/边框粗细
mpv --sid=2 video.mkv # 指定第 2 条字幕轨 mpv --sub-font="Noto Sans" --sub-font-size=32 video.mkv # 字体与字号 mpv --sub-delay=0.5 --sub-pos=85 video.mkv # 延迟 0.5s、位置略降 mpv --sub-codepage=cp1252 video.mkv # 修复 Windows 外挂字幕乱码 mpv --sub-auto=fuzzy --slang=en,zh video.mkv # 自动外挂 + 中英文字幕

⚠️--sub-codepage前加+强制重编码(如+cp1252),否则 mpv 只在检测到非法 UTF-8 时才转换;--sub-pos取值 0-150,超过 100 会把字幕推到屏幕顶部以外。

4.4 播放流管理

本节覆盖:循环、倍速、起点终点、A-B 区间与播放列表。

选项类型默认值一句话说明
--loopchoice1当前文件循环次数,inf无限
--loop-filechoice1--loop的旧别名
--loop-playlistchoiceno整个播放列表循环
--speedfloat1播放倍速
--starttime0从指定时间点开始
--endtime-到指定时间点停止
--shuffleboolno随机化播放顺序
--playlist-startint1从列表第 N 项开始
mpv --loop=inf music/ # 整目录无限循环 mpv --start=330 --end=900 video.mp4 # 只播 5:30~15:00 片段 mpv --speed=2 --audio-pitch-correction video.mp4 # 2 倍速但保持音调 mpv --ab-loop-a=00:10:00 --ab-loop-b=00:15:00 video.mkv # A-B 反复磨 mpv --shuffle --playlist=music.m3u # 列表随机播放

⚠️--ab-loop-a/b的时间格式支持HH:MM:SS.mmm,两个值必须成对出现,只写 A 不写 B 等于白设。--speed配合--audio-pitch-correction(默认开启)会自动挂上 scaletempo 滤波器,倍速不变调。

4.5 网络与流媒体

本节覆盖:缓存、磁盘缓存、超时、UA 伪装与 HTTP 头。

选项类型默认值一句话说明
--cachechoiceauto是否启用 RAM 缓存
--demuxer-max-bytesint256M缓存字节上限
--cache-on-diskboolno缓存写磁盘而非内存
--cache-dirstring-磁盘缓存目录
--network-timeoutfloat10网络请求超时秒数
--user-agentstring-伪装 UA 头
--http-header-fieldsstring-追加自定义 HTTP 头
mpv --cache=yes --demuxer-max-bytes=500M http://example.com/stream.m3u8 # 大缓存防抖 mpv --cache-on-disk --cache-dir=~/.cache/mpv http://example.com/live.m3u8 # 磁盘缓存 mpv --user-agent="Mozilla/5.0" http://example.com/stream.m3u8 # 伪装浏览器 UA mpv --http-header-fields="Referer: http://example.com" http://example.com/stream.m3u8 # 带 Referer 防盗链 mpv --network-timeout=30 http://example.com/stream.m3u8 # 放宽超时

⚠️--cache-on-disk对慢速网络有效,但会把缓存数据落盘,机械硬盘上反而增加延迟;--http-header-fields的值里带空格或冒号时要整体加引号,否则会被当成多个参数。

4.6 输入映射与快捷键

本节覆盖:input.conf 语法、默认键位与自定义绑定。

input.conf每行一条绑定,格式[Shift+][Ctrl+][Alt+]<key> <command> [; <command2>],文件在~/.config/mpv/input.conf,改完保存即生效。

默认键命令默认键命令
SPACEcycle pauseRIGHT/LEFTseek ±5
UP/DOWNseek ±609/0add volume ∓2
fcycle fullscreenmcycle mute
jcycle subz/Zadd sub-delay ∓0.1
sscreenshotqquit
# ~/.config/mpv/input.conf 自定义片段 Ctrl+UP add volume 5 # 自定义音量步进 Alt+RIGHT seek 30 # 快进 30s F1 show-text "File: ${filename}" # 屏幕显示当前文件名 # 用 ignore 解除默认绑定 ctrl+w ignore
mpv --input-test --force-window --idle # 进测试模式看按键映射 mpv --input-keylist # 打印所有特殊键名

⚠️ 多键序列绑定(如a-b-c)会被单键b的默认绑定截胡;想让b单独失效又不想丢序列,把b绑到ignore而不是删行。

4.7 配置文件与 Profile 用法

本节覆盖:多级配置路径、conf 语法与 [profile] 配置档。

读取顺序(后覆盖前):/etc/mpv/mpv.conf~/.config/mpv/mpv.conf→ 命令行。语法上把命令行--去掉即可,#起注释行。

# ~/.config/mpv/mpv.conf fs=yes volume=80 hwdec=auto video-sync=display-resample [high-quality] profile-desc="高质量渲染" vo=gpu scale=ewa_lanczossharp cscale=ewa_lanczossharp interpolation=yes video-sync=display-resample [low-power] profile-desc="低功耗" vo=gpu hwdec=no scale=bilinear
mpv --profile=high-quality video.mp4 # 激活指定 profile mpv --profile=help # 列出内置 profile

⚠️ profile 块要写在文件末尾,否则前面的全局设置会被 profile 锁死;--no-config会跳过全部配置文件,排障时先加它。

4.8 脚本、滤镜与扩展

本节覆盖:Lua 脚本、vf/af 滤镜链、lavfi-complex 与截图模板。

选项类型默认值一句话说明
--scriptstring-加载一个 Lua 脚本
--script-optsstring-给脚本传键值对
--vfstring-视频滤镜链
--afstring-音频滤镜链
--lavfi-complexstring-FFmpeg 复杂滤镜图
--screenshot-templatestring-截图文件名模板
--screenshot-formatchoicepng截图输出格式
mpv --script=TOOLS/lua/autocrop.lua video.mp4 # 自动裁剪黑边 mpv --vf=scale=1280:720,vflip video.mp4 # 缩放 + 垂直翻转 mpv --af=lavfi=[loudnorm] video.mp4 # 响度归一 mpv --lavfi-complex="[0:v]scale=1280:720[v];[v]vflip[out]" video.mp4 # 复杂滤镜图 mpv --screenshot-template="shot-%n" --screenshot-format=png video.mp4 # 模板化截图

⚠️--vf里多个滤镜用英文逗号分隔,滤镜参数用冒号:--lavfi-complex的图节点标签必须闭合,漏掉[out]会导致视频流找不到输出。

4.9 🐛 性能与调试

本节覆盖:解码线程、丢帧策略、渲染后端与日志输出。

选项类型默认值一句话说明
--vd-lavc-threadsintauto视频解码线程数
--framedropchoiceno丢帧模式,decoder/danger
--vochoiceauto视频输出后端
--gpu-apichoice-gpu-next 的图形 API(vulkan/gl)
--gpu-contextchoiceauto图形上下文(x11/angle/d3d11)
--msg-levelstring-模块日志级别
--log-filestring-日志落盘路径
mpv --vd-lavc-threads=4 --framedrop=decoder video.mp4 # 限 4 线程 + 解码层丢帧 mpv --vo=gpu-next --gpu-api=vulkan video.mp4 # Vulkan 渲染管线 mpv --msg-level=all=v video.mp4 # 全模块 verbose 日志 mpv --log-file=mpv.log --msg-level=ffmpeg=trace video.mp4 # 详细日志落盘 mpv --vo=null --ao=null --no-video video.mp4 # 无头测试只跑解码

⚠️--msg-level只能调高不能调低(调高上限由终端控制),要安静日志用--msg-level=all=no--vo=null --ao=null组合下没有画面也没有声音,专门用来跑--end限定的片段做吞吐测试。

故障排查速查表

现象排查命令说明
无画面mpv --vo=null --ao=null --no-video video.mp4先确认解码链路通,再看终端vo报错
音画不同步mpv --audio-delay=0.2 video.mp4音频超前加正值,落后加负值
字幕乱码mpv --sub-codepage=cp1252 video.mkv按源文件实际编码选,加+强制转换
硬解回退软解mpv --hwdec=auto,unsafe-hwdec --hwdec-codecs=all video.mp4看终端hwdec行是否报 unsupported
网络卡顿mpv --demuxer-max-bytes=500M --network-timeout=30 URL先放大缓存再放宽超时,顺序别反
配置不生效mpv --no-config video.mp4mpv video.mp4对比前者无配置、后者读全部,差异即来源

mpv 全部选项可跑mpv --list-options自检,man 页见 DOCS/man/options.rst,键位文档见 DOCS/man/input.rst。

【免费下载链接】mpv🎥 Command line media player项目地址: https://gitcode.com/GitHub_Trending/mp/mpv

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/1 11:09:09

C++实战:学生成绩管理系统设计与调试全解析

简介&#xff1a;压缩包内是一套完整的学生成绩管理系统C源码工程&#xff0c;主要面向程序设计课程大作业和期末项目设计场景&#xff0c;尤其适合正在学习C、需要参考完整项目以完成课设的高校学生。资源共11个文件&#xff0c;涵盖Visual Studio解决方案及项目配置&#xff…

作者头像 李华
网站建设 2026/9/1 11:08:56

开发者视角的简道云入门:从零代码平台到企业级应用构建实战

大家好&#xff0c;我是专注于企业级应用开发与低代码平台实践的技术博主。在日常工作中&#xff0c;无论是快速搭建内部审批流、数据收集看板&#xff0c;还是构建轻量级业务系统&#xff0c;我们常常面临开发周期长、跨部门协作难的问题。这时&#xff0c;像简道云这样的零代…

作者头像 李华
网站建设 2026/9/1 11:08:10

自研IEC61850Model:从信息模型到工程落地的完整实践

简介&#xff1a;面向电力系统自动化工程师与变电站二次设备调试人员的IEC 61850模型学习/配置工具包&#xff0c;围绕ICD文件建模、逻辑节点与数据对象解析、通信服务配置等核心环节&#xff0c;提供可视化配置界面与文件格式化检索功能。压缩包共25个文件&#xff0c;约954KB…

作者头像 李华
网站建设 2026/9/1 11:06:07

PDFMathTranslate完整使用指南:如何快速翻译科学PDF论文并保留排版

PDFMathTranslate完整使用指南&#xff1a;如何快速翻译科学PDF论文并保留排版 【免费下载链接】PDFMathTranslate [EMNLP 2025 Demo] PDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译&#xff0c;支持 Google/DeepL/…

作者头像 李华
网站建设 2026/9/1 11:05:56

大模型提示词工程全解析:原理、策略与结构化输出实践

如果你最近在系统学习大模型应用开发&#xff0c;一定会反复遇到同一个问题&#xff1a;同样一个模型&#xff0c;有人能稳定输出结构化的 JSON 接口结果&#xff0c;有人却花费大量时间清洗对话文本&#xff1b;有人设计出的提示词能一次跑通复杂业务流程&#xff0c;有人却始…

作者头像 李华
网站建设 2026/9/1 11:05:31

如何压缩推理成本:VoxCPM INT8量化与显存优化完整实操指南

如何压缩推理成本&#xff1a;VoxCPM INT8量化与显存优化完整实操指南 【免费下载链接】VoxCPM VoxCPM2: Tokenizer-Free TTS for Multilingual Speech Generation, Creative Voice Design, and True-to-Life Cloning 项目地址: https://gitcode.com/GitHub_Trending/vo/VoxC…

作者头像 李华