[FFmpeg-devel] [PATCH v9 1/2] lavc/svt_hevc: add libsvt hevc encoder wrapper

Sun, Jing A jing.a.sun at intel.com
Fri Mar 29 11:32:19 EET 2019


On Thursday, March 28, 2019 5:20 AM, Mark Thompson wrote:

>Looking at what the highDynamicRangeInput field actually does <https://github.com/OpenVisualCloud/SVT-HEVC/blob/master/Source/Lib/Codec/EbResourceCoordinationProcess.c#L550-L566>, I don't think it makes sense for this external "hdr" option at exist at all.

>From the point of view of a user looking at the external options, they might expect that on setting this option some conversion takes place to actually create an HDR output.  In fact, that's not what it does - it just marks the output with some very specific colour properties, and any stream which doesn't actually have exactly those properties will then have incorrect metadata for display (possibly conflicting with container metadata, if the container has better support for colour properties than this encoder).

>Perhaps to avoid confusion about what is actually happening the option could be removed and this check replaced with something like:

>if (avctx->colorspace == AVCOL_SPC_BT2020_NCL &&
>    avctx->color_primaries == AVCOL_PRI_BT2020 &&
>    avctx->color_trc == AVCOL_TRC_SMPTE2084 &&
>    avctx->color_range == AVCOL_RANGE_MPEG &&
>    avctx->chroma_sample_location == AVCHROMA_LOC_TOPLEFT) {
>    param->highDynamicRangeInput = 1;
>} else {
>    param->highDynamicRangeInput = 0;
>    // Maybe also a warning here in some cases?
>}

>- Mark

Since SVT-HEVC's HDR is not ready, I just removed the interface and I will add it back when it's fully supported with color properties preserving. Please review v10 and thanks a lot.

- Jing



More information about the ffmpeg-devel mailing list