aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDerek Buitenhuis <derek.buitenhuis@gmail.com>2014-04-08 18:44:53 +0100
committerJames Almer <jamrial@gmail.com>2014-04-11 16:45:33 -0300
commit96e13c9897501d91f1e2d493eee93a4f897ea462 (patch)
tree80131b56a98c4ba9efe8484f72757a20e220d15a
parente72c0a04664a9aab449b63135fe16ade51a99bb6 (diff)
downloadffmpeg-96e13c9897501d91f1e2d493eee93a4f897ea462.tar.gz
libx265: Use x265_param_parse to set the SAR
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> (cherry picked from commit 8945dcbb52b6b87e1e6479912cce89c7da54ec43) Conflicts: libavcodec/libx265.c
-rw-r--r--libavcodec/libx265.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/libavcodec/libx265.c b/libavcodec/libx265.c
index e03d72f968..31b85de997 100644
--- a/libavcodec/libx265.c
+++ b/libavcodec/libx265.c
@@ -81,6 +81,7 @@ static av_cold int libx265_encode_init(AVCodecContext *avctx)
libx265Context *ctx = avctx->priv_data;
x265_nal *nal;
uint8_t *buf;
+ char sar[10];
int sar_num, sar_den;
int nnal;
int ret;
@@ -121,11 +122,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->bEnableVuiParametersPresentFlag = 1;
- ctx->params->bEnableAspectRatioIdc = 1;
- ctx->params->aspectRatioIdc = 255;
- ctx->params->sarWidth = sar_num;
- ctx->params->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;