On Mon, Apr 13, 2015 at 4:42 PM, Luca Barbato <[email protected]> wrote: > On 13/04/15 15:00, Vittorio Giovara wrote: >> On Mon, Apr 13, 2015 at 11:12 AM, Luca Barbato <[email protected]> wrote: >>> --- >>> libavcodec/libx265.c | 15 +++++++++++++++ >>> 1 file changed, 15 insertions(+) >>> >>> diff --git a/libavcodec/libx265.c b/libavcodec/libx265.c >>> index c04299a..36d8897 100644 >>> --- a/libavcodec/libx265.c >>> +++ b/libavcodec/libx265.c >>> @@ -124,6 +124,21 @@ static av_cold int libx265_encode_init(AVCodecContext >>> *avctx) >>> ctx->params->sourceHeight = avctx->height; >>> ctx->params->bEnablePsnr = !!(avctx->flags & CODEC_FLAG_PSNR); >>> >>> + if ((avctx->color_primaries <= AVCOL_PRI_BT2020 && >>> + avctx->color_primaries != AVCOL_PRI_UNSPECIFIED) || >>> + (avctx->color_trc <= AVCOL_TRC_BT2020_12 && >>> + avctx->color_trc != AVCOL_TRC_UNSPECIFIED) || >>> + (avctx->colorspace <= AVCOL_SPC_BT2020_CL && >>> + avctx->colorspace != AVCOL_SPC_UNSPECIFIED)) { >> >> why this huge check at the start? better to split it off case by case >> >>> + ctx->params->vui.bEnableColorDescriptionPresentFlag = 1; >> >> Isn't this done internally? > > No and thanks for asking bEnableVideoSignalTypePresentFlag is also needed...
Imho, it'd be much cleaner to have this integrated upstream >>> + if (avctx->color_primaries <= AVCOL_PRI_BT2020) >>> + ctx->params->vui.colorPrimaries = >>> avctx->color_primaries; >>> + if (avctx->color_trc <= AVCOL_TRC_BT2020_12) >>> + ctx->params->vui.transferCharacteristics = avctx->color_trc; >>> + if (avctx->colorspace <= AVCOL_SPC_BT2020_CL) >>> + ctx->params->vui.matrixCoeffs = avctx->colorspace; >>> + } >> >> You should check that all thse are >= 0 too if you want to be extra sure. > > x265 checks the values internally so I guess I can avoid that part as > well and let x265 fail if the values are out of the accepted range. well x265 fails if they are out of range, so contrary to x264 it would be better to check them before assigning them (unless ofc someone patches upstream). Vittorio _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
