「Mpv」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(同期)
3行目: 3行目:
 
[[en:Mpv]]
 
[[en:Mpv]]
 
[[ru:Mpv]]
 
[[ru:Mpv]]
  +
[[zh-cn:Mpv]]
 
{{Related articles start}}
 
{{Related articles start}}
 
{{Related|MPlayer}}
 
{{Related|MPlayer}}
 
{{Related articles end}}
 
{{Related articles end}}
[http://mpv.io/ mpv] は [http://www.mplayerhq.hu/design7/news.html mplayer] と [http://www.mplayer2.org/ mplayer2] がベースの動画プレイヤーです。幅広いフォーマットの動画ファイル、オーディオ・ビデオコーデック、字幕タイプをサポートしています。''mpv'' と前出のプレイヤーとの違いは [https://github.com/mpv-player/mpv/blob/master/DOCS/mplayer-changes.rst このページ] で包括的に (一部不完全ですが) リストアップされています。
+
[http://mpv.io/ mpv] は [[MPlayer]] と MPlayer2 がベースの動画プレイヤーです。幅広いフォーマットの動画ファイル、オーディオ・ビデオコーデック、字幕タイプをサポートしています。''mpv'' と前出のプレイヤーとの違いは [https://github.com/mpv-player/mpv/blob/master/DOCS/mplayer-changes.rst このページ] で包括的に (一部不完全ですが) リストアップされています。
   
 
== インストール ==
 
== インストール ==
16行目: 17行目:
 
''mpv'' には OSC という名前のすっきりとしたユーザーインターフェイスがあり、マウスを動かした時に表示されます。カジュアルユーザー向けに、他のグラフィカルインターフェイスも存在します:
 
''mpv'' には OSC という名前のすっきりとしたユーザーインターフェイスがあり、マウスを動かした時に表示されます。カジュアルユーザー向けに、他のグラフィカルインターフェイスも存在します:
   
* {{App|[[Wikipedia:SMPlayer|SMPlayer]]|CSS テマや YouTube 統合など機能が追加された Qt マルチメディアプレイヤー (Qt 5)。|http://smplayer.sourceforge.net/|{{Pkg|smplayer}}}}
+
* {{App|Baka MPlayer|フリでオープンソース、クロスプラットフォーム、libmpv ベースのマルチメディアプレイヤーQt 5 を使用。|https://github.com/u8sand/Baka-MPlayer/|{{Pkg|baka-mplayer}}, {{AUR|baka-mplayer-git}}}}
  +
* {{App|bomi|強力で使いやすいマルチメディアプレイヤー (Qt 5)。|https://bomi-player.github.io/|{{AUR|bomi}}, {{AUR|bomi-git}}}}
* {{App|xt7-player-mpv|フィルターやドライバー、ladspa プラグインのサポート、ライブラリ・プレイリストの管理、YouTube、オンラインラジオ、ポッドキャスト、DVD-T などの豊富な設定オプションが存在する mpv の Qt/Gambas による GUI。|https://github.com/kokoko3k/xt7-player-mpv|{{AUR|xt7-player-mpv-git}}}}
 
* {{App|Baka MPlayer|フリーでオープンソース、クロスプラットフォームの、libmpv ベースのマルチメディアプレイヤー。Qt 5 を使用。|https://github.com/u8sand/Baka-MPlayer/|{{AUR|baka-mplayer-git}}, {{AUR|baka-mplayer}}}}
 
* {{App|bomi|強力で使いやすいマルチメディアプレイヤー (Qt 5)。|https://bomi-player.github.io/|{{AUR|bomi}} (旧 {{aur-mirror|cmplayer}}), {{AUR|bomi-git}}}}
 
 
* {{App|GNOME MPV|''mpv'' のシンプルな GTK フロントエンド。GTK+ 3 を使用。|https://github.com/gnome-mpv/gnome-mpv/|{{AUR|gnome-mpv-git}}, {{AUR|gnome-mpv}}}}
 
* {{App|GNOME MPV|''mpv'' のシンプルな GTK フロントエンド。GTK+ 3 を使用。|https://github.com/gnome-mpv/gnome-mpv/|{{AUR|gnome-mpv-git}}, {{AUR|gnome-mpv}}}}
  +
* {{App|[[Wikipedia:SMPlayer|SMPlayer]]|CSS テーマや YouTube 統合などの機能が追加された Qt マルチメディアプレイヤー (Qt 5)。|http://smplayer.sourceforge.net/|{{Pkg|smplayer}}}}
  +
* {{App|xt7-player-mpv|フィルターやドライバー、ladspa プラグインのサポート、ライブラリ・プレイリストの管理、YouTube、オンラインラジオ、ポッドキャスト、[[DVB-T]] などの豊富な設定オプションが存在する mpv の Qt/Gambas による GUI。|https://github.com/kokoko3k/xt7-player-mpv|{{AUR|xt7-player-mpv-git}}}}
   
 
{{Note|CMPlayer/''bomi'' パッケージには内部に ''mpv'' が入っています。}}
 
{{Note|CMPlayer/''bomi'' パッケージには内部に ''mpv'' が入っています。}}
26行目: 27行目:
 
== 設定 ==
 
== 設定 ==
   
Mpv の設定は {{ic|mpv.conf}} (設定) と {{ic|input.conf}} (キーバインド) ファイルから読み込まれます。{{ic|XDG_CONFIG_HOME}} [[環境変数]]が設定されてない場合、ユザーの設定ファイルは {{ic|~/.config/mpv}} フォルダから読み込まれます。全ユーザー共通設定{{ic|/etc/mpv}} フォルダから読み込まれます
+
Mpv の設定は {{ic|mpv.conf}} (設定) と {{ic|input.conf}} (キーバインド) {{ic|lua-settings/osc.conf}} (オンスクリンディスプレイ) ファイルから読み込まれます。オプションリスト、man ページや github にあるドキュメントを参照してください: [https://github.com/mpv-player/mpv/blob/master/DOCS/man/options.rst options.rst], [https://github.com/mpv-player/mpv/blob/master/DOCS/man/input.rst input.rst], [https://github.com/mpv-player/mpv/blob/master/DOCS/man/osc.rst osc.rst]
  +
  +
{{ic|XDG_CONFIG_HOME}} [[環境変数]]が設定されてない場合、ユーザーの設定ファイルは {{ic|~/.config/mpv}} フォルダから読み込まれます。全ユーザー共通の設定は {{ic|/etc/mpv}} フォルダから読み込まれます。
   
 
=== {{ic|input.conf}} ファイルの例 ===
 
=== {{ic|input.conf}} ファイルの例 ===
46行目: 49行目:
   
 
''mplayer'' や ''mplayer2'' と違って、''mpv'' は始めから [[VA-API]] と [[VDPAU]] の両方をサポートしています。利用できる設定については [[man ページ]]の {{ic|1=--hwdec=<api>}} オプションのリファレンスを見て下さい。設定を永続化するには、設定ファイルに {{ic|1=hwdec=''method''}} という行を追加します。ハードウェアデコードを使用するとき、ビデオ出力は {{ic|opengl}}, {{ic|opengl-hq}}, {{ic|vdpau}} ({{ic|1=hwdec=vdpau}} を使う場合) のどれかに設定する必要があります。{{ic|1=vo=vaapi}} の使用は推奨されません [https://github.com/mpv-player/mpv/blob/master/DOCS/man/vo.rst]。ハードウェアデコードが使用できない場合、''mpv'' は自動的にソフトウェアデコードにフォールバックします。詳細は [https://github.com/mpv-player/mpv/blob/master/DOCS/man/options.rst options.rst] や [https://github.com/mpv-player/mpv/blob/master/DOCS/man/vo.rst vo.rst] を見て下さい。
 
''mplayer'' や ''mplayer2'' と違って、''mpv'' は始めから [[VA-API]] と [[VDPAU]] の両方をサポートしています。利用できる設定については [[man ページ]]の {{ic|1=--hwdec=<api>}} オプションのリファレンスを見て下さい。設定を永続化するには、設定ファイルに {{ic|1=hwdec=''method''}} という行を追加します。ハードウェアデコードを使用するとき、ビデオ出力は {{ic|opengl}}, {{ic|opengl-hq}}, {{ic|vdpau}} ({{ic|1=hwdec=vdpau}} を使う場合) のどれかに設定する必要があります。{{ic|1=vo=vaapi}} の使用は推奨されません [https://github.com/mpv-player/mpv/blob/master/DOCS/man/vo.rst]。ハードウェアデコードが使用できない場合、''mpv'' は自動的にソフトウェアデコードにフォールバックします。詳細は [https://github.com/mpv-player/mpv/blob/master/DOCS/man/options.rst options.rst] や [https://github.com/mpv-player/mpv/blob/master/DOCS/man/vo.rst vo.rst] を見て下さい。
  +
  +
=== 高品質なビデオ出力 ===
  +
  +
{{ic|opengl-hq}} ビデオ出力は mpv の開発者によって事前に設定された様々なオプションを使用する OpenGL 出力です。{{ic|opengl-hq}} を使用するには、設定ファイルで以下のように指定してください:
  +
  +
{{hc|1=~/.config/mpv/mpv.conf|2=vo=opengl-hq}}
  +
  +
{{ic|opengl-hq}} にはデフォルトで GLSL デバンドフィルダーが有効になっており、ユーザーによっては性能が劣化したりコンテンツの見た目が悪くなることがあります。以下の設定によって、フィルターは簡単に無効化できます:
  +
  +
{{hc|1=~/.config/mpv/mpv.conf|2=vo=opengl-hq:deband=no}}
   
 
=== 停止した位置からの自動レジューム再生 ===
 
=== 停止した位置からの自動レジューム再生 ===
   
 
動画の現在の位置を保存して ''mpv'' を終了するデフォルトのキーは {{ic|Shift+q}} です。このキーはキーバインドの設定ファイルに {{ic|quit_watch_later}} を追加することで変更できます。
 
動画の現在の位置を保存して ''mpv'' を終了するデフォルトのキーは {{ic|Shift+q}} です。このキーはキーバインドの設定ファイルに {{ic|quit_watch_later}} を追加することで変更できます。
  +
  +
プレイヤーの終了時に自動的に現在の再生位置を保存したい場合、{{ic|--save-position-on-quit}} フラグを付けて ''mpv'' を起動してください。オプションを永続化させるには、設定ファイルに {{ic|save-position-on-quit}} という行を追加します。
   
 
=== ボリュームが小さすぎる ===
 
=== ボリュームが小さすぎる ===
61行目: 76行目:
 
=== ルートウィンドウに描画 ===
 
=== ルートウィンドウに描画 ===
   
{{ic|1=--wid=0 file.mp4}} を付けて ''mpv'' を実行してください。これによって ''mpv'' はウィンドウ ID が 0 のウィンドウに描画するようになります。
+
{{ic|1=--wid=0}} を付けて ''mpv'' を実行してください。これによって ''mpv'' はウィンドウ ID が 0 のウィンドウに描画するようになります。
   
 
=== GUI を常時表示 ===
 
=== GUI を常時表示 ===
77行目: 92行目:
 
=== mpv で Twitch.tv のストリーミングを視聴 ===
 
=== mpv で Twitch.tv のストリーミングを視聴 ===
   
  +
{{Pkg|youtube-dl}} がインストールされている場合、mpv は直接 Twitch のライブストリームを開くことができます。
[[Livestreamer#Twitch]] を見て下さい。
 
   
  +
また、{{Pkg|livestreamer}} を使って Twitch をストリーミングする方法もあります。[[Livestreamer#Twitch]] を見て下さい。
Livestreamer を利用する Lua スクリプトが存在します: https://gist.github.com/ChrisK2/8701184fe3ea7701c9cc
 
   
  +
さらに Livestreamer を利用する Lua スクリプトが存在します: https://gist.github.com/ChrisK2/8701184fe3ea7701c9cc
{{Pkg|youtube-dl}} がインストールされている場合、mpv は直接 Twitch のライブストリームを開くことができます。
 
  +
  +
=== youtube-dl とフォーマットの選択 ===
  +
  +
{{ic|--ytdl-format}} のデフォルトは {{ic|bestvideo+bestaudio/best}} となっています。4K 解像度で見ることができる YouTube 動画の場合、たとえ接続しているモニターが 4K に対応していなくても、4K の VP9 でエンコードされた動画をソフトウェアデコードすることになります。
  +
  +
youtube-dl のフォーマットを適切に設定することで問題は簡単に解決します。以下の設定例では、縦の解像度が1080ピクセル以下の動画だけが再生されます:
  +
  +
ytdl-format=bestvideo[height<=?1080]+bestaudio/best
  +
  +
ハードウェアデコードできない特定のコーデックだけを避けたい場合、同じように追加できます。例えば、VP9 を無視するには以下のように設定します:
  +
  +
ytdl-format=bestvideo[height<=?1080][vcodec!=vp9]+bestaudio/best
  +
  +
=== youtube-dl の音声検索 ===
  +
  +
{{ic|.bashrc}} に以下の関数を記述することでターミナルから {{ic|mm "''search terms''"}} を実行して音声を検索・再生できます:
  +
  +
function mm() {
  +
mpv --no-video --ytdl-format=bestaudio ytdl://ytsearch10:"$@"
  +
}
   
=== YouTube 1080p 動画 ===
+
=== コンポジタで mpv を使う ===
   
  +
コンポジタ (例: KDE Plasma 5) を使っていて、mpv で動画を再生するときにコンポジットが無効になってしまう場合 (Plasma でウィンドウが表示されなくなったりデフォルトのアプリスイッチャでウィンドウのサムネイルが表示されなくなる場合)、{{ic|1=x11-bypass-compositor=no}} を使ってみてください。
デフォルトでは ''mpv'' は YouTube の動画を 720p で再生します。YouTube の 1080p の動画を再生するには {{ic|1=--ytdl-format=bestvideo+bestaudio/best}} オプションを付けて ''mpv'' を起動してください。
 
   
 
== Vapoursynth ==
 
== Vapoursynth ==
91行目: 126行目:
 
AviSynth の代わりとして Linux では Vapoursynth を使うことができます。Python スクリプトで動画を操作することが可能です。Vapoursynth の Python スクリプトは ''mpv'' の動画フィルターとしても使えます。
 
AviSynth の代わりとして Linux では Vapoursynth を使うことができます。Python スクリプトで動画を操作することが可能です。Vapoursynth の Python スクリプトは ''mpv'' の動画フィルターとしても使えます。
   
Vapoursynth フィルターを使うには {{ic|vapoursynth}} パッケージをインストールして {{ic|--enable-vapoursynth}} ビルドフラグを付けて ''mpv'' をコンパイルしてください。
+
Vapoursynth フィルターを使うには {{Pkg|vapoursynth}} パッケージをインストールして {{ic|--enable-vapoursynth}} ビルドフラグを付けて ''mpv'' をコンパイルしてください。
   
 
=== バンディングを消去 (flash3kyuu) ===
 
=== バンディングを消去 (flash3kyuu) ===
   
f3k_db のバンディング消去フィルターを使うには {{AUR|vapoursynth-plugin-flash3kyuu_deband-git}} をインストールして ''vapoursynth'' 拡張を使用する Python スクリプトを書いて下さい。
+
{{ic|f3k_db}} のバンディング消去フィルターを使うには {{AUR|vapoursynth-plugin-flash3kyuu_deband-git}} をインストールして ''vapoursynth'' 拡張を使用する Python スクリプトを書いて下さい。
   
 
以下は ''mpv'' でバンディング消去を有効にするサンプルスクリプトです。
 
以下は ''mpv'' でバンディング消去を有効にするサンプルスクリプトです。

2016年7月16日 (土) 15:23時点における版

関連記事

mpvMPlayer と MPlayer2 がベースの動画プレイヤーです。幅広いフォーマットの動画ファイル、オーディオ・ビデオコーデック、字幕タイプをサポートしています。mpv と前出のプレイヤーとの違いは このページ で包括的に (一部不完全ですが) リストアップされています。

インストール

公式リポジトリから mpv パッケージをインストールするか Arch User Repository から mpv-gitAUR をインストールしてください。

フロントエンド

mpv には OSC という名前のすっきりとしたユーザーインターフェイスがあり、マウスを動かした時に表示されます。カジュアルユーザー向けに、他のグラフィカルインターフェイスも存在します:

  • Baka MPlayer — フリーでオープンソース、クロスプラットフォームの、libmpv ベースのマルチメディアプレイヤー。Qt 5 を使用。
https://github.com/u8sand/Baka-MPlayer/ || baka-mplayer, baka-mplayer-gitAUR
  • bomi — 強力で使いやすいマルチメディアプレイヤー (Qt 5)。
https://bomi-player.github.io/ || bomiAUR, bomi-gitAUR
  • GNOME MPVmpv のシンプルな GTK フロントエンド。GTK+ 3 を使用。
https://github.com/gnome-mpv/gnome-mpv/ || gnome-mpv-gitAUR, gnome-mpvAUR
  • SMPlayer — CSS テーマや YouTube 統合などの機能が追加された Qt マルチメディアプレイヤー (Qt 5)。
http://smplayer.sourceforge.net/ || smplayer
  • xt7-player-mpv — フィルターやドライバー、ladspa プラグインのサポート、ライブラリ・プレイリストの管理、YouTube、オンラインラジオ、ポッドキャスト、DVB-T などの豊富な設定オプションが存在する mpv の Qt/Gambas による GUI。
https://github.com/kokoko3k/xt7-player-mpv || xt7-player-mpv-gitAUR
ノート: CMPlayer/bomi パッケージには内部に mpv が入っています。

設定

Mpv の設定は mpv.conf (設定) と input.conf (キーバインド) と lua-settings/osc.conf (オンスクリーンディスプレイ) ファイルから読み込まれます。オプションのリストは、man ページや github にあるドキュメントを参照してください: options.rst, input.rst, osc.rst

XDG_CONFIG_HOME 環境変数が設定されてない場合、ユーザーの設定ファイルは ~/.config/mpv フォルダから読み込まれます。全ユーザー共通の設定は /etc/mpv フォルダから読み込まれます。

input.conf ファイルの例

以下を ~/.config/mpv/input.conf にコピーすることで、動画のズームやパン、90度回転などの便利なキーバインドが mpv に追加されます。

Alt+RIGHT add video-rotate 90
Alt+LEFT add video-rotate -90
Alt+- add video-zoom -0.25
Alt+= add video-zoom 0.25
Alt+j add video-pan-x -0.05
Alt+l add video-pan-x 0.05
Alt+i add video-pan-y 0.05
Alt+k add video-pan-y -0.05

Tips and Tricks

ハードウェアデコード

mplayermplayer2 と違って、mpv は始めから VA-APIVDPAU の両方をサポートしています。利用できる設定については man ページ--hwdec=<api> オプションのリファレンスを見て下さい。設定を永続化するには、設定ファイルに hwdec=method という行を追加します。ハードウェアデコードを使用するとき、ビデオ出力は opengl, opengl-hq, vdpau (hwdec=vdpau を使う場合) のどれかに設定する必要があります。vo=vaapi の使用は推奨されません [1]。ハードウェアデコードが使用できない場合、mpv は自動的にソフトウェアデコードにフォールバックします。詳細は options.rstvo.rst を見て下さい。

高品質なビデオ出力

opengl-hq ビデオ出力は mpv の開発者によって事前に設定された様々なオプションを使用する OpenGL 出力です。opengl-hq を使用するには、設定ファイルで以下のように指定してください:

~/.config/mpv/mpv.conf
vo=opengl-hq

opengl-hq にはデフォルトで GLSL デバンドフィルダーが有効になっており、ユーザーによっては性能が劣化したりコンテンツの見た目が悪くなることがあります。以下の設定によって、フィルターは簡単に無効化できます:

~/.config/mpv/mpv.conf
vo=opengl-hq:deband=no

停止した位置からの自動レジューム再生

動画の現在の位置を保存して mpv を終了するデフォルトのキーは Shift+q です。このキーはキーバインドの設定ファイルに quit_watch_later を追加することで変更できます。

プレイヤーの終了時に自動的に現在の再生位置を保存したい場合、--save-position-on-quit フラグを付けて mpv を起動してください。オプションを永続化させるには、設定ファイルに save-position-on-quit という行を追加します。

ボリュームが小さすぎる

設定ファイルに softvol-max=value を設定して softvol-max=600 など然るべき値にしてください。さらに (または)、af=drcダイナミックレンジ圧縮を利用することもできます。

複数のアスペクト比のクイック切り替え

バージョン 0.8.0 から Shift+a を使ってアスペクト比を切り替えることができます。

ルートウィンドウに描画

--wid=0 を付けて mpv を実行してください。これによって mpv はウィンドウ ID が 0 のウィンドウに描画するようになります。

GUI を常時表示

mpv をターミナル以外から起動する場合、音声ファイルなどでも、GUI ウィンドウが表示されていたほうが便利です。--force-window オプションを使うことで常時表示させることができます。

ブラウザプラグインとして使う

mozpluggerAUR を利用することで、サポートされているブラウザにおいて mpv を使って動画を再生することができます。設定の詳細は ブラウザプラグイン#MozPlugger を見て下さい。ViewTube などのユーザースクリプトと組み合わせて、mpv を使用してサイトに埋め込まれた動画プレイヤーを置き換えることもできます。

Lua スクリプトを使って mpv を音楽プレイヤーとして磨き上げる

mpv の Lua スクリプトの開発方法は mpv リポジトリDOCS/man/lua.rst にまとまっており、サンプルが TOOLS/lua にあります。このブログ記事 では Lua スクリプトを使って mpv を使いやすくする例として music.lua スクリプトを紹介しています。

mpv で Twitch.tv のストリーミングを視聴

youtube-dl がインストールされている場合、mpv は直接 Twitch のライブストリームを開くことができます。

また、livestreamer を使って Twitch をストリーミングする方法もあります。Livestreamer#Twitch を見て下さい。

さらに Livestreamer を利用する Lua スクリプトが存在します: https://gist.github.com/ChrisK2/8701184fe3ea7701c9cc

youtube-dl とフォーマットの選択

--ytdl-format のデフォルトは bestvideo+bestaudio/best となっています。4K 解像度で見ることができる YouTube 動画の場合、たとえ接続しているモニターが 4K に対応していなくても、4K の VP9 でエンコードされた動画をソフトウェアデコードすることになります。

youtube-dl のフォーマットを適切に設定することで問題は簡単に解決します。以下の設定例では、縦の解像度が1080ピクセル以下の動画だけが再生されます:

ytdl-format=bestvideo[height<=?1080]+bestaudio/best

ハードウェアデコードできない特定のコーデックだけを避けたい場合、同じように追加できます。例えば、VP9 を無視するには以下のように設定します:

ytdl-format=bestvideo[height<=?1080][vcodec!=vp9]+bestaudio/best

youtube-dl の音声検索

.bashrc に以下の関数を記述することでターミナルから mm "search terms" を実行して音声を検索・再生できます:

function mm() {
    mpv --no-video --ytdl-format=bestaudio ytdl://ytsearch10:"$@"
}

コンポジタで mpv を使う

コンポジタ (例: KDE Plasma 5) を使っていて、mpv で動画を再生するときにコンポジットが無効になってしまう場合 (Plasma でウィンドウが表示されなくなったりデフォルトのアプリスイッチャでウィンドウのサムネイルが表示されなくなる場合)、x11-bypass-compositor=no を使ってみてください。

Vapoursynth

AviSynth の代わりとして Linux では Vapoursynth を使うことができます。Python スクリプトで動画を操作することが可能です。Vapoursynth の Python スクリプトは mpv の動画フィルターとしても使えます。

Vapoursynth フィルターを使うには vapoursynth パッケージをインストールして --enable-vapoursynth ビルドフラグを付けて mpv をコンパイルしてください。

バンディングを消去 (flash3kyuu)

f3k_db のバンディング消去フィルターを使うには vapoursynth-plugin-flash3kyuu_deband-gitAUR をインストールして vapoursynth 拡張を使用する Python スクリプトを書いて下さい。

以下は mpv でバンディング消去を有効にするサンプルスクリプトです。

import vapoursynth as vs
core = vs.get_core()

clip = video_in
clip = core.std.Trim(clip, first=0, length=500000)
clip = core.f3kdb.Deband(clip, grainy=0, grainc=0, output_depth=16)
clip.set_output()

設定ファイルで Python スクリプトを指定するか mpv を実行するときにコマンドライン引数で指定してください:

$ mpv --vf=vapoursynth=f3k_db.py <video_file>