Windows最強のメディアプレーヤ Anime4Kも動くmpv.netを使おう

mpv.net
Anime4Kを使うためにmpvメディアプレーヤーを使ったのですがWindowsユーザーからするとストレスが貯まります。mpv自体はとても高性能でHDRなど最新の環境に適しています。インターフェースの悪さが玉にキズです。
そこでmpvをラップしてユーザーインターフェースをWindowsに近づけたmpv.netをお薦めします。

前回の記事
ではビデオを4K化してくれるAnime4Kの最新バージョンの使い方を紹介しました。実質はmpvメディアプレーヤの使い方の説明になってしまいます。
mpvメディアプレーヤはカスタマイズ性が良くスクリプトで機能を拡張できます。mpvはMPlayerからの派生したのでffmpegの強力なフィルターも自由に使えます。またHDRビデオの再生にも対応しています。この記事執筆時においてHDRビデオへの対応は他のメディアプレーヤーに比べ一番良いと思います。

ただしLinux文化圏特有の使いにくさがあります。基本的にマウスで操作するWindowsのアプリとは違い、mpvはキーボードで操作するようにできています。カスタマイズ性は良くても全て設定をテキストファイルに書かなくてはなりません。設定しようにも設定ファイルをどこに置けばいいのか?普通のユーザーは最初の一歩でつまづくでしょう。

しかしmpvは使うのをあきらめるには魅力的すぎるメディアプレーヤーです。ユーザーインターフェースを独自に加えた派生版も公開されています。そんな派生版にWindows用のメニューなどユーザーインターフェースを加えたmpv.netというのがあります。(SMPlayerもありますが、ちょっとUIが過剰でいじりにくい)

mpv.net

mpv.net is a modern media player for Windows that works just like mpv.
mpvにWindows用のGUIを加えたメディアプレーヤです。更新も活発であり現役メディアプレーヤとして使えそうです。WindowsのネイティブアプリのようなGUIでは無いですがマウス操作だけで主要ば設定を行え、mpvがとても便利になります。
マウスの右クリックで次のようなメニューが表示できるようになります。
mpv.net menu 1
一通りの設定や操作をマウスでできます。
操作感はWindowsの他のメディアプレーヤと変わらなくなります。

mpv.netのインストール

mpv.netをインストールしましょう。
GitHubのリリースタブを開くとバイナリファイルが公開されています。
https://github.com/stax76/mpv.net/releases
”Assets”を展開します。
インストーラーでインストールするものとポータブル版があります。ここではポータブル版で説明していきます。ポータブル版とはmpv.netのフォルダを自分で好きな所に置いて使うものです。USBメモリーに置いておけば持ち運ぶことができます。
今回は64bitのポータブルをダウンロードするとして説明します。”mpv.net-portable-x64-5.4.7.0.zip”をクリックしてダウンロードします。

ダウンロードしたファイルを展開します。zipなのでエクスプローラでできますね。zipファイルを右クリックして"すべて展開"を選びます。展開したフォルダ名は”mpv.net-portable-x64-5.4.7.0”のようにバージョン番号が入ってしまいます。今後バージョンアップをした時のためにフォルダー名のバージョン番号を削除して置きましょう。フォルダ名を”mpv.net-portable-x64”にします。
このフォルダを好きな場所に置きます。マイドキュメントフォルダが良いでしょう。

フォルダの中の"mpvnet.exe"が実行ファイルです。実行してみましょう。
セキュリティ警告が出たら"詳細情報"をクリックします。実行ボタンが表示されるのでクリックすると実行されます。
一番最初にmpvの設定ファイルを保存するフォルダの場所を聞かれます。
mpv.net config folder
上がmpvの標準のフォルダ、真ん中がmpv.netと同じフォルダです。
既にmpvを使っていなければ真ん中のmpv.netと同じフォルダを選びます。
mpv.netのフォルダの下に”portable_config”フォルダができます。基本的な設定ファイルも作られます。これは使い勝手の上でかなり重要です。

そして、
mpv.net画面
この画面が出てきます。
メディアファイルをドラッグアンドドロップで落とせば再生できます。

ファイルの関連付け

メディアファイルの関連付けはされていません。拡張子毎にmpv.netを標準で開くプログラムにしましょう。
  1. ファイルエクスプローラでビデオファイルを表示します。
  2. ビデオファイルの上で右クリックして”プログラムから開く”→”別のプログラムを選択”をクリックします。
  3. ”その他のアプリ”をクリックします。
  4. ”常にこのアプリを使って.xxxファイルを開く”にチェックします。
  5. ”このPCで別のアプリを探す”
  6. mpv.netのフォルダのmpvnet.exeを指定します。

キー割り当て

mpv.netなら標準でも操作の違和感なくメディアプレーヤとして使えるでしょう。
キーボードにはいろいろな機能が割り当てられています。現在の割り当てを見るにはF1キーを押します。
mpvのデフォルトとは少し異なります。少し紹介しておきます。

 再生/一時停止space
 停止s
 次のチャプタPageUp
 前のチャプタPageDown 
 次のファイルF12
 前のファイルF11
 ボリュームアップ + / ホイールアップ 
 ボリュームダウン - / ホイールダウン 
 メディア情報 i
 再生情報 t / T
 再生リスト表示 F8
 インターレース解除切り替え d
 ハードウエア支援切り替え Ctrl+h

割り当てを替えるにはinputエディタを開きます。
mpv.net show input editor
右クリックでメニューから”Settings”>"Show Input Editor"を選びます。あるいは"Ctrl"と"i"キーを同時に押すと開きます。

mpv.net input editor
これは"portable_config"フォルダのinput.confの内容を編集するものです。
数字はキーボード上段の数字キーでテンキーではありません。テンキーはKP1,KP2などと表しています。KPはKeypadの略です。

詳細設定

mpv.netのいわゆる詳細設定は右クリックでメニューから”Settings”>"Show Config Editor"を選びます。あるいは"c"キーを押すと開きます。
Config Editor

config editor

これは"portable_config"フォルダのmpv.confとmpvnet.confの内容を編集するものです。

おすすめの設定

詳細設定で私がおすすめする設定を紹介します。
表示の拡大縮小のアルゴリズムを性能の良いものに変えます。
  • Video→scaleで"ewalanczossharp"を選択
  • Video→cscaleで"ewalanczossharp"を選択
  • Video→dcaleで"mitchell"を選択

mpvではビデオファイルを次々とクリックするといくつもプレーヤが起動してしまいました。mpv.netではデフォルトで一つの画面を使いまわしてくれます。後でクリックしたファイルをプレイリストへ追加するような設定もできます。
  • General→process-instance
で選択できます。

再生を途中で止めて再度ファイルを開いた時に前回終了した場所から再生するようにします。
  • Playback→save-position-on-quitで”yes”を選択

音声にラウドネス調整をかけます。ビデオソース毎に音量がバラバラだとボリューム調整が面倒です。mpvはffmpegと同じlibavfilterが使えます。loudnormフィルタで音量を自動調整します。
Config Editorでは設定できません。portable_config"フォルダのmpv.confファイルを直接編集します。mpv.netでctrl+fを押すとフォルダが開きます。mpv.confファイルの"# Editor"とある行の前に次の文を追加します。mpv.confの最後に追加すると有効になりませんので注意してください。
# My settings
af = @loudnorm:lavfi=[loudnorm=I=-16:TP=-1.5:LRA=11]
ラウドネス調整のオンオフを切り替えるキーを割り当てるためにinput.confファイルの最後の行に次の文を追加します。
_ ignore           #menu: -
 Ctrl+l af toggle "@loudnorm"  #menu: My Settings > Loudness on/off
Ctrl+l (エル)キーでラウドネスのオンオフが切り替わります。ついでにメニュー画面の最後にも表示するようにしました。クラシック音楽などを聴く場合はオフにしましょう。

YouTubeのミックスリストをプレイリストとして連続再生できるようにします。youtube-dlへのオプションをmpv.confに書くようです。前述のラウドネス設定の直後に次の文を追加します。
ytdl-raw-options="yes-playlist="
再生リストは連続再生できますが、これを書かないとミックスリストはビデオ1本しか再生しませんでした。YouTubeで検索したページのURLをmpvへ落っことすと検索結果がプレイリストに登録されます。
YouTubeのビデオは音量がバラバラなのでラウドネスが効果を発揮します。

Anime4Kを使う

mpv.netではもちろんAnime4Kを使うことができます。4Kモニタを使っている場合に解像度の低いビデオを機械学習データを使って4Kにアップスケールしてくれます。
mpv.netの中身はmpvなので同じ設定で動かすことができます。mpv.netのキー割り当てに合わせて前回の記事の設定を変えます。

この記事公開時のmpvおよびmpv.netのバージョンにバグがありAnime4Kの画面が壊れます。
leon-204863 commented on 2 MarHowever in fullscreen mode the video is completely black and i can only hear the audio track
ArtyomR0Bot commented on 20 Apr
There is a problem with d3d11 API. On windows, d3d11 is used by default.
If I use gpu-api=opengl or gpu-api=vulkan, it works fine.
d3d11関連のバグのようでConfig Editorで"Video→gpu-api"で"opengl"を選択すると回避できます。
注意点としてopenglを使うとHDRビデオをHDRとして再生できなくなります。

これを踏まえて続けます。
Anime4Kのファイルをダウンロードします。
最新バージョンのAssetsからファイルをダウンロードします。前述のAnime4Kの記事を参照してください。
【2020/06/09 v3.1の設定例に変更しました】
展開したshaderファイルは"portable_config"フォルダ下にshadersフォルダを作って置いてください。

デフォルトでAnime4Kを使うならmpv.confにshaderの指定を書き加えます。portable_config"フォルダのmpv.confファイルを直接編集します。mpv.confファイルの"# Editor"とある行の前に例えば次の文を追加します。mpv.confの最後に追加すると有効になりませんので注意してください。
glsl-shaders = "~~/shaders/Anime4K_Upscale_CNN_L_x2_Denoise.glsl;~~/shaders/Anime4K_Auto_Downscale_Pre_x4.glsl;~~/shaders/Anime4K_Deblur_DoG.glsl;~~/shaders/Anime4K_DarkLines_HQ.glsl;~~/shaders/Anime4K_ThinLines_HQ.glsl;~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl"

前述のバグがある間は書き加えない方が良いでしょう。

Anime4Kの効果を変更できるようにします。キーを割り当てて簡単に切り替えられるようにします。input.confファイルの最後の行に次の文を追加します。
_          ignore                  #menu: My Settings > -
 1          change-list glsl-shaders set "~~/shaders/Anime4K_Upscale_CNN_L_x2_Denoise.glsl;~~/shaders/Anime4K_Auto_Downscale_Pre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl" #menu: My Settings > Anime4K 480/720p faithful
 2          change-list glsl-shaders set "~~/shaders/Anime4K_Upscale_CNN_L_x2_Denoise.glsl;~~/shaders/Anime4K_Auto_Downscale_Pre_x4.glsl;~~/shaders/Anime4K_DarkLines_HQ.glsl;~~/shaders/Anime4K_ThinLines_HQ.glsl;~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl" #menu: My Settings > Anime4K 480/720p perceptual
 3          change-list glsl-shaders set "~~/shaders/Anime4K_Upscale_CNN_L_x2_Denoise.glsl;~~/shaders/Anime4K_Auto_Downscale_Pre_x4.glsl;~~/shaders/Anime4K_Deblur_DoG.glsl;~~/shaders/Anime4K_DarkLines_HQ.glsl;~~/shaders/Anime4K_ThinLines_HQ.glsl;~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl" #menu: My Settings > Anime4K 480/720p perceptual+deblur
 4          change-list glsl-shaders set "~~/shaders/Anime4K_Denoise_Bilateral_Mode.glsl;~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl" #menu: My Settings > Anime4K 1080p faithful
 5          change-list glsl-shaders set "~~/shaders/Anime4K_Denoise_Bilateral_Mode.glsl;~~/shaders/Anime4K_DarkLines_HQ.glsl;~~/shaders/Anime4K_ThinLines_HQ.glsl;~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl" #menu: My Settings > Anime4K 1080p perceptual
 6          change-list glsl-shaders set "~~/shaders/Anime4K_Denoise_Bilateral_Mode.glsl;~~/shaders/Anime4K_Deblur_DoG.glsl;~~/shaders/Anime4K_DarkLines_HQ.glsl;~~/shaders/Anime4K_ThinLines_HQ.glsl;~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl" #menu: My Settings > Anime4K 1080p perceptual+deblur
 0          change-list glsl-shaders clr "" #menu: My Settings > Shaders Clear
数字キーの1~6を押すとAnime4Kの効果を変えられます。0を押すとオフになります。
メニューから選択できるようにしています。
mpv.net mySettings
シェーダを使っているか確認するには"Shift+t"キーを押した後に"2"を押します。

まとめ

mpv.netはWindowsで使うビデオプレーヤーとして良くできています。mpvと同じなのでffmpegのようにlibavfilterを使うことができます。

この記事公開時の最新バージョンのmpv.netでAnime4Kを使う場合は、Config Editorで"Video→gpu-api"で"opengl"を選択してください。ただしHDRビデオをHDRとして再生できなくなります。

Anime4Kを試すのにmpvを使い始めると次々と不満点が出てきました。mpv.exe自体はとても便利なメディアプレーヤーなのですがWindowsユーザーにとってはイライラがつのります。
特に我慢ならないのがmpvが複数起動してしまうことです。プログラム用語的にはシングルインスタンスでの利用ができません。これはユーザースクリプトで解決できるだろう・・・と思ったのですが、気持ちの良い解決策が見つかりませんでした。

スクリプトを探すうちにmpvにGUIメニューを加えたものが有ること知りました。Windowsユーザーが使いやすそうなものとしてmpv.netがありました。シングルインスタンスにも対応しています。更新頻度も高く最新のmpvバージョンへの対応も速いようです。
これならWindowsユーザーでも気持ちよくmpvを使えそうです。メディアプレーヤで良く見かける設定はマウス操作で設定できます。

ビデオファイルを開くとビデオファイルの有るフォルダ内のメディアファイルを再生リストへ自動的に追加してくれるのも良い点です。これでファルダ内のビデオの連続再生も簡単にできます。ちなみにmpvでこれをやるにはフォルダごとmpvにドラッグアンドドロップをします。

youtube-dlも同梱されています。ネット動画もAnime4Kの恩恵を受けられます。ネット動画が再生できないなぁと思ったら、mpv.netのフォルダでコマンドプロンプトを開いて"youtube-dl -U"としてyoutube-dlのアップデートをしてください。ストリームとして再生しているようですのでダウンロード禁止の規約は避けられると思います。正確な法解釈はわかりませんので自己責任で試してください。

mpv.netはVLCやMPC-BEを超えるビデオプレーヤだと思います。

コメント

最近のコメント

Threaded Recent Comments will be here.