View Issue Details

IDProjectCategoryView StatusLast Update
0000004madVRbugpublic2013-02-11 08:25
ReporterLibeluratio Assigned Tomadshi  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionno change required 
OSWindows 7OS Version64 bits 
Summary0000004: Bad color conversion ???
DescriptionHere is a sample that causes a little bit of trouble:
the makeup of the girl should be blue (that character is originally designed like this), but with madvr, it is green !
If i use the system default renderer of mpc-hc, it is correctly blue, and madvr can display it blue only if i encode the video.

Here is the downloadable sample:
https://mega.co.nz/#!WUVTgbyT!Sx6-lBBr9IGT0IP8HdibEBwcsm9U5WDXjYMAGQPhFqk


here you can find two comparative pictures:

with madvr (green makeup):
http://img850.imageshack.us/img850/8234/ergoproxymadvr.jpg

with default system renderer (correctly blue makeup):
http://img705.imageshack.us/img705/3073/ergoproxysystemdefault.jpg
Steps To ReproducePlay the sample video on mpc-hc with madvr enabled
==> makeup is green (at least on my two pc's)

POlay the sample video on mpc-hc with system default renderer
==> makeup is correctly blue
TagsNo tags attached.
madVR Version0.85.8
Media Player (with version info)Mpc-hc 1.6.5.6366 (744df1c)
Splitter (with version info)Haali Media Splitter 1.11.233.7
Decoder (with version info)ffdshow tryouts rev4499
DecodingSoftware
Deinterlacingauto mode
DXVA2 Scaling Activeno
Aero / Desktop CompositionOn
Problem occurs with modeall modes
GPU ManufacturerNVidia
GPU ModelGtx 660ti, Gt 430
GPU Driver Version313.96

Activities

madshi

2013-02-11 08:23

administrator   ~0000021

Last edited: 2013-02-11 08:25

This is not a bug in madVR, but a bug in the default system renderer. The video stream is encoded with YCgCo matrix. At least that's what the h264 video bitstream says. As a result madVR automatically switches to YCgCo decoding matrix. The default system renderer can't handle the YCgCo matrix and uses BT.709 instead. The correct output for this video is green makeup.

You can press Ctrl+Alt+Shift+M to toggle the decoding matrix. You can see that madVR auto detects YCgCo. You can toggle to BT.709 by pressing Ctrl+Alt+Shift+M multiple times. But as I said, the video bitstream specifically says it was encoded with YCgCo.

If you think that the video bitstream lies and the video needs the BT.709 matrix for decoding, then that means that video bitstream is broken. In that case you can work around the problem by explicitly telling madVR to ignore the video bitstream matrix information. You can do so by using matrix tagging: Rename the MKV file from "sample_ergo_proxy.mkv" to "sample_ergo_proxy [matrix=bt709].mkv" and madVR will auto select BT.709 and show blue makeup.

Issue History

Date Modified Username Field Change
2013-02-11 03:00 Libeluratio New Issue
2013-02-11 08:23 madshi Note Added: 0000021
2013-02-11 08:23 madshi Status new => closed
2013-02-11 08:23 madshi Assigned To => madshi
2013-02-11 08:23 madshi Resolution open => no change required
2013-02-11 08:25 madshi Note Edited: 0000021