ビデオフォーマットはカラープロファイルをサポートしていますか?


7

最近、私は1つの人気のある漫画番組に特化したwikiを読んでいて、興味深い問題に遭遇しましさまざまな地域のiTunesストアからのフレーム

左から右:米国のiTunes、オーストラリアのiTunes、米国のiTunesバージョンのビデオプレーヤーのCC付きフレーム

ご覧のとおり、同じフレームですが色が異なります。だから、それは私に不思議に思います:H.264標準/ MP4コンテナーは、あらゆる種類のカラープロファイル(JPEGのICCなど)をサポートしていますか?そして、DVD / Blu-Rayディスクはどうですか?または、クリエイターが撮影したため、同じバージョンのビデオを視聴する方法はありませんか?ありがとう。:)

回答:


7

ほとんどのビデオ形式(ほぼすべて)では、カスタムICCカラープロファイルを埋め込むことができません。(改善/修正:MP4は、ビデオファイルのメタデータでタグ付けされたカラープロファイルを持つことができます。)コンシューマエンドのほとんどのビデオは、REC.709カラースペースを対象としています。sRGBは類似しており、同じ原色を使用します。トランスコーディング(圧縮を含む)では、ほとんどの場合、色の精度、彩度、ガンマ曲線、または白黒レベルのシフトがわずかにシフトします。これは、RGBとYCbCrのカラースペース間の変換により悪化します。


最初の回答には満足できず、Rec.709を指摘してくれたおかげで、これを「承認済み」の回答としてマークしました。
Oleg Kuznetsov

@OlegKuznetsov-ところで、質問が完全に回答されたと本当に感じない場合は、回答を受け入れる必要性を感じないでください。答えが見つかるまで、質問が未回答のままでも問題ありません。ニックの答えがもっと参考になったと嬉しい。
AJヘンダーソン

4

それが作成者によって撮影されたので、特に圧縮が関係しているとき、それは一種の曖昧な概念です。色の再現はデバイスごとに大きく異なり、キャリブレーションされたディスプレイとソースに戻る色制御の完全なチェーンがなければ、正確な結果は得られません。それでも、ラインのどこかでカラースペースが正確に一致しない可能性があります。

圧縮は色に影響を与えるため、圧縮に入るとさらに困難になります。色は圧縮によって微妙に一般化されます。簡略化できる画像の領域が大きいほど(特に漫画など)、画像を小さくすることができます。ほとんどの場合、そのフレームに見られるわずかなカラーバンディングはオリジナルには存在しませんが、H264は類似したカラーをグループ化して1つに単純化するため、バンディングエフェクトが発生します。

つまり、損失の多い形式の場合、カラープロファイルは問題を解決することにはなりません。なぜなら、色が正確に保持されないからです。それはそれを少し改善するのに役立つかもしれませんが、それでも圧縮からの色の変更があるでしょう。


ビットレートが低すぎる場合、ビデオコーデックでバンディングが発生しますが、RGB-> yuvが1つの数式を使用し、yuv-> RGBが別の数式を使用した場合に見られるような系統的な違いはありません。元の質問で、iTunesから非可逆圧縮された画像をデコードした後の非常に明らかな違いを確認できます。
Peter Cordes

2

h.264はビットストリームでさまざまな色情報をサポートしています。からx264 --fullhelp

--range <string>        Specify color range ["auto"]
                      - auto, tv, pc.
--colorprim <string>    Specify color primaries ["undef"]
                      - undef, bt709, bt470m, bt470bg, smpte170m,
                        smpte240m, film, bt2020.
--transfer <string>     Specify transfer characteristics ["undef"]
                      - undef, bt709, bt470m, bt470bg, smpte170m,
                        smpte240m, linear, log100, log316,
                        iec61966-2-4, bt1361e, iec61966-2-1,
                        bt2020-10, bt2020-12.
--colormatrix <string>  Specify color matrix setting ["???"]
                      - undef, bt709, fcc, bt470bg, smpte170m,
                        smpte240m, GBR, YCgCo, bt2020nc, bt2020c.
--chromaloc <integer>   Specify chroma sample location (0 to 5) [0].

したがって、カスタムカラープロファイルを埋め込むことはできないと思いますが、RGBピクセル値を生成するためにデコーダーが使用する標準を指定できます。

いくつかのコンテナー形式も色空間に関する情報を保持できると思いましたが、そうではないかもしれません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.