Mac OS X下的MPV配置文件(字幕亂碼、從上次播放、Opengl)

前一段時間沒事安裝了MPV給我的新Macbook Pro 15,啟動速度很快,播放視頻解碼很不錯,就是字幕加載這費(fèi)勁了點,所以簡單看了下。沒想到要配置一個配置文件,本來很容易的事情沒想到還是搞了這么麻煩,無奈只能簡單看看了,弄了一個通用的配置文件出來,在這里記錄一下,以免以后忘記了,也希望分享給大家,如果沒有特殊需要這個文件應(yīng)該已經(jīng)能夠滿足所有需要了。

在粘貼配置之前,我先做一點簡單的說明。
該配置是基于

https://github.com/Argon-/mpv-config/blob/master/mpv.conf

該文件修改的,只是這位同學(xué)并不是為我們中國大眾設(shè)置的,所以簡單改了改,因為他確實配置的比較全面所以以這個為基礎(chǔ)。

  1. 具備記錄上次播放位置功能(設(shè)置文件第一行,不想要前面加#注釋掉就行。我簡單看了下原理,就是會往~/.config/mpv/watch_later這個文件夾下面寫入一個文件,文件里面有3行,一個記錄時間,一個記錄當(dāng)時的播放狀態(tài),一個記錄了窗體信息。大概就這樣你看多了文件就會多,不過一個文件也就40字節(jié)左右,沒什么關(guān)系)
  2. 使用的視頻解碼是opengl(之前有人說過這個在mac下面比opengl-hq省電,其實太高畫質(zhì)我也看不出來,這個就挺好)
  3. 字幕默認(rèn)會讀取和播放的文件名同名的字幕,當(dāng)然擴(kuò)展名肯定是不一樣的(字幕的配置請各位看Subtitles那段,我把有一個自定義字幕樣式的給注釋掉了,如果有人要用請自行設(shè)置,他生效的前提是那個字幕文件沒有設(shè)定樣式,不過一般的字幕都不設(shè)定樣式。這個配置里面還會根據(jù)情況將utf8和gb18030編碼的字幕正確解碼,對于需要中文的一般情況肯定是夠了)
  4. 打開視頻后自動播放(???是的就是這個設(shè)置,本來默認(rèn)就是有這個設(shè)置的,但是這個配置文件默認(rèn)是關(guān)閉的,大家要想打開視頻后不默認(rèn)播放可以把pause那個注釋打開,然后就不會默認(rèn)播放了...)
    BTW:這個默認(rèn)配置文件緩存原先默認(rèn)是8G,我給改成80兆了,各位如果有需要可以自己改,但是我確實不知道有什么用。

剩下的就請拷貝下面配置到這個文件里:

vi ~/.config/mpv/mpv.conf

# vim: syntax=config

###########
# General #
###########

save-position-on-quit
no-border                               # no window title bar
msg-module                              # prepend module name to log messages
msg-color                               # color log messages on terminal
term-osd-bar                            # display a progress bar on the terminal
use-filedir-conf                        # look for additional config files in the directory of the opened file
#pause                                  # no autoplay
keep-open                               # keep the player open when a file's end is reached
autofit-larger=100%x95%                 # resize window in case it's larger than W%xH% of the screen
deinterlace=auto                        # 'auto' does not imply interlacing-detection
cursor-autohide-fs-only                 # don't autohide the cursor in window mode, only fullscreen
input-media-keys=no                     # enable/disable OSX media keys
cursor-autohide=1000                    # autohide the curser after 1s

screenshot-format=png
screenshot-png-compression=8
screenshot-template='~/Desktop/%F (%P) %n'

hls-bitrate=max                         # use max quality for HLS streams
ytdl-raw-options=format="[protocol!=http_dash_segments][protocol!=rtmp]"


#########
# Cache #
#########

cache=yes
cache-default=81960                     # size in KB  BTW: before is 8000000 it is too big
cache-backbuffer=25000                  # size in KB
cache-initial=0                         # start playback when your cache is filled up with x kB
cache-secs=10                           # how many seconds of audio/video to prefetch if the cache is active


#############
# OSD / OSC #
#############

osd-level=1                             # enable osd and display --osd-status-msg on interaction
osd-duration=2500                       # hide the osd after x ms
osd-status-msg='${time-pos} / ${duration}${?percent-pos: (${percent-pos}%)}${?vo-drop-frame-count:${!vo-drop-frame-count==0: Dropped: ${vo-drop-frame-count}}}\n${?chapter:Chapter: ${chapter}}'

osd-font='Source Sans Pro'
osd-font-size=32
osd-color='#CCFFFFFF'                   # ARGB format
osd-border-color='#DD322640'            # ARGB format
#osd-shadow-offset=1                    # pixel width for osd text and progress bar
osd-bar-align-y=0                       # progress bar y alignment (-1 top, 0 centered, 1 bottom)
osd-border-size=2                       # size for osd text and progress bar
osd-bar-h=2                             # height of osd bar as a fractional percentage of your screen height
osd-bar-w=60                            # width of " " "


#############
# Subtitles #
#############

sub-use-margins
sub-ass-force-margins

demuxer-mkv-subtitle-preroll            # try to correctly show embedded subs when seeking
sub-auto=fuzzy                          # external subs don't have to match the file name exactly to autoload
sub-paths=ass:srt:sub:subs:subtitles    # search for external subs in the listed subdirectories
embeddedfonts=yes                       # use embedded fonts for SSA/ASS subs
sub-fix-timing=no                       # do not try to fix gaps (which might make it worse in some cases)
sub-ass-force-style=Kerning=yes         # allows you to override style parameters of ASS scripts

sub-font-size=48            # Font Size UPDATE: 2017-02-20
sub-codepage=utf8:gb18030       # for support Chinese

# the following options only apply to subtitles without own styling (i.e. not ASS but e.g. SRT)
#sub-font="Source Sans Pro Semibold"
#sub-font-size=36
#sub-color="#FFFFFFFF"
#sub-border-color="#FF262626"
#sub-border-size=3.2
#sub-shadow-offset=1
#sub-shadow-color="#33000000"
#sub-spacing=0.5


#############
# Languages #
#############

#slang=enm,en,eng,de,deu,ger             # automatically select these subtitles (decreasing priority)
#alang=en,eng,de,deu,ger       # automatically select these audio tracks (decreasing priority)


#########
# Audio #
#########

audio-file-auto=fuzzy                   # external audio doesn't has to match the file name exactly to autoload
audio-pitch-correction=yes              # automatically insert scaletempo when playing with higher speed
volume-max=200                          # maximum volume in %, everything above 100 results in amplification
volume=100                              # default volume, 100 = unchanged


################
# Video Output #
################

# Active VOs (and some other options) are set conditionally
# See here for more information: https://github.com/wm4/mpv-scripts/blob/master/auto-profiles.lua
# The script was slightly modified, functions from scripts/auto-profiles-functions.lua are imported

# Defaults for all profiles
vo=opengl
tscale=linear


[high-quality]
profile-desc=cond:is_desktop() and get('width', math.huge) < 3840
scale=ewa_lanczossharp
cscale=ewa_lanczossoft
dscale=mitchell
scale-antiring=0.7
cscale-antiring=0.7
dither-depth=auto
correct-downscaling=yes
sigmoid-upscaling=yes
deband=yes

[mid-quality]
profile-desc=cond:(is_laptop() and not on_battery() and get('width', math.huge) < 1920) or (is_desktop() and get('width', math.huge) >= 3840)
scale=spline36
cscale=bilinear
dscale=mitchell
scale-antiring=1.0
cscale-antiring=1.0
dither-depth=auto
correct-downscaling=yes
sigmoid-upscaling=yes
deband=yes

[low-quality]
profile-desc=cond:is_laptop() and (on_battery() or get('width', math.huge) >= 1920)
scale=bilinear
cscale=bilinear
dscale=bilinear
scale-antiring=0.0
cscale-antiring=0.0
dither-depth=no
correct-downscaling=no
sigmoid-upscaling=no
deband=no

[60FPS]
profile-desc=cond:is_laptop() and get('container-fps', 0) >= 59
scale=bilinear
cscale=bilinear

[4K]
profile-desc=cond:get('width', -math.huge) >= 3840
vd-lavc-threads=32

[4K-inverted]
profile-desc=cond:get('width', -math.huge) < 3840
vd-lavc-threads=0


[default]


###################################
# Protocol Specific Configuration #
###################################

[protocol.https]
#cache=yes
#cache-default=500000                    # size in KB
#cache-backbuffer=250000                 # size in KB
cache-secs=100                          # how many seconds of audio/video to prefetch
user-agent='Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:47.0) Gecko/20100101 Firefox/47.0'

[protocol.http]
#cache=yes
#cache-default=500000                    # size in KB
#cache-backbuffer=250000                 # size in KB
cache-secs=100                          # how many seconds of audio/video to prefetch
user-agent='Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:47.0) Gecko/20100101 Firefox/47.0'

[extension.gif]
cache=no
no-pause
loop-file=yes

[extension.webm]
#cache=no
#no-pause
#loop-file=yes
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容