本机配置:
安装mpv:
>>> brew install mpv --cask
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 3 taps (homebrew/core, homebrew/cask and homebrew/cask-fonts).
==> New Formulae
crcany hexo
==> Updated Formulae
Updated 240 formulae.
==> Renamed Formulae
prest -> prestd
==> New Casks
f-bar lightkey
==> Updated Casks
Updated 109 casks.
==> Downloading https://laboratory.stolendata.net/~djinn/mpv_osx/mpv-0.33.0.tar.gz
Already downloaded: /Users/microfat/Library/Caches/Homebrew/downloads/790fd6947899ffa03bacd875f366c0cac9b203bfa5dff288672d3c1c1a9bc400--mpv-0.33.0.tar.gz
==> Installing Cask mpv
==> Moving App 'mpv.app' to '/Applications/mpv.app'.
==> Linking Binary 'mpv' to '/usr/local/bin/mpv'.
==> Linking Manpage 'mpv.1' to '/usr/local/share/man/man1/mpv.1'.
🍺 mpv was successfully installed!
安装IINA:
测试视频
测试结果
mpv
IINA
结论
可以看到IINA使用了硬解,CPU使用率基本维持在15%左右,而mpv没有启用硬解,所以CPU使用率基本在300%左右
尝试mpv手动启用硬解
# 开启硬解并将日志输出到log.tx中
>>> mpv --hwdec=auto --log-file=log.txt Game.of.Thrones.S08E01.Winterfell.2160p.BluRay.REMUX.HEVC.DTS-HD.MA.TrueHD.7.1.Atmos-FGT.mkv
File tags:
Title: Game.of.Thrones.S08E01.Winterfell.2160p.BluRay.REMUX.HEVC.DTS-HD.MA.TrueHD.7.1.Atmos-FGT
[ffmpeg/video] hevc: Unknown sw_format.
[ffmpeg/video] hevc: Failed setup for format videotoolbox_vld: hwaccel initialisation returned error.
AO: [coreaudio] 48000Hz stereo 2ch s32
VO: [libmpv] 3840x2160 yuv420p10
AV: 00:00:03 / 00:53:07 (0%) A-V: 0.000
# 查看输出的log
>>> cat log.txt
...
[ 0.462][v][af] [out] 48000Hz stereo 2ch s32
[ 0.533][v][vd] Using software decoding.
[ 0.533][v][vd] Decoder format: 3840x2160 yuv420p10 bt.2020-ncl/bt.2020/pq/limited/auto SP=4.926108 CL=unknown
...
可以看到并没有使用硬解码,而且CPU使用率没有任何改善
GitHub上有人和我遇到一样的问题https://github.com/mpv-player/mpv/issues/7256
解决办法是重新源码编译mpv,但到底可不可行,还没来得及试,等试过了再更新本文