Skip to content

截图选项

本节列出 mpv 的截图功能选项。

截图格式

格式选择

bash
# PNG 格式
screenshot-format=png

# JPEG 格式
screenshot-format=jpg

# WebP 格式
screenshot-format=webp

格式质量

bash
# PNG 压缩级别 (0-9)
screenshot-png-compression=7

# JPEG 质量 (0-100)
screenshot-jpeg-quality=90

# WebP 质量 (0-100)
screenshot-webp-quality=90

截图目录

目录设置

bash
# 指定截图目录
screenshot-directory=~/Pictures/mpv

# 使用视频文件所在目录
screenshot-directory=.

目录创建

bash
# 自动创建目录
screenshot-directory=~/Pictures/mpv

截图文件名

文件名模板

bash
# 截图文件名模板
screenshot-template="%F-%P"

# 模板变量
# %F - 文件名(不含扩展名)
# %P - 时间戳(HH-MM-SS)
# %p - 时间戳(秒)
# %n - 截图序号
# %t - 时间戳(完整)

文件名示例

bash
# 使用时间戳
screenshot-template="%F-%P"

# 使用序号
screenshot-template="%F-%n"

# 使用完整时间
screenshot-template="%F_%t"

截图内容

截图类型

bash
# 截图包含字幕
screenshot-template="%F-%P"

# 截图不包含字幕
screenshot-template="%F-%P"

截图命令

bash
# 截图命令
screenshot
screenshot-to-file filename.png
screenshot-to-file filename.png subtitles
screenshot-to-file filename.png video

截图滤镜

截图滤镜

bash
# 截图时应用滤镜
screenshot-filter=lavfi=[scale=1920:1080]

# 截图时应用色彩空间
screenshot-high-bit-depth=yes

截图调试

调试信息

bash
# 显示截图信息
mpv --msg-level=all=v video.mp4

# 测试截图
mpv --screenshot-to-file=test.png --start=10 --frames=1 video.mp4

截图脚本

Lua 脚本截图

lua
-- 截图脚本
mp.add_key_binding('ctrl+s', 'screenshot-sequence', function()
    local start_time = mp.get_property_number('time-pos')
    local end_time = mp.get_property_number('duration')
    
    for t = start_time, end_time, 10 do
        mp.commandv('screenshot-to-file', 
            string.format('frame_%05d.png', t),
            'subtitles')
    end
end)

JavaScript 脚本截图

javascript
// 截图脚本
mp.add_key_binding('ctrl+s', 'screenshot-sequence', function() {
    const start = mp.get_property_number('time-pos');
    const end = mp.get_property_number('duration');
    
    for (let t = start; t < end; t += 10) {
        mp.commandv('screenshot-to-file', 
            `frame_${t.toString().padStart(5, '0')}.png`,
            'subtitles');
    }
});

下一步