Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --- vf_zscale.c 2015-10-18 15:15:02.917583034 -0700
- +++ vf_zscale2.c 2015-10-18 15:18:32.667511033 -0700
- @@ -312,65 +312,6 @@
- return err_code;
- }
- -static int convert_matrix(enum AVColorSpace colorspace)
- -{
- - switch (colorspace) {
- - case AVCOL_SPC_RGB:
- - return ZIMG_MATRIX_RGB;
- - case AVCOL_SPC_BT709:
- - return ZIMG_MATRIX_709;
- - case AVCOL_SPC_UNSPECIFIED:
- - return ZIMG_MATRIX_UNSPECIFIED;
- - case AVCOL_SPC_BT470BG:
- - return ZIMG_MATRIX_470BG;
- - case AVCOL_SPC_SMPTE170M:
- - return ZIMG_MATRIX_170M;
- - case AVCOL_SPC_YCGCO:
- - return ZIMG_MATRIX_YCGCO;
- - case AVCOL_SPC_BT2020_NCL:
- - return ZIMG_MATRIX_2020_NCL;
- - case AVCOL_SPC_BT2020_CL:
- - return ZIMG_MATRIX_2020_CL;
- - }
- - return ZIMG_MATRIX_UNSPECIFIED;
- -}
- -
- -static int convert_trc(enum AVColorTransferCharacteristic color_trc)
- -{
- - switch (color_trc) {
- - case AVCOL_TRC_UNSPECIFIED:
- - return ZIMG_TRANSFER_UNSPECIFIED;
- - case AVCOL_TRC_BT709:
- - return ZIMG_TRANSFER_709;
- - case AVCOL_TRC_SMPTE170M:
- - return ZIMG_TRANSFER_601;
- - case AVCOL_TRC_LINEAR:
- - return ZIMG_TRANSFER_LINEAR;
- - case AVCOL_TRC_BT2020_10:
- - return ZIMG_TRANSFER_2020_10;
- - case AVCOL_TRC_BT2020_12:
- - return ZIMG_TRANSFER_2020_12;
- - }
- - return ZIMG_TRANSFER_UNSPECIFIED;
- -}
- -
- -static int convert_primaries(enum AVColorPrimaries color_primaries)
- -{
- - switch (color_primaries) {
- - case AVCOL_PRI_UNSPECIFIED:
- - return ZIMG_PRIMARIES_UNSPECIFIED;
- - case AVCOL_PRI_BT709:
- - return ZIMG_PRIMARIES_709;
- - case AVCOL_PRI_SMPTE170M:
- - return ZIMG_PRIMARIES_170M;
- - case AVCOL_PRI_SMPTE240M:
- - return ZIMG_PRIMARIES_240M;
- - case AVCOL_PRI_BT2020:
- - return ZIMG_PRIMARIES_2020;
- - }
- - return ZIMG_PRIMARIES_UNSPECIFIED;
- -}
- -
- static int convert_range(enum AVColorRange color_range)
- {
- switch (color_range) {
- @@ -448,9 +389,9 @@
- s->src_format.depth = desc->comp[0].depth;
- s->src_format.pixel_type = desc->comp[0].depth > 8 ? ZIMG_PIXEL_WORD : ZIMG_PIXEL_BYTE;
- s->src_format.color_family = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_COLOR_RGB : ZIMG_COLOR_YUV;
- - s->src_format.matrix_coefficients = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_MATRIX_RGB : convert_matrix(in->colorspace);
- - s->src_format.transfer_characteristics = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_TRANSFER_UNSPECIFIED : convert_trc(in->color_trc);
- - s->src_format.color_primaries = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_PRIMARIES_UNSPECIFIED : convert_primaries(in->color_primaries);
- + s->src_format.matrix_coefficients = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_MATRIX_RGB : in->colorspace;
- + s->src_format.transfer_characteristics = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_TRANSFER_UNSPECIFIED : in->color_trc;
- + s->src_format.color_primaries = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_PRIMARIES_UNSPECIFIED : in->color_primaries;
- s->src_format.pixel_range = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_RANGE_FULL : convert_range(in->color_range);
- s->dst_format.width = out->width;
- @@ -460,10 +401,10 @@
- s->dst_format.depth = odesc->comp[0].depth;
- s->dst_format.pixel_type = odesc->comp[0].depth > 8 ? ZIMG_PIXEL_WORD : ZIMG_PIXEL_BYTE;
- s->dst_format.color_family = (odesc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_COLOR_RGB : ZIMG_COLOR_YUV;
- - s->dst_format.matrix_coefficients = (odesc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_MATRIX_RGB : s->colorspace == -1 ? convert_matrix(out->colorspace) : s->colorspace;
- - s->src_format.transfer_characteristics = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_TRANSFER_UNSPECIFIED : convert_trc(in->color_trc);
- - s->src_format.color_primaries = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_PRIMARIES_UNSPECIFIED : convert_primaries(in->color_primaries);
- + s->src_format.matrix_coefficients = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_MATRIX_RGB : in->colorspace;
- + s->src_format.transfer_characteristics = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_TRANSFER_UNSPECIFIED : in->color_trc;
- + s->src_format.color_primaries = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_PRIMARIES_UNSPECIFIED : in->color_primaries;
- s->src_format.pixel_range = (desc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_RANGE_FULL : convert_range(in->color_range);
- s->dst_format.width = out->width;
- @@ -460,10 +401,10 @@
- s->dst_format.depth = odesc->comp[0].depth;
- s->dst_format.pixel_type = odesc->comp[0].depth > 8 ? ZIMG_PIXEL_WORD : ZIMG_PIXEL_BYTE;
- s->dst_format.color_family = (odesc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_COLOR_RGB : ZIMG_COLOR_YUV;
- - s->dst_format.matrix_coefficients = (odesc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_MATRIX_RGB : s->colorspace == -1 ? convert_matrix(out->colorspace) : s->colorspace;
- - s->dst_format.transfer_characteristics = (odesc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_TRANSFER_UNSPECIFIED : s->trc == -1 ? convert_trc(out->color_trc) : s->trc;
- - s->dst_format.color_primaries = (odesc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_PRIMARIES_UNSPECIFIED : s->primaries == -1 ? convert_primaries(out->color_primaries) : s->primaries;
- - s->dst_format.pixel_range = (odesc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_RANGE_FULL : s->range == -1 ? convert_range(out->color_range) : s->range;
- + s->dst_format.matrix_coefficients = (odesc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_MATRIX_RGB : s->colorspace == INT_MIN ? out->colorspace : s->colorspace;
- + s->dst_format.transfer_characteristics = (odesc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_TRANSFER_UNSPECIFIED : s->trc == INT_MIN ? out->color_trc : s->trc;
- + s->dst_format.color_primaries = (odesc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_PRIMARIES_UNSPECIFIED : s->primaries == INT_MIN ? out->color_primaries : s->primaries;
- + s->dst_format.pixel_range = (odesc->flags & AV_PIX_FMT_FLAG_RGB) ? ZIMG_RANGE_FULL : s->range == INT_MIN ? convert_range(out->color_range) : s->range;
- if (s->colorspace != -1)
- out->colorspace = (int)s->dst_format.matrix_coefficients;
- @@ -661,31 +602,31 @@
- { "spline16", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_RESIZE_SPLINE16}, 0, 0, FLAGS, "filter" },
- { "splite36", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_RESIZE_SPLINE36}, 0, 0, FLAGS, "filter" },
- { "lanczos", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_RESIZE_LANCZOS}, 0, 0, FLAGS, "filter" },
- - { "range", "set color range", OFFSET(range), AV_OPT_TYPE_INT, {.i64 = -1}, -1, ZIMG_RANGE_FULL, FLAGS, "range" },
- - { "r", "set color range", OFFSET(range), AV_OPT_TYPE_INT, {.i64 = -1}, -1, ZIMG_RANGE_FULL, FLAGS, "range" },
- - { "input", 0, 0, AV_OPT_TYPE_CONST, {.i64 = -1}, 0, 0, FLAGS, "range" },
- + { "range", "set color range", OFFSET(range), AV_OPT_TYPE_INT, {.i64 = INT_MIN}, -1, ZIMG_RANGE_FULL, FLAGS, "range" },
- + { "r", "set color range", OFFSET(range), AV_OPT_TYPE_INT, {.i64 = INT_MIN}, -1, ZIMG_RANGE_FULL, FLAGS, "range" },
- + { "input", 0, 0, AV_OPT_TYPE_CONST, {.i64 = INT_MIN}, 0, 0, FLAGS, "range" },
- { "limited", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_RANGE_LIMITED}, 0, 0, FLAGS, "range" },
- { "full", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_RANGE_FULL}, 0, 0, FLAGS, "range" },
- - { "primaries", "set color primaries", OFFSET(primaries), AV_OPT_TYPE_INT, {.i64 = -1}, -1, ZIMG_PRIMARIES_2020, FLAGS, "primaries" },
- - { "p", "set color primaries", OFFSET(primaries), AV_OPT_TYPE_INT, {.i64 = -1}, -1, ZIMG_PRIMARIES_2020, FLAGS, "primaries" },
- - { "input", 0, 0, AV_OPT_TYPE_CONST, {.i64 = -1}, 0, 0, FLAGS, "primaries" },
- + { "primaries", "set color primaries", OFFSET(primaries), AV_OPT_TYPE_INT, {.i64 = INT_MIN}, -1, ZIMG_PRIMARIES_2020, FLAGS, "primaries" },
- + { "p", "set color primaries", OFFSET(primaries), AV_OPT_TYPE_INT, {.i64 = INT_MIN}, -1, ZIMG_PRIMARIES_2020, FLAGS, "primaries" },
- + { "input", 0, 0, AV_OPT_TYPE_CONST, {.i64 = INT_MIN}, 0, 0, FLAGS, "primaries" },
- { "709", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_709}, 0, 0, FLAGS, "primaries" },
- { "unspecified", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_UNSPECIFIED}, 0, 0, FLAGS, "primaries" },
- { "170m", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_170M}, 0, 0, FLAGS, "primaries" },
- { "240m", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_240M}, 0, 0, FLAGS, "primaries" },
- { "2020", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_PRIMARIES_2020}, 0, 0, FLAGS, "primaries" },
- - { "transfer", "set transfer characteristic", OFFSET(trc), AV_OPT_TYPE_INT, {.i64 = -1}, -1, ZIMG_TRANSFER_2020_12, FLAGS, "transfer" },
- - { "t", "set transfer characteristic", OFFSET(trc), AV_OPT_TYPE_INT, {.i64 = -1}, -1, ZIMG_TRANSFER_2020_12, FLAGS, "transfer" },
- - { "input", 0, 0, AV_OPT_TYPE_CONST, {.i64 = -1}, 0, 0, FLAGS, "transfer" },
- + { "transfer", "set transfer characteristic", OFFSET(trc), AV_OPT_TYPE_INT, {.i64 = INT_MIN}, -1, ZIMG_TRANSFER_2020_12, FLAGS, "transfer" },
- + { "t", "set transfer characteristic", OFFSET(trc), AV_OPT_TYPE_INT, {.i64 = INT_MIN}, -1, ZIMG_TRANSFER_2020_12, FLAGS, "transfer" },
- + { "input", 0, 0, AV_OPT_TYPE_CONST, {.i64 = INT_MIN}, 0, 0, FLAGS, "transfer" },
- { "709", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_709}, 0, 0, FLAGS, "transfer" },
- { "unspecified", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_UNSPECIFIED}, 0, 0, FLAGS, "transfer" },
- { "601", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_601}, 0, 0, FLAGS, "transfer" },
- { "linear", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_LINEAR}, 0, 0, FLAGS, "transfer" },
- { "2020_10", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_2020_10}, 0, 0, FLAGS, "transfer" },
- { "2020_12", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_TRANSFER_2020_12}, 0, 0, FLAGS, "transfer" },
- - { "matrix", "set colorspace matrix", OFFSET(colorspace), AV_OPT_TYPE_INT, {.i64 = -1}, -1, ZIMG_MATRIX_2020_CL, FLAGS, "matrix" },
- - { "m", "set colorspace matrix", OFFSET(colorspace), AV_OPT_TYPE_INT, {.i64 = -1}, -1, ZIMG_MATRIX_2020_CL, FLAGS, "matrix" },
- - { "input", 0, 0, AV_OPT_TYPE_CONST, {.i64 = -1}, 0, 0, FLAGS, "matrix" },
- + { "matrix", "set colorspace matrix", OFFSET(colorspace), AV_OPT_TYPE_INT, {.i64 = INT_MIN}, -1, ZIMG_MATRIX_2020_CL, FLAGS, "matrix" },
- + { "m", "set colorspace matrix", OFFSET(colorspace), AV_OPT_TYPE_INT, {.i64 = INT_MIN}, -1, ZIMG_MATRIX_2020_CL, FLAGS, "matrix" },
- + { "input", 0, 0, AV_OPT_TYPE_CONST, {.i64 = INT_MIN}}, 0, 0, FLAGS, "matrix" },
- { "709", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_MATRIX_709}, 0, 0, FLAGS, "matrix" },
- { "unspecified", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_MATRIX_UNSPECIFIED}, 0, 0, FLAGS, "matrix" },
- { "470bg", 0, 0, AV_OPT_TYPE_CONST, {.i64 = ZIMG_MATRIX_470BG}, 0, 0, FLAGS, "matrix" },
Advertisement
Add Comment
Please, Sign In to add comment