YUV - RGB
/* RGB matrix converts YUV to RGBA*/
#define limit(x) { \
if(x > 0xFFFFFF) x = 0xFFFFFF; \
if(x <= 0xFFFF) x = 0; \
x &= 0xFF0000; \
}
rgbmatrix(pixels, to, from)
int pixels;
long *from, *to;
{
int i, j;
long tmp, y, u, v, y1, r, g, b;
long *line;
/*
* makes two A-B-G-R longs from each U-Y-V-Y
(SGI framebuffer order)
*/
for(j=0; j<(pixels>>1); j++)
{
tmp = *from++;
u = (0xFF&(tmp>>24))-128;
y = (0xFF&(tmp>>16))-16;
if(y < 0) y = 0;
v = (0xFF&(tmp>>8))-128;
y1 = (0xFF&tmp)-16;
if(y1 < 0) y1 = 0;
y *= 76310;
File Formats
Diskus Technical Guide
12-14
Appendix
9100-0217-02 - SEP 95
Summary of Contents for Diskus
Page 1: ...Diskus Digital Disk Recorder Manual ...
Page 477: ...NOTES Diskus Operations Index 9100 0217 02 SEP 95 Index xvii ...
Page 478: ...NOTES Index Diskus Operations xviii Index 9100 0217 02 SEP 95 ...
Page 479: ...NOTES Diskus Operations Index 9100 0217 02 SEP 95 Index xix ...
Page 480: ...NOTES Index Diskus Operations xx Index 9100 0217 02 SEP 95 ...