Sent from my iPhone

> On Apr 8, 2014, at 7:46 PM, Derek Buitenhuis <[email protected]> 
> wrote:
> 
> Signed-off-by: Derek Buitenhuis <[email protected]>
> ---
> This doesn't require an API requirement bump, and should be future proof.
> ---
> libavcodec/libx265.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
> 
> diff --git a/libavcodec/libx265.c b/libavcodec/libx265.c
> index 77d0b03..bcd5a11 100644
> --- a/libavcodec/libx265.c
> +++ b/libavcodec/libx265.c
> @@ -77,6 +77,7 @@ static av_cold int libx265_encode_init(AVCodecContext 
> *avctx)
> {
>     libx265Context *ctx = avctx->priv_data;
>     x265_nal *nal;
> +    char sar[10];

IIRC H.265 has 16-bit fields for SAR width/height: strlen(65535) * 2 + ':' + 
'\n' should be 12, IMO.

>     int sar_num, sar_den;
>     int nnal;
> 
> @@ -115,11 +116,11 @@ static av_cold int libx265_encode_init(AVCodecContext 
> *avctx)
>     av_reduce(&sar_num, &sar_den,
>               avctx->sample_aspect_ratio.num,
>               avctx->sample_aspect_ratio.den, 4096);
> -    ctx->params->vui.bEnableVuiParametersPresentFlag = 1;
> -    ctx->params->vui.bEnableAspectRatioIdc           = 1;
> -    ctx->params->vui.aspectRatioIdc                  = 255;
> -    ctx->params->vui.sarWidth                        = sar_num;
> -    ctx->params->vui.sarHeight                       = sar_den;
> +    snprintf(sar, 10, "%d:%d", sar_num, sar_den);
> +    if (x265_param_parse(ctx->params, "sar", sar) == X265_PARAM_BAD_VALUE) {
> +        av_log(avctx, AV_LOG_ERROR, "Invalid SAR: %d:%d.\n", sar_num, 
> sar_den);
> +        return AVERROR_INVALIDDATA;
> +    }

I would *maybe* check for X265_PARAM_BAD_NAME too, just in case they change the 
option name (however unlikely).

Rest LGTM.

Tim
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to