Canon DSLR video uses BT.601 SD matrix instead of BT.709 HD ?!

Posted: January 14, 2011 in colorbyjorg
Tags: , , , , , , , , , , , , , , ,

In contradiction to what you might assume, the Canon DSLR cameras video conforms to the ITU-R BT.601 standard for SD video recommendations, instead of the ITU-R BT.709 HD standards.  This means that several suppliers of software for video- and film-makes try to convert the color decoding matrix of the Canon DSLR video footage. An example is the new 5DtoRGB software that assumes (in it’s helpfile) that the Canon 5D (1D/7d/550d/T1…) uses the ITU-R BT.601 color decoding matrix (“Primary chromaticities”). THIS IS NOT THE CASE!

Canon conforms to the ITU-R BT.601 standard, but NOT in regard to the “Primary chromaticities”. The Canon DSLRs exclusively use the sRGB color space for video, which shares the ITU-R BT.709 primaries. So, no color space conversion or matrix conversion is needed for Canon DSLR video footage and ITU-R BT.709 should be maintained throughout the workflow as “Primary chromaticities”.

Confused?! Read on..!

In order to convert the “real world” colors recorded by the camera’s image sensor to electric (and digital) signals, the camera uses a Decoding Matrix to “map” colors to numbers. All digital cameras do this and the broadcast industry has provided several standards to the camera manufacturers, to make sure (this was the idea…) red is red and blue is blue… and sixpence is sixpence…  So we ended up with tons of “standards”.

These standards are laid out in several ITU-R recommendations. They don’t only describe decoding matrices (“Color space” or “Primary chromaticities”), but also Pixel count, Frame rate, Digital representation, Standards Conversion, Luma coefficients and  Transfer characteristics.

Manufacturers, leading broadcasters and standards institutes (i used to work for one…) flooded us with recommendations and Decoding Matrices that the industry and video producers should adhere to. With the age of digital HD video came a few new ITU-R standards that are generally in use for digital video cameras:

Primary chromaticities

BT.709:

 

CIE 1931 xy chromaticity diagram showing thegamut of the Rec. 709 color space and location of the primaries. The white point is shown in the center.

RGB color space parameters[2]
Color space White point Primaries
xW yW xR yR xG yG xB yB
ITU-R BT.709 0.3127 0.3290 0.64 0.33 0.30 0.60 0.15 0.06

Note that red and blue are the same as the EBU Tech 3213 primaries while green is halfway between EBU Tech 3213 and SMPTE C.

The trained eye can see from the chromaticity diagram above that the ITU-R BT.709 decoding matrix (“color space” or or “Primary chromaticities”) is equal to that of the sRGB color space used by the Canon (video) DSLR cameras. The images are from different sources and are only here for illustration; it’s the numbers that count of course.

So, why do Canon DSLR cameras use the BT.601 recommendation for SD video, instead of the BT.701 recommendation for HD video, while using the latter’s color space?! The answer is simple… The Canon DSLR video can not comply with the BT.701 recommendation in regard to frame rates and maybe even pixel count (read the BT.709 specs via the link above)! Canon DSLR cameras can not be considered HD cameras following the BT.701 recommendation and that might also explain why broadcasters such as the BBC do not accept Canon DSLR footage for HD broadcast as such.

Hope that answers some of the questions i’ve received by mail the last few weeks.

Kind regards.

Jorg Escher

Comments
  1. mohan says:

    What about Panasonic GH2? Is it the same? And also Canon HDSLR like 550d / 7d doesn’t actually shoot full 1920×1080. Its an upscaled version of 1720×974 according to information here: http://www.dvxuser.com/V6/showthread.php?218686-Magic-Lantern-for-550D-in-progress!/page43

    • jorgescher says:

      Mohan.
      If the GH2 manual not specifically states the colorspace used, assume that it is sRGB. The GH2 neither fully complies with the BT.709 standard.

      Jorgen

  2. mohan says:

    Hi jorgescher,
    An open source Cinema camera is being developed.. (Apertus)
    http://cinema.elphel.com/

    Your expertise may help those guys?!

  3. Thomas Worth says:

    Hi Jorgen. Keep in mind that video written by the Canon DSLRs to the CF card is in a subsampled 4:2:0 YCbCr format, which has been encoded with a BT.601 _encoding_ matrix prior to H.264 encoding. In order to recover the original RGB values, we must use the inverse of this matrix, which conforms to the BT.601 (and JFIF) standard. You can verify this by opening any Canon MOV file with Dumpster or a hex editor and inspecting the stsd atom for the video track. The atom contains a colr atom which specifies a BT.601 decoding matrix (matrix 6, according to the QuickTime spec). Any QuickTime-based transcoding tool respects this value and will use the BT.601 matrix, because that’s what’s specified in the file. Attempting to perform YCbCr decoding to RGB with another matrix will produce an incorrect result, shifting reds toward orange.

    I don’t know why Canon chose to do this, because it’s non-standard. However, their use of 0-255 range of pixel values is also non-standard. None of this matters, of course, if the video is transcoded properly with 5DtoRGB or another tool which recognizes these non-standard attributes.

    • jorgescher says:

      Thanks Thomas, that is very useful information! Specially since you mention the shift to orange.
      I had a few people complaining about the new Picture Style i developed for Marvels Film; they found the resulting images too orange. Something i could not reproduce, probably because i use 5DTORGB.

      Are you planning an update to your software soon? I want to convert a lot of older footage, but i’m waiting for the next 5DtoRGB update ! 😉

      Thanks!
      Jorgen.

    • Bevan Goldswain says:

      Hi Thomas

      What setting would you suggest I use when converting 5d footage with 5dtorgb ?

      Thanks

  4. Bevan Goldswain says:

    Wow, what great information… thank you Jorgen.
    I am starting to understand this issue finally.

    But I am still not sure as to what to do with this new found info.

    workflow example:

    shoot on 5D
    import clip into Adobe After Effects for grading only

    what do I set up my color workspace as? – sRGB? 709?
    Then, what profile do I assign to the clip in “interpret footage”? sRGB/709?

    and then finally… if the clip is destined for web…
    on export to I choose sRGB/709?

    I am shooting for submission to http://www.istock.com
    and I notice all my files appear pale and dull on the web but look great in After Effects on my side.

    I would really appreciate some help on this…

    Thank You

    Bevan

  5. yellow says:

    To add to Thomas’s comments:

    Color Primaries are with regard to linear light not gamma encoded, sRGB is derived from BT709, specifically Rec709 for video. So HD vidcams are not strictly sRGB just because the primaries are the same, for example a sRGB and BT709 gamma curve are not identical.

    For preview in your NLE, media player whatever where a conversion to RGB is done then decoding with a BT601 matrix should be used with the Canon’s but I think often a user sees an incorreclty ‘not as shot in camera’ decode using BT709 and starts talking about how skin tones are orange, when infact what I’ve found with Canons especially, skin tone is generally on the pink side. As Thomas mentions.

    But then continue editing / grading thinking thats how the camera captures, especially true if they do a transcode to an intermediate format and loose the BT601 matrix in the header of the transcoded file, then any NLE or media player will look at pixel count in absence of stated matrix, conclude it’s HD and apply a YCbCr to RGB conversion using BT709 instead giving orange slant.

    Although Canon as with just about every other video capturing camera I’ve used including old DV, all capture outside of the 16 – 235/240 range if you let them based on the way you expose, zebras and all that jaz, getting all that through a NLE without it squeezing it into the 16 – 235 range or worse clipping it off is another matter certainly the cheap / free end of the market.

    With regard to capturing outside of the 16 – 235 range, a video with 1 to 254 levels using BT601 or BT709 colourmetrics is a further specification, BT1361 or 61966-2-4, xvYCC aka xv.color which has a colour gamut greater than sRGB (x1.8), so going back to your post about how Canons are sRGB, the Colour Primaries described as sRGB are just the reference point to go from, it could well be the case that the Canon as with other full range shooting vid cams can actually provide colour hues outside of the sRGB gamut, ie xvYCC if handled correctly and not treated as sRGB/Rec709 unless specifically exposed that way to keep levels within the 16 – 235 range.

    Both options are available.

    • Bevan Goldswain says:

      Hi Yellow

      I shoot with the 5D and submit video clips to http://www.istock.com
      So everything I shoot is destined for web viewing.
      I edit with After Effects and submit the clips as quicktime with photo-jpeg compression.

      I have only just discovered 5dtorgb
      What settings do you suggest I use when converting the footage with 5dtorgb?
      I would very much appreciate some help on the issue.

      Thanks

  6. Bevan Goldswain says:

    Hi Jorgen

    I am willing to pay you for help with my 5D workflow and colorspace issues,
    my email address is: beavngoldswain@gmail.com
    😉

  7. yellow says:

    Bevan

    I don’t use 5DToRGB so sorry can’t help. I use a 96bit precision 3D LUT, custom 3D LUTs and adjustable interpolation to do conversions between colourspaces.

    • jorgescher says:

      Hi.

      I have read your article on your blog about blender and avisynth. Could you suggest a AVCHD workflow using 3dLUT conversion and import in blender? Thanks!

      Jorgen

  8. So in 5dtoRGB should we use BT.601 or 709?

    Can someone post the optimal settings to convert 5d footage with the new Cinestyle picture preset using 5dtoRGB?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s