Lines Matching refs:cb
466 int y_offset, int *y, int *cb, int *cr) in rgb2ycbcr() argument
469 *cb = ((m[1][0] * r + m[1][1] * g + m[1][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()
556 *cb = (((b - yc) * (full ? bt2020c_full[0] : bt2020c[0])) >> 16) + (128 << 4); in color_to_ycbcr()
558 *cb = (((b - yc) * (full ? bt2020c_full[1] : bt2020c[1])) >> 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
578 cb -= 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()
667 cb -= 128 << 4; in ycbcr_to_color()
670 if (cb <= 0) in ycbcr_to_color()
671 *b = y_fac * y + (full ? bt2020c_full[0] : bt2020c[0]) * cb; in ycbcr_to_color()
673 *b = y_fac * y + (full ? bt2020c_full[1] : bt2020c[1]) * cb; 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()
788 cb -= 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()
793 cb = (128 << 4) + (tmp_cb * tpg->contrast * tpg->saturation) / (128 * 128); in precalculate_color()
797 tpg->colors[k][1] = clamp(cb >> 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()
812 cb = clamp(cb, 16 << 4, 240 << 4); in precalculate_color()
816 cb = clamp(cb >> 4, 1, 254); in precalculate_color()
821 cb >>= 4; in precalculate_color()
826 cb >>= 3; in precalculate_color()
831 cb >>= 2; in precalculate_color()
836 tpg->colors[k][1] = cb; in precalculate_color()