opengl颜色转换/或SDI信号转换?
我用 RGBA 颜色在 opengl 中绘制这些文本(括号内的颜色): 红色-alpha50 (255,0,0,50) 红色-alpha128 (255,0,0,128) 红色-alpha255 (255,0,0,255) 绿色-alpha50 (0,255,0,50) 绿色-alpha128 (0,255,0,128) 绿色-alpha255 (0,255,0,255) BLUE-alpha50 (0,0,255,50) BLUE-alpha128 (0,0,255,128) BLUE-alpha255 (0,0,255,255)
I memcpy 在使用 bmdFormat8BitBGRA 格式创建的帧的缓冲区 (getByte) 中 尺寸为 1280 像素 x 720 像素, 然后将其发送到视频采集卡的 SDI 输出。
以下是我们在电视机上看到的屏幕截图的链接: 通道 A(应该是填充:所以我们期望 RGB 值) Heberger 图片 http://img11.hostingpics.net/thumbs/mini_444718SDIChA.jpg< /a>
通道 B(应该是关键:所以我们期望灰度值)
Heberger 图片 http://img11.hostingpics.net/thumbs/mini_449411SDIChB.jpg
我不确定应该尝试哪种颜色转换。
=>有人可以给我提示或工作轨迹,为什么应该是黑色的背景是“半”绿色(我认为它是绿色,50% alpha:0,255,0,128 或 YUV 中的其他)?
=>这是一个无符号字节与字节的问题:为什么我用 (255,0,0,128) 获得黑色,用 (255,0,0,255) 获得红色:为什么 alpha 达到 128 和 255 之间的红色范围? (但绿色在 (0,255,0,255) 处变得更白,蓝色在 (0,0,255,128) 处有点绿)。
=>是SDI转HDMI的问题还是HDCP的问题?
感谢大家的帮助, 我有点眼花缭乱,对颜色转换还很陌生, 任何帮助都会非常大, 干杯,
I draw in opengl with RGBA colors these texts (with the color between parenthesis) :
RED-alpha50 (255,0,0,50) RED-alpha128 (255,0,0,128) RED-alpha255 (255,0,0,255)
GREEN-alpha50 (0,255,0,50) GREEN-alpha128 (0,255,0,128) GREEN-alpha255 (0,255,0,255)
BLUE-alpha50 (0,0,255,50) BLUE-alpha128 (0,0,255,128) BLUE-alpha255 (0,0,255,255)I memcpy in the buffer (getByte) of a frame created with the format bmdFormat8BitBGRA
at the size of 1280 pixels by 720 pixels,
and then send it to the SDI output of a video capture card.Here are links to screenshot of what we see on the TV set :
Channel A (should be the fill : so we expect RGB values)
Heberger image http://img11.hostingpics.net/thumbs/mini_444718SDIChA.jpg
Channel B (should be the key : so we expect grey-scale values)
Heberger image http://img11.hostingpics.net/thumbs/mini_449411SDIChB.jpg
I am not sure which color conversion I should try.
=> Can someone give me hint or working tracks for why the background which should be black is a "half" green (I reckon it to be green with 50% alpha : 0,255,0,128 or else in YUV) ?
=> Is it a question of unsigned byte vs byte : why do I obtain black with (255,0,0,128) and red with (255,0,0,255) : why is the red range reached with alpha between 128 and 255 ?
(but green gets whiter at (0,255,0,255) and blue is a little greenish at (0,0,255,128)).
=> is it a question of converting SDI to HDMI or a HDCP issue ?
Thanks to all for any help,
I am a bit dazzled, and quite new to color conversion,
any help will be so great,
cheers,
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好的:发现:这是一个硬件问题:我们使用的 SDI 到 HDMI 转换器仅接受 4:2:2 采样信号。我们提供 4:4:4 信号。因此,对于 4:2:2 信号,不再有绿色背景:我们确实有 alpha 通道的灰度值和另一个通道上的填充
Ok : found : it was a hardware problem : the SDI to HDMI converter we were using only accepts 4:2:2 sampled signal. And we were supplying a 4:4:4 signal. So with the 4:2:2 signal no more green background : we do have grey-scaled values for alpha channel and the fill on the other channel