Here are the Y,Cb,Cr values for black, taken straight out of SMPTE RP-219, Annex B, Pattern 3:
Y = 16, Cb = 128, Cr = 128
Applying calculation #1 returns R=0,G=0,B=0 (Kr, Kg and Kb are the coefficients):
Is this right for SMPTE color bars?
Calculation #1:
Applying calculation #2 returns R=16,G=16,B=16:Code:R= (255/219)*Y + (255/112)*Cr*(1-Kr) - (255*16/219 + 255*128/112*(1-Kr)) G= (255/219)*Y - (255/112)*Cb*(1-Kb)*Kb/Kg - (255/112)*Cr*(1-Kr)*Kr/Kg - (255*16/219 - 255/112*128*(1-#Kb)*#Kb/#Kg - 255/112*128*(1-Kr)*Kr/Kg) B= (255/219)*Y + (255/112)*Cb*(1-Kb) - (255*16/219 + 255*128/112*(1-Kb))
Calculation #2:
Which is correct? I would think calculation #2 is correct, returning R=16,G=16,B=16.Code:R = Y + 2*(Cr-128)*(1-Kr) G = Y - 2*(Cb-128)*(1-Kb)*Kb/Kg - 2*(Cr-128)*(1-Kr)*Kr/Kg B = Y + 2*(Cb-128)*(1-Kb)
Try StreamFab Downloader and download from Netflix, Amazon, Youtube! Or Try DVDFab and copy Blu-rays! or rip iTunes movies!
+ Reply to Thread
Results 1 to 14 of 14
Thread
-
-
Both are correct
YCbCr 16,128,128 should result in
RGB 0,0,0 for computer range RGB
RGB 16,16,16 for studio range RGB
Most people using computers will have a display and graphics card set to output 0-255, so Calculation #1 is correct for that scenario -
Most people using computers will have a display and graphics card set to output 0-255
If a video is going no further than YouTube then who cares?
We've debated this in the past.
Here's what we get for yellow:
Y, Cb, Cr 168,44,136
0 - 255 range:
RGB 191,191,0
BT.709 range:
RGB 181,180,12
Thanks for the reality check. -
Maybe a station has a youtube channel. Almost major TV stations do. Not just youtube either; most have internet streaming on their own sites as well
That's the point - you need to be aware of both - instead of singularly focused on one, ignoring everything else. Ignoring important facts is what can lead you down a path to make mistakes
Here's what we get for yellow:
Y, Cb, Cr 168,44,136
0 - 255 range:
RGB 191,191,0
BT.709 range:
RGB 181,180,12
-
Maybe a station has a youtube channel.
There is no requirement that YouTube or any on-line video be in the 0 - 255 range. If YouTube/Vimeo alters the levels after we upload it, that's out of our hands. -
Most videos are produced that way, legal range Y16-235, CbCr16-240
And that's why you or someone at the station should "care". If you have a web presence you should "care."
There is no requirement that YouTube or any on-line video be in the 0 - 255 range. If YouTube/Vimeo alters the levels after we upload it, that's out of our hands.
Almost all end distribution video formats are in YUV. The rp219 chart values are specified in YUV values
Youtube or some host website is not doing the RGB conversion - they stream YUV video too .
(But they can alter YUV levels. A semi common example is the full range flag - this will cause YT to clamp YUV levels)
There are multiple points where the actual RGB conversion can occur. Sometimes it's flash that does the RGB conversion, or sometimes HTML5, sometimes it's the result of GPU setting in GPU accelerated decoding, sometimes the browser is actually responsible
If the colors are wrong, or levels are wrong, investigate it or get your IT person to investigate it. Being aware of how and what conversions are being performed can help you pinpoint and debug problems.
99.999% of computers will be using computer range RGB, and that should be used as the working assumption for everything internet on viewed on a computer .
People that have multiple monitors , HD-SDI out on a studio display monitor will know this already. That preview monitor should be calibrated and adjusted using studio range RGB -
I don't know why you're arguing.
We produce our material to BT.709 specs for broadcast. Some of it gets uploaded to YouTube and some to our own web site. So what's the big deal? We don't have the time or personnel to massage everything we upload to 0 - 255. Management considers it perfectly watchable.
Again, if YouTube alters it, it's out of our hands.
I use the RGB values to generate my own test signals as you probably know by now. Nothing to do with the station or the company. -
Most really good facilities test against multiple references...
Audio recording studios have NS-10s and check for mono compatibility, even though they master to their surround Genelecs.
TV stations have their studio grade Trinitrons (I'm dating myself here I know), but they also have a run-of-the-mill consumer on-air fed tv as confidence.
Web developers may have awesome color-corrected monitors with the newest current main browsers, but they will often have multiple side monitors that are running old version, or odd brand browsers, and emulations of multiple different resolutions & device color capabilities.
And production/post studios do (and SHOULD) have both 601- & 709- (and now 2020-, p3-, or aces-) referenced and regularly calibrated studio monitors, but they ought also to have regular full level (0-255) RGB, both calibrated and not. That way, nothing irregular is put out by accident/unexpectedly.
But you know this already, right?
Scott -
okay
but they will often have multiple side monitors that are running old version, or odd brand browsers, and emulations of multiple different resolutions & device color capabilities.
Saddening but true.Last edited by El Heggunte; 2nd May 2020 at 22:02. Reason: clarity
"Programmers are human-shaped machines that transform alcohol into bugs." -
1975??
The www didn't really get going until NCSA's Mosaic in '93-'94.
Doubt what you want - there's a lot of variety in such a big industry - but I am quite intimately familiar with web dev team best practices, for many years now.
Scott -
TV stations have their studio grade Trinitrons (I'm dating myself here I know), but they also have a run-of-the-mill consumer on-air fed tv as confidence.
There are consumer TV sets around the newsroom for reporters to watch news feeds but not for engineers to judge video quality or for "confidence".
We don't deal with BT.601 on the main channel any more. The subchannels run 4:3 SD programming from outside sources. Most of the programming was originally produced as 4:3 analog NTSC.
We had an SD sat receiver as a backup receiver for the network and some HD sat receivers sitting idle in racks, so I became the squeaky wheel and had them deploy one of the idle HD receivers. -
Here are the references I've been looking for:
BT.601 section 2.5.4
BT.709 section 3.4
RD (GD,BD) = int(219 * E(R,G,B) + 16)
so for 75% bars, R (G,B) = int((219 * 0.75) + 16) = 180
Similar Threads
-
SMPTE colorbar generation formula
By colibri in forum Newbie / General discussionsReplies: 27Last Post: 23rd Dec 2019, 22:18 -
Player that sync to timecode SMPTE or other - standalone or software?
By larioso in forum Software PlayingReplies: 5Last Post: 30th Aug 2019, 03:31 -
Python SMPTE Time Code Toy
By chris319 in forum ProgrammingReplies: 0Last Post: 15th Jun 2019, 15:58 -
SMPTE 302m Audio
By criggs in forum EditingReplies: 0Last Post: 6th Jan 2018, 00:07 -
Color Bars -- Interesting Article
By chris319 in forum ProgrammingReplies: 0Last Post: 3rd Mar 2017, 03:51