缓存选项
本节列出 mpv 的缓冲和缓存选项。
缓存配置
缓存启用
bash
# 启用缓存
cache=yes
# 禁用缓存
cache=no
# 自动缓存
cache=auto缓存大小
bash
# 缓存大小(字节)
demuxer-max-bytes=150MiB
# 缓存大小(秒)
demuxer-max-secs=10
# 后向缓存
demuxer-max-back-buffer=75MiB缓存行为
预读取
bash
# 预读取时间(秒)
demuxer-readahead-secs=20
# 预读取字节
demuxer-readahead-bytes=50MiB
# 禁用预读取
demuxer-readahead-secs=0缓存策略
bash
# 缓存策略
cache-secs=100000
# 缓存文件
cache-file=TMP
# 缓存目录
cache-dir=~/.cache/mpv缓存文件
文件配置
bash
# 使用临时文件
cache-file=TMP
# 使用内存
cache-file=memory
# 指定文件
cache-file=/path/to/cache文件清理
bash
# 立即清理
cache-unlink-files=immediate
# 延迟清理
cache-unlink-files=delayed
# 禁用清理
cache-unlink-files=no网络缓存
网络缓冲
bash
# 网络缓冲大小
demuxer-max-bytes=500MiB
# 网络缓冲时间
demuxer-max-secs=100
# 网络预读取
demuxer-readahead-secs=20流媒体缓存
bash
# 流媒体缓存
stream-cache=yes
# 流媒体缓冲
stream-buffer-size=64KiB本地缓存
本地文件缓存
bash
# 本地文件缓存
cache=yes
# 本地缓存大小
demuxer-max-bytes=50MiB
# 本地预读取
demuxer-readahead-secs=5光盘缓存
bash
# 光盘缓存
disc-cache=50000
# 光盘预读取
disc-readahead=yes缓存调试
调试信息
bash
# 显示缓存信息
mpv --stats video.mp4
# 显示缓存状态
mpv --msg-level=all=v video.mp4缓存测试
bash
# 测试缓存
mpv --cache=yes --demuxer-max-bytes=150MiB video.mp4
# 测试预读取
mpv --demuxer-readahead-secs=20 video.mp4缓存性能
性能优化
bash
# 减少缓存延迟
demuxer-max-secs=5
# 增加缓存大小
demuxer-max-bytes=500MiB
# 优化预读取
demuxer-readahead-secs=10低延迟配置
bash
# 低延迟缓存
cache=no
demuxer-max-bytes=0
demuxer-max-back-buffer=0
demuxer-readahead-secs=0缓存故障排除
常见问题
缓冲区溢出
- 增加缓冲区大小:
demuxer-max-bytes=500MiB - 减少预读取:
demuxer-readahead-secs=10
- 增加缓冲区大小:
播放卡顿
- 增加缓存:
cache=yes - 增加预读取:
demuxer-readahead-secs=20
- 增加缓存:
内存占用高
- 减少缓存大小:
demuxer-max-bytes=50MiB - 使用文件缓存:
cache-file=TMP
- 减少缓存大小:
调试命令
bash
# 显示缓存信息
mpv --stats video.mp4
# 测试缓存
mpv --cache=yes --demuxer-max-bytes=150MiB video.mp4