このページでは、高機能なメディアプレイヤー「MPC-BE」「MPC-HC」上で、高品質かつ高速なアニメ用アップスケーラー「Anime4K」を使用する方法を紹介します。
「Anime4K」は、高品質かつ高速なアニメ用のアップスケーラーです。
バイキュービック / バイリニア / xBR よりも高品質、Waifu2x / VDSR / EDSR よりも高速に動作する超解像アルゴリズムで、アニメの画像や映像等を美しく高解像化することができます。
この「Anime4K」を実装した HLSL シェーダーが GitHub で配布されていますので、これを高機能なメディアプレイヤー「MPC-BE」「MPC-HC」上で使用する方法を紹介しようと思います。
- 「Anime4K_HLSL」をダウンロードする
- MPC-BE 上で「Anime4K_HLSL」を使う
- MPC-HC 上で「Anime4K_HLSL」を使う
- madVR の設定(必要な場合のみ)
- 動画を「Anime4K」でアップスケールして再生
「Anime4K_HLSL」をダウンロードする
- 「Anime4K」のダウンロードページ にアクセスし、「Assets」をクリック →「Anime4K_HLSL.zip」をダウンロードします。
- ダウンロードした ZIP ファイルを 解凍 します。
MPC-BE 上で「Anime4K_HLSL」を使う
- エクスプローラのアドレスバーや「ファイル名を指定して実行」に
%AppData%\MPC-BE
と入力して「Enter」キーを押します。
- プロファイルフォルダが表示されるので、「Shaders」フォルダを開きます。
(「Shaders」フォルダがない場合は、手動で作成する) - 開いた「Shaders」フォルダ内に、「Anime4K_HLSL.zip」の中に入っていた HLSL ファイルをコピーします。
- MPC-BE を起動し、メニューバー上の「再生」→「シェーダー」から「シェーダーを選択」を選択します。
- 「シェーダーの合成」というダイアログが表示されるので、下部にある「リサイズ後のピクセル シェーダーを有効にする」にチェック →「リサイズ後のピクセル シェーダーを有効にする」欄の中を一回クリックします。
- 画面上部のプルダウンメニューをクリックし、「Anime4K_ComputeLum」を選択 → 画面右上にある「追加」ボタンをクリックします。
- 「リサイズ後のピクセル シェーダーを有効にする」欄に、「Anime4K_ComputeLum」が登録されました。
同様に、- Anime4K_Push
- Anime4K_ComputeGradient
- Anime4K_PushGrad_Weak
の順番で追加していきます。
尚、1080p 以上の動画を再生する時は、- Anime4K_Push
- Anime4K_ComputeGradient
- Anime4K_PushGrad
の順番で追加していきます。
ちなみに、「Anime4K_Push」は必須のシェーダーではないので、結果に満足いかない時は消去しても OK なようです。
(線を細くするシェーダーのようです) - 設定が終わったら、右下の「OK」ボタンをクリックします。
設定はこれで完了ですが、より高画質化を狙いたい時は madVR の設定も行います。
MPC-HC 上で「Anime4K_HLSL」を使う
- MPC-HC のインストールフォルダ内にある「Shaders」フォルダを開き、「Anime4K_HLSL.zip」の中に入っていた HLSL ファイルをコピーします。
- MPC-HC を起動し、メニューバー上の「再生」→「シェーダ」から「シェーダを選択」を選択します。
- オプション画面が表示されるので、画面中央のシェーダーリストの中から「Anime4K_ComputeLum」を選択 → 画面右上にある「サイズ変更後のシェーダに追加」ボタンをクリックします。
- 「アクティブなサイズ変更後のシェーダ」欄に、「Anime4K_ComputeLum」が登録されました。
同様に、- Anime4K_Push
- Anime4K_ComputeGradient
- Anime4K_PushGrad_Weak
の順番で追加していきます。
尚、1080p 以上の動画を再生する時は、- Anime4K_Push
- Anime4K_ComputeGradient
- Anime4K_PushGrad
の順番で追加していきます。
ちなみに、「Anime4K_Push」は必須のシェーダーではないので、結果に満足いかない時は削除しても OK なようです。
(線を細くするシェーダーのようです) - 設定はこれで完了ですが、登録したシェーダーをプリセット化しておくと、シェーダーのオン / オフを簡単に切り替えられるようになるので便利です。
シェーダーをプリセット化する時は、画面右側の「シェーダ プリセット」欄に適当な名前を入力して「保存」ボタンをクリックします。
プリセットを保存したら、「アクティブなサイズ変更後のシェーダ」欄に登録したシェーダーをすべて削除し、シェーダーが空になった状態でプリセットの保存を行います。
すると、メイン画面の「再生」→「シェーダ」から、シェーダーのプリセットを簡単に切り替えられるようになります。
madVR の設定(必要な場合のみ)
- 高画質なビデオレンダラー「madVR」を使用するとより高画質化を期待することができますが、PC のスペックによっては動作が重くなる可能性もあるので、必要な場合のみ設定を行います。
まず、「madVR」のダウンロードページ にアクセスし、ページ右上にある「madVR.zip」をダウンロードします。 - 解凍して出てきた「install.bat」を右クリックし、「管理者として実行」を選択します。
- コマンドプロンプトが開き、「Installation succeeded.」と表示されたらインストール完了です。
(インストール完了後は、「madVR」フォルダを他のフォルダに移動しないように注意する) - MPC-BE や MPC-HC を実行し、メニューバー上の「表示」から「オプション」を選択します。
- 設定画面が表示されるので、左メニュー内の「映像」を選択 → 画面右上にある「ビデオレンダラー」欄で「madVR」を選択します。
「MPC HC」を使用している場合は、左メニュー内の「再生」>「出力」を選択 → 画面右上にある「DirectShow ビデオ」欄で「madVR」を選択します。 - 続いて、適当な動画を再生し、メニューバー上の「再生」→「フィルター」から「madVR Renderer」(MPC-HC を使用している場合は「madVR」)を選択 → 表示された画面の中央にある「Edit Settings」ボタンをクリックします。
もしくは、動画読み込み中にタスクトレイ上のアイコンを右クリックし、「Edit madVR Settings」選択します。 - madVR の設定画面が表示されます。
特に必須の設定があるわけではないので、お好みで設定すれば OK です。
一応、「Anime4K」のテスト時には、下記のような設定が行われていたようです。
左メニュー内の「scaling algorithms」→「image upscaling」を開き、「upscaling」を「Jinc」に設定し、その下にある「activate anti-ringing filter」にチェック。次に、左メニュー内の「processing」→「artifact removal」を開き、
- 「reduce banding artifacts」にチェック
- 「default debanding strength」を「medium」
- 「strength during fade in / out」を「high」
- 「reduce ringing artifacts」にチェック
- 「reduce compression artifacts」にチェック
- 「strength」を「14」、「quality」を「low」に設定
基本的に「strength」を強くすると違和感が生じることが多いので、適宜「strength」を弱くしたりするとよいでしょう。
- 「reduce banding artifacts」にチェック
- 設定が終わったら、右下の「OK」ボタンをクリックします。
動画を「Anime4K」でアップスケールして再生
- 以後、動画を「Anime4K」でアップスケールして再生できるようになります。
MPC-BE を使用している場合、メニューバー上の「再生」→「シェーダー」→「リサイズ後のピクセル シェーダーを有効化」から、「Anime4K」の有効化 / 無効化 を切り替えることができます。
(ホットキー “ 「Ctrl」+「Alt」+「P」 ” を押してもよい)
MPC-HC を使用していてシェーダーをプリセット化しておいた場合、「再生」→「シェーダ」から、シェーダーのプリセットを簡単に切り替えられるようになります。
コメント
出力をmadvrにするとシェーダーが読み込めませんとでてくるのですがどうしたらいいのでしょうか。
再インストールなどしてみましたがだめでした。
シェーダーの設定なしの状態で madVR は使えますか?
もし使えない場合、ひょっとすると使用中のパソコンに madVR を使用可能な GPU が搭載されていない可能性があります。
また、MPC-BE / MPC-HC は最新版でしょうか?
古いバージョンのものですと、同梱されている DLL が madVR に対応していないため、もしかするとそれが原因かも?しれません。
尚、MPC-HC を使っている場合、メニューバー上の「再生」→「シェーダ」→「シェーダ デバッガ」から、デバッグ情報を確認することができます。
シェーダーを正常に読み込めない場合、ここにエラーの原因が表示されていることがあります。
ご返信ありがとうございます。
おかげさまで解決することができました。
mpc-hcのシェーダーデバッガを見てみるとwarning X3206: implicit truncation of vector type testと書いてあり調べてみるとdirectxのバージョンが古いもしくは破損とあるので最新版を入れてみたところシェーダーが読み込めませんとの表示が出ないようになりました。
ありがとうございました
良かったです!
具体的には「d3dcompiler_47.dll」「d3dx9_43.dll」の二つが必要のようですね。