038 MPV configuration

公開日

原文言語: 中国語 。 AI翻訳: 英語 日本語


See you later.

2021/04/06 update


まだ設定が終わっていないので、先に参考資料だけメモしておく。後で更新。

Ref

ステレオで多チャンネル音声を再生すると、BGMが大きすぎて台詞が小さくなる:

HDR動画の明るさが不安定:

HDR動画だと思う。自分も一部のHDR動画で同じ問題があった。トーンマッピング(tone-mapping)のアルゴリズムを変えると良い。デフォルトは hable で、自分は mobius に変えた(以前のデフォルト)。
設定ファイルに以下の行を追加して試す。まだ問題があれば他のアルゴリズムも試す。公式ドキュメントに詳しく書いてある。
tone-mapping=mobius


2021/04/06 update

佛系設定

1年放置した投稿(咕咕咕~~~

今日たまたま、自分が適当にいじったconfigが古くなっている気がした。コマンドラインで実行するといくつかのオプションが見つからないと言われる。
この投稿 VCB bbs - 分享一下自己的mpv配置 をちらっと見たら、mpv側で機能が色々更新され、より簡潔に同じ設定ができそうだった。

考えた末、あまり弄らないことにした。佛系で、使えればOK、最小限の変更だけ。

lua scripts

scripts フォルダを見た。公式の更新は /usr/share/mpv/scripts/ にある。自分が使っていたのより一つ少ないっぽいので、以前のluaスクリプトをバックアップ:

Terminal window
cp /usr/share/mpv/scripts/* ~/.config/mpv/scripts/

config file

mpv.conf をバックアップ:

Terminal window
cp /usr/share/doc/mpv/mpv.conf ~/.config/mpv/

開いて、好みに合わせて調整。
ファイル末尾に include があり、他の設定ファイルを読み込める。カスタム設定を別ファイルに分けると便利。
mpv.conf.custom を追加:

# You can also include other configuration files.
#include=/path/to/the/file/you/want/to/include
include=~/.config/mpv/mpv.conf.custom

自分のカスタム設定は mpv.conf.custom に入れた:

###################
# Custom settings #
###################
# ref: http://bbs.vcb-s.com/thread-2730-1-1.html
save-position-on-quit
icc-profile-auto
icc-3dlut-size=256x256x256
sub-auto=fuzzy
sub-file-paths=subs
slang=chi,zh-CN,sc,chs
audio-file-auto=fuzzy
#audio-file-paths=audio
alang=jpn,ja,eng,en
screenshot-format=png
screenshot-template=mpv-shot-%F-%p-%n
# This option is not set by default, and thus will write screenshots to the directory from which mpv was started.
# https://mpv.io/manual/stable/#options-screenshot-directory
screenshot-tag-colorspace=yes
screenshot-high-bit-depth=yes
screenshot-png-compression=0
screenshot-png-filter=0
screenshot-directory=~/Pictures/mpv_cap/
# mpv.confのあるディレクトリに shaders_cache の空フォルダを作り、コンパイル済みGPU shadersを保存して起動を速くする。
# 注意:APPDATA配下でない場合、このフォルダにユーザー書き込み権限があること。
gpu-shader-cache-dir="~/.config/mpv/shaders_cache"

上の設定の21,22行

# This option is not set by default, and thus will write screenshots to the directory from which mpv was started
# <https://mpv.io/manual/stable/#options-screenshot-directory>

以前はバグがあって、スクショ保存先をカスタムするとmpv起動時に勝手に2枚撮ってしまった。
でも今回の設定では、そのバグは出ていない気がする。

bug: something something hello world

設定後にYouTube動画を開くと、画面に変な透かしが出た:

最初はオンライン動画の問題かと思ったが、ローカル動画でも同じ透かしが出た。
ネットで調べても同じ問題が見つからない。

configは問題なし。
lua scriptsを見たら osd-test.lua が原因だった…無効化。

犯人特定は grep hello ~/.config/mpv/scripts/*.lua

mpvでYouTube動画/配信を見る

mpvでYouTube配信を見るのも良い。mpv https://..... とURLを貼るか、mpvウィンドウにURLを投げればOK。

色々試して、分辨率指定、CLI出力抑制、バックグラウンド実行のコマンドを作った:

Terminal window
mpv --ytdl-raw-options=format=48 https://www.youtube.com/watch?v=xxxxxxxxxx > /dev/null 2>&1 &
  • --ytdl-raw-options=format=48 1080pは少し重いので画質を下げる(fucking GFW)。48format idyoutube-dl -F https://www.youtube.com/watch?v=xxxxxxxxxx で形式一覧が出る。
  • > /dev/null 2>&1 コマンド出力を全部捨てる
  • & バックグラウンドで新しいbashでmpv実行。今のbashを閉じられる

最後にこの長いコマンドを alias にして、一键で配信を見る。

Ref:
mpv manual
stackoverflow - How to select video quality from youtube-dl
stackoverflow - What is /dev/null 2>&1


2021/12/08 update

良い設定があったのでパクる(


2023/08/12 update

Mpv-Playlistmanager

少しmpvを弄った。デフォルトで F8 のプレイリストのフォントが大きすぎて、1画面に5件も表示できない。
フォントサイズを小さくする方法を探したが、良い方法がなさそう。フォントサイズ変更は全てのUI部品に影響するっぽい。

仕方ないのでプレイリストスクリプトを変えた:Github - Mpv-Playlistmanager。良さそう。
特別な設定は要らず、.lua.conf を該当フォルダに入れるだけ。

ただ最初は問題があって、現在の動画だけで、同じフォルダ内の他の動画が読み込まれなかった。
playlistmanager.conf を見た:

#loadfiles at startup if 1 or more items in playlist
loadfiles_on_start=yes

loadfiles_on_startyes にすればフォルダ内の動画を全部読み込める。

このスクリプトは画像ファイルも読み込んでしまう。loadfiles_filetypes で画像拡張子を削除すればOK。

mpv-osc-modern-f

良い画面コントロールを見つけた。内蔵より遥かに良いので変えた: Github - mpv-osc-modern-f
これも特別な設定は不要。プロジェクトの説明通りにして、好みで少し調整すればOK。

Github - thumbfast の進捗バーサムネスクリプトも良いので一緒に入れた。


まだ面白そうなスクリプトがたくさんある。時間ができたらまた弄る~~(咕咕咕~~
Github - Awesome mpv 有用なmpvリソースのナビ
Github - mpv-scripts Mpv-Playlistmanager 作者のスクリプト集