Lines Matching refs:cr
466 int y_offset, int *y, int *cb, int *cr) in rgb2ycbcr() argument
470 *cr = ((m[2][0] * r + m[2][1] * g + m[2][2] * b) >> 16) + (128 << 4); in rgb2ycbcr()
474 int *y, int *cb, int *cr) in color_to_ycbcr() argument
534 rgb2ycbcr(full ? bt601_full : bt601, r, g, b, y_offset, y, cb, cr); in color_to_ycbcr()
539 rgb2ycbcr(bt601, r, g, b, 16, y, cb, cr); in color_to_ycbcr()
544 rgb2ycbcr(rec709, r, g, b, 16, y, cb, cr); in color_to_ycbcr()
547 rgb2ycbcr(full ? bt2020_full : bt2020, r, g, b, y_offset, y, cb, cr); in color_to_ycbcr()
560 *cr = (((r - yc) * (full ? bt2020c_full[2] : bt2020c[2])) >> 16) + (128 << 4); in color_to_ycbcr()
562 *cr = (((r - yc) * (full ? bt2020c_full[3] : bt2020c[3])) >> 16) + (128 << 4); in color_to_ycbcr()
565 rgb2ycbcr(full ? smpte240m_full : smpte240m, r, g, b, y_offset, y, cb, cr); in color_to_ycbcr()
569 rgb2ycbcr(full ? rec709_full : rec709, r, g, b, y_offset, y, cb, cr); in color_to_ycbcr()
574 static void ycbcr2rgb(const int m[3][3], int y, int cb, int cr, in ycbcr2rgb() argument
579 cr -= 128 << 4; in ycbcr2rgb()
580 *r = m[0][0] * y + m[0][1] * cb + m[0][2] * cr; in ycbcr2rgb()
581 *g = m[1][0] * y + m[1][1] * cb + m[1][2] * cr; in ycbcr2rgb()
582 *b = m[2][0] * y + m[2][1] * cb + m[2][2] * cr; in ycbcr2rgb()
588 static void ycbcr_to_color(struct tpg_data *tpg, int y, int cb, int cr, in ycbcr_to_color() argument
650 ycbcr2rgb(full ? bt601_full : bt601, y, cb, cr, y_offset, r, g, b); in ycbcr_to_color()
655 ycbcr2rgb(bt601, y, cb, cr, 16, r, g, b); in ycbcr_to_color()
660 ycbcr2rgb(rec709, y, cb, cr, 16, r, g, b); in ycbcr_to_color()
663 ycbcr2rgb(full ? bt2020_full : bt2020, y, cb, cr, y_offset, r, g, b); in ycbcr_to_color()
668 cr -= 128 << 4; in ycbcr_to_color()
675 if (cr <= 0) in ycbcr_to_color()
676 *r = y_fac * y + (full ? bt2020c_full[2] : bt2020c[2]) * cr; in ycbcr_to_color()
678 *r = y_fac * y + (full ? bt2020c_full[3] : bt2020c[3]) * cr; in ycbcr_to_color()
690 ycbcr2rgb(full ? smpte240m_full : smpte240m, y, cb, cr, y_offset, r, g, b); in ycbcr_to_color()
694 ycbcr2rgb(full ? rec709_full : rec709, y, cb, cr, y_offset, r, g, b); in ycbcr_to_color()
778 int y, cb, cr; in precalculate_color() local
783 color_to_ycbcr(tpg, r, g, b, &y, &cb, &cr); in precalculate_color()
789 cr -= 128 << 4; in precalculate_color()
790 tmp_cb = (cb * cos(128 + tpg->hue)) / 127 + (cr * sin[128 + tpg->hue]) / 127; in precalculate_color()
791 tmp_cr = (cr * cos(128 + tpg->hue)) / 127 - (cb * sin[128 + tpg->hue]) / 127; in precalculate_color()
794 cr = (128 << 4) + (tmp_cr * tpg->contrast * tpg->saturation) / (128 * 128); in precalculate_color()
798 tpg->colors[k][2] = clamp(cr >> 4, 1, 254); in precalculate_color()
801 ycbcr_to_color(tpg, y, cb, cr, &r, &g, &b); in precalculate_color()
806 int y, cb, cr; in precalculate_color() local
808 color_to_ycbcr(tpg, r, g, b, &y, &cb, &cr); in precalculate_color()
813 cr = clamp(cr, 16 << 4, 240 << 4); in precalculate_color()
817 cr = clamp(cr >> 4, 1, 254); in precalculate_color()
822 cr >>= 4; in precalculate_color()
827 cr >>= 3; in precalculate_color()
832 cr >>= 3; in precalculate_color()
837 tpg->colors[k][2] = cr; in precalculate_color()