[FFmpeg-devel] [PATCH] fix b frame n_quant_offset

Agatha Hu ahu at nvidia.com
Fri Oct 9 11:38:48 CEST 2015


---
  libavcodec/nvenc.c | 6 ++----
  1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c
index 18bcd96..0e6ef43 100644
--- a/libavcodec/nvenc.c
+++ b/libavcodec/nvenc.c
@@ -742,8 +742,6 @@ static av_cold int nvenc_encode_init(AVCodecContext 
*avctx)
          switch (avctx->codec->id) {
          case AV_CODEC_ID_H264:
              ctx->encode_config.encodeCodecConfig.h264Config.idrPeriod 
= avctx->gop_size;
- 
ctx->encode_config.encodeCodecConfig.h264Config.hierarchicalPFrames = 1;
- 
ctx->encode_config.encodeCodecConfig.h264Config.hierarchicalBFrames = 1;
              break;
          case AV_CODEC_ID_H265:
              ctx->encode_config.encodeCodecConfig.hevcConfig.idrPeriod 
= avctx->gop_size;
@@ -843,9 +841,9 @@ static av_cold int nvenc_encode_init(AVCodecContext 
*avctx)

          if(avctx->i_quant_factor != 0.0 && avctx->b_quant_factor != 0.0) {
              ctx->encode_config.rcParams.initialRCQP.qpIntra = 
qp_inter_p * fabs(avctx->i_quant_factor);
-            ctx->encode_config.rcParams.initialRCQP.qpIntra += 
qp_inter_p * avctx->i_quant_offset;
+            ctx->encode_config.rcParams.initialRCQP.qpIntra += 
avctx->i_quant_offset;
              ctx->encode_config.rcParams.initialRCQP.qpInterB = 
qp_inter_p * fabs(avctx->b_quant_factor);
-            ctx->encode_config.rcParams.initialRCQP.qpInterB += 
qp_inter_p * avctx->b_quant_offset;
+            ctx->encode_config.rcParams.initialRCQP.qpInterB += 
avctx->b_quant_offset;
          } else {
              ctx->encode_config.rcParams.initialRCQP.qpIntra = qp_inter_p;
              ctx->encode_config.rcParams.initialRCQP.qpInterB = qp_inter_p;
-- 
1.9.5.github.0





More information about the ffmpeg-devel mailing list