【AviUtl】色変換の設定について【BT.601とBT.709】

AviUtlの「色変換の設定」についての私のメモ的な記事です。

※私が勝手に思ってるだけで間違ってる可能性大なので、流し見程度に見てください

スポンサードリンク

色変換の際の係数(colormatrix)

パソコンのディスプレイは色の3原則(RGB)で表示されるのに対し、動画ファイルの多くはYUV系です。

YUV系の動画ファイルを再生する際には、YUV→RGBに変換してディスプレイに表示させます。

この時、YUV→RGBに変換する時に使用する「係数」のようなものの事を「colormatrix」と言います。

この係数に応じてデコーダでは映像の色を決定します。

例えば、デコーダ側(再生プレイヤー等)が再生する際に使用する「colormatrix」と、動画データの「colormatrix」が一致していないとおかしな色で出力されてしまったりもします。

「BT.601」と「BT.709」

AviUtlでよく使用する「colormatrix」には「BT.601」「BT.709」があります。

※「BT.601」はNTSCで使われてて、「BT.709」はHDTV、Youtubeとか色々などで使われます。

AviUtlでは、デフォルトの「入力」と「出力」設定が「自動」になっていますが、これは読み込んだ動画の縦解像度が「720px」以上なら「BT.709」、「BT.709」以下なら「BT.601」として読み込まれる設定です。

色変換

基本的にはどのような動画もこの方式に従って「colormatrix」が「BT.709」か「BT.601」に割振られているようですが、中には縦解像度が「720px」以上なのに「BT.601」として設定されるキャプチャボードなどもあるらしい?です。

また、動画データの「colormatrix」が「BT.709」となっているのに、デコーダ側がそれを無視して強制的に「BT.601」として読み込んだりする場合もあるらしいです。(flashプレイヤーなどはDXVAを有効・非有効によって動作が異なったりするらしいです)

AviUtlでの読み込みの流れ

AviUtlの場合は、「入力→YC48(AviUtl専用の色空間)として処理→出力」と言った流れになります。

色変換_AviUtl内部

YC48っていうのは「BT.601なYUV422」として捉えて良いみたいです。

AviUtlでの設定例

例えば「BT.709」で「YUY2」な色空間の動画ファイル(縦解像度720以上)を読み込む際には以下のように設定すると良い。

  • 「色変換の設定」の「入力」を「自動」か「BT.709」
  • 「色変換の設定」の「出力」を「自動」か「BT.709」

例えば「BT.709」で「RGB」な色空間の動画ファイル(縦解像度720以上)を読み込む際には以下のように設定すると良い。

  • 「色変換の設定」の「入力」を「自動」か「BT.709」
  • 「色変換の設定」の「出力」を「自動」か「BT.709」
  • 「ファイル」→「環境設定」→「コーデックの設定」から該当コーデックの「YUY2で展開する」と「YUY2で圧縮する」のチェックを外す
    • デフォルトでは全てYUY2として読み込む設定になっています

例えば「BT.709」で「YUY2」な色空間の動画ファイル(縦解像度720以下)を読み込む際には以下のように設定すると良い。

  • 「色変換の設定」の「入力」を「BT.709」
  • 「色変換の設定」の「出力」を「BT.709」

このページの情報は以上です。

関連ページ:【AviUtl】RGB・YUV動画の色を劣化させないコーデックの設定

関連ページ:ストレート変換とYC伸長の違い【RGB・YUV】