Menu

#593 Changes to the automatic colour correction option.

2
open
nobody
None
5
2016-10-05
2016-10-05
hello_hello
No

I'm not sure if it only applies to DGIndex and mpeg2 video (I don't use DGIndexNV myself) but the colour correction MeGUI adds to the script can cause an incorrect colour conversion for HD video as the colormatrix plugin is not resolution aware (to the best of my knowledge).

DGDecode reports the colorimetry written to the video stream, or if there is none, it reports rec.601 for standard definition and rec.709 for high definition.
The colormatrix plugin uses the hints from DGDecode to determine if the colours need converting. By default, if it's rec.709 it converts to rec.601. Nothing wrong with that for SD video, but it's incorrect for HD.

This is how MeGUI adds the colour conversin to a script:
ColorMatrix(hints=true, threads=0)

The same colour conversion can be done like this with the default settings:
ColorMatrix(source=0, dest=2, hints=true, threads=0)
or
ColorMatrix(mode="Rec.709->Rec.601", hints=true, threads=0)

For HD video the colours will incorrectly be converted to rec.601 unless the following is added to the script instead:
ColorMatrix(source=2, dest=0, hints=true, threads=0)
or
ColorMatrix(mode="Rec.601->Rec.709", hints=true, threads=0)

Of course that still leaves the problem of downscaling, when it'd be better to convert the colours, but that'd probably be too hard to impliment automatically. Maybe automatic colour correction can potentially do more harm than good these days, or should be disabled for HD video?

In my opinion, I'm not sure clamping the levels is a great idea, so if it was up to me I'd disable that.
ColorMatrix(hints=true, threads=0, clamp=0)

Thanks.

Discussion


Log in to post a comment.