|
|
|
@@ -156,7 +156,16 @@ static av_cold int svc_encode_init(AVCodecContext *avctx) |
|
|
|
|
|
|
|
(*s->encoder)->GetDefaultParams(s->encoder, ¶m); |
|
|
|
|
|
|
|
param.fMaxFrameRate = 1/av_q2d(avctx->time_base); |
|
|
|
if (avctx->framerate.num > 0 && avctx->framerate.den > 0) { |
|
|
|
param.fMaxFrameRate = av_q2d(avctx->framerate); |
|
|
|
} else { |
|
|
|
if (avctx->ticks_per_frame > INT_MAX / avctx->time_base.num) { |
|
|
|
av_log(avctx, AV_LOG_ERROR, |
|
|
|
"Could not set framerate for libopenh264enc: integer overflow\n"); |
|
|
|
return AVERROR(EINVAL); |
|
|
|
} |
|
|
|
param.fMaxFrameRate = 1.0 / av_q2d(avctx->time_base) / FFMAX(avctx->ticks_per_frame, 1); |
|
|
|
} |
|
|
|
param.iPicWidth = avctx->width; |
|
|
|
param.iPicHeight = avctx->height; |
|
|
|
param.iTargetBitrate = avctx->bit_rate > 0 ? avctx->bit_rate : TARGET_BITRATE_DEFAULT; |
|
|
|
|