From dccf6861506076bcede814c6109da17d596a95ab Mon Sep 17 00:00:00 2001 From: jp9000 Date: Tue, 26 Feb 2019 07:43:38 -0800 Subject: [PATCH] obs-ffmpeg: Fix bitrate being set on NVENC CQP/lossless --- plugins/obs-ffmpeg/jim-nvenc.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/plugins/obs-ffmpeg/jim-nvenc.c b/plugins/obs-ffmpeg/jim-nvenc.c index 229c7f42e..4cd7a41af 100644 --- a/plugins/obs-ffmpeg/jim-nvenc.c +++ b/plugins/obs-ffmpeg/jim-nvenc.c @@ -409,8 +409,6 @@ static bool init_encoder(struct nvenc_data *enc, obs_data_t *settings) params->encodeConfig = &enc->config; params->maxEncodeWidth = voi->width; params->maxEncodeHeight = voi->height; - config->rcParams.averageBitRate = bitrate * 1000; - config->rcParams.maxBitRate = vbr ? max_bitrate * 1000 : bitrate * 1000; config->gopLength = gop_size; config->frameIntervalP = 1 + bf; h264_config->idrPeriod = gop_size; @@ -455,6 +453,9 @@ static bool init_encoder(struct nvenc_data *enc, obs_data_t *settings) config->rcParams.constQP.qpIntra = cqp; enc->can_change_bitrate = false; + bitrate = 0; + max_bitrate = 0; + } else if (astrcmpi(rc, "vbr") != 0) { /* CBR by default */ h264_config->outputBufferingPeriodSEI = 1; h264_config->outputPictureTimingSEI = 1; @@ -463,6 +464,9 @@ static bool init_encoder(struct nvenc_data *enc, obs_data_t *settings) : NV_ENC_PARAMS_RC_CBR; } + config->rcParams.averageBitRate = bitrate * 1000; + config->rcParams.maxBitRate = vbr ? max_bitrate * 1000 : bitrate * 1000; + /* -------------------------- */ /* profile */