まえがき
この記事は去年上げたものの加筆修正版です。去年の記事は削除せず残していますが、
当時基準でも誤った情報が散見されたため、
新しいこちらの記事を参考にしてください。
大筋の内容は去年上げた記事と同一のものになります。
注意
第三者のツールによるWinodwsのレジストリ編集を行います。 操作を誤ってOSの動作がおかしくなっても私は一切の責任を負いませんので、実行する場合はリスクを把握したうえで行ってください。
今更動画でAFMF使う意味ある?
ないです。
Bluesky Frame Rate Converterが正確に倍FPSで動画の中間画像を生成できる今、正式リリース後縛りがさらに強くなったAFMFでどうにかすること自体が無駄です。
ただ、すべての動画再生ツールでBlueskyが使える訳ではありませんし、この記事で行う操作は他でもある程度通用するものだとは思うので、備忘録的な意味で加筆修正し最新版として残しておきます。
必要なもの
最終的にYoutubeのHDR動画でフレーム生成することが目的なので、以下を用意してください。
- MPC-BE 今回は64bit版で説明
- MPC Video Renderer MPC-BEのインストーラーから導入する場合は不要
- Choum28/AutoHDR 前回記事で導入は終わっているものとします
今回ラッパーは使いません。
導入方法
とりあえずMPC-BE、MPC Video Rendererをインストールし、MPC-BEのexeファイルをAdrenalinに登録します。
MPC-BEを強制オートHDRの対象にする
以下の画像を参考に設定して下さい。
この時BufferUpgradeEnable10bitは絶対にチェックせずに登録してください。
HDRの動画再生時に支障が出る場合があります。
仕様の都合により、10bitのSDR動画に関してはまったく考慮しないものとします。(見たことないけど)
MPC-BEの設定をする
MPC-BEを起動し、ビデオレンダラーをMPC Video Rendererに設定したらプロパティを開き、少なくとも以下の画像の赤枠で囲ってある部分だけは必ず同じ設定にします。
映像のbit数は自動検出、ハードウェアデインタレースを無効にし、オートディプレイHDRを無効にしてHDRをパススルーすれば、SDR動画にオートHDRをかけた動画も、通常のHDR動画も正常に出力できるはずです。
YoutubeのHDR動画にAFMFを使う方法はこの手しか知りません。
HDRのスクリーンショットをそのまま表示する手段を知らないため、結果はご自身の目で確かめてみて下さい。
どうにもなってないもの
-
デインタレースは?
MPCVRのハードウェアデインタレースは使用できません。AFMFが無効化されます。どうしてもデインタレースを使用したい場合は、動画のデコーダーにLAV Video Decoderを使用するようにして、そちらのソフトウェアデインタレースを使用するくらいしかないのが現状です。
-
排他フルスクリーンにしないとシークバー表示のたびにAFMFが切れる
昔よりは圧倒的に落ちにくいので排他もアリくらいのレベルにはなりました。 動画シーク方法がカーソルのみでも問題なければ、排他にしても大事には至らないと思います。
-
MadVRじゃダメなの?
ダメです…ただしごくごく稀にmadHcCtrl.exeに設定したRadeon Chillが効果を発揮することがあり、その場合はMadVR側を排他フルスクリーンに設定すると、MPCでフレーム生成することが可能です。相変わらず動画のフレームレートでは動かないのと、利用可能になる条件がさっぱりわからないため、実用的とは言えない方法です。そもそもMadVRの排他フルスクリーンが必須ということは、foo_youtubeでは使えないという…またMadVRのMPCでの利用は、フルスクリーン時のHDR表示に問題があり、解決方法が存在しないようです。SDRでしか見ない場合は関係のない問題ですが。※2024/08/10追記 正常にMadVRの排他フルスクリーンが利用できている場合は、Radeon Chillを使わずとも動画フレームレートでの動作が可能でした。 うまくいかない場合一度MPC-HCなど、他の再生ソフトでMadVRの排他フルスクリーンを利用した動画再生を行うと、MPC-BEでも正常に利用できる可能性があります。 あとフルスクリーンにする際、Adrenalinの指標等は一旦消してください。 正常に排他フルスクリーンへ移行できないことがあります。
なお排他フルスクリーンで動画フレームレートでの動作が可能なのは、Windows自体のHDR機能を無効にしている場合のみの模様。 HDR有効時はウィンドウ起動時の挙動のように見えます。
仮想フルスクになってる…?それとフルスクリーン時のHDR動画の色の件は、AdrenalinにMPC-BEを登録したことが原因だったようです。
どういうことなの…一覧から削除すると色の問題が解消しました。 ちなみにAFMFを利用するには、最低でも対象ソフトウェアがAdrenalinに登録されている必要があります。…
ダメです。
あとがき
この記事だけ加筆修正版とは名ばかりで削除祭りになってしまったので、foo_youtubeでの動画フレーム生成に関して少し追加情報を…
上記でも触れたBluesky Frame Rate Converterですが、このソフトを使用するように設定することのできない動画プレーヤー向けに、特定の外部デコーダの処理をBlueskyに置き換える設定が存在します。
foo_youtubeの場合はとりあえずBlueskyの設定ツールを開き、その他タブで「外部デコーダを利用したデコード機能を有効にする」にチェック、LAV Decoderを選択、「グローバルモードを有効にする」にチェックを入れ、設定タブのパフォーマンスにある「Zero-Copy モードを有効にする」のチェックを外します。
ここまでやっていざ再生してみるとあらビックリ、ちゃんとBlueskyのフレーム生成が効いてるではありませんか。 明らかに動画の滑らかさが上がっています。
…上がってはいます。
シークバー同期しねぇ…
もしかしなくてもLAV Decoderの代わりにBlueskyを使ったのが原因でしょう。 タスクトレイにあるMadVRのジャンプ機能でしか映像のシークができません。 仮にそれで移動したとして音声は全く追従してくれません。
ここまで出来るのならと諦められず足掻くも空振り、こんな超限定的用途で各所へお問い合わせする訳にもいかず、泣く泣く利用を断念しました。
今回も無事敗北したところでこの話を閉めようと思います。
それでは…


