[SCM] libav/experimental: libx265: Use x265_param_parse to set the SAR
siretart at users.alioth.debian.org
siretart at users.alioth.debian.org
Sun Aug 10 16:02:46 UTC 2014
The following commit has been merged in the experimental branch:
commit 4a2226451e141a6da53c777888db00c743ee8f48
Author: Derek Buitenhuis <derek.buitenhuis at gmail.com>
Date: Tue Apr 8 18:44:53 2014 +0100
libx265: Use x265_param_parse to set the SAR
Signed-off-by: Derek Buitenhuis <derek.buitenhuis at gmail.com>
diff --git a/libavcodec/libx265.c b/libavcodec/libx265.c
index 77d0b03..94b08a7 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];
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, sizeof(sar), "%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;
+ }
if (x265_max_bit_depth == 8)
ctx->params->internalBitDepth = 8;
--
Libav/FFmpeg packaging
More information about the pkg-multimedia-commits
mailing list