From patchwork Sat Apr 11 10:03:32 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Fu, Linjie" X-Patchwork-Id: 18845 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 99D484491E3 for ; Sat, 11 Apr 2020 13:11:28 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 880FF68B599; Sat, 11 Apr 2020 13:11:28 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7A5E668B599 for ; Sat, 11 Apr 2020 13:11:21 +0300 (EEST) IronPort-SDR: JIF5BjLIid4bDO+akPeRI2zgGbtdXbMp6FYnO7Gzllgp90nk68mPoj17p0AVvS7suE772/gRTq SvsWByAtt6nQ== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Apr 2020 03:11:20 -0700 IronPort-SDR: 9+sCfRK25QyCtsf5R8sCHfL07nu4cUmP2RFrL2wOsO5BaTqTFq1dUKN2YAMyP9h4GveaBDvBpp TewKU21w0E+g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,370,1580803200"; d="scan'208";a="331397083" Received: from icl-dev.sh.intel.com ([10.239.158.73]) by orsmga001.jf.intel.com with ESMTP; 11 Apr 2020 03:11:19 -0700 From: Linjie Fu To: ffmpeg-devel@ffmpeg.org Date: Sat, 11 Apr 2020 18:03:32 +0800 Message-Id: <1586599419-21122-3-git-send-email-linjie.fu@intel.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1586599419-21122-1-git-send-email-linjie.fu@intel.com> References: <1586599419-21122-1-git-send-email-linjie.fu@intel.com> Subject: [FFmpeg-devel] [PATCH v3 2/9] lavc/libopenh264enc: add default gop size and bit rate X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Linjie Fu MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" It would be 200kbps bitrate with gop size = 12 by default which generated too many IDR frames in rather low bit rate. The quality would be poor. Set these default values according to vaapi encoder, and use 2Mbps bitrate if user doesn't set it explicitly as nvenc sugguested. Signed-off-by: Linjie Fu --- libavcodec/libopenh264enc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/libopenh264enc.c b/libavcodec/libopenh264enc.c index c7ae5b1..57313b1 100644 --- a/libavcodec/libopenh264enc.c +++ b/libavcodec/libopenh264enc.c @@ -132,7 +132,7 @@ FF_ENABLE_DEPRECATION_WARNINGS param.fMaxFrameRate = 1/av_q2d(avctx->time_base); param.iPicWidth = avctx->width; param.iPicHeight = avctx->height; - param.iTargetBitrate = avctx->bit_rate; + param.iTargetBitrate = avctx->bit_rate > 0 ? avctx->bit_rate : 2*1000*1000; param.iMaxBitrate = FFMAX(avctx->rc_max_rate, avctx->bit_rate); param.iRCMode = RC_QUALITY_MODE; // QP = 0 is not well supported, so default to (1, 51) @@ -335,6 +335,8 @@ static int svc_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, } static const AVCodecDefault svc_enc_defaults[] = { + { "b", "0" }, + { "g", "120" }, { "qmin", "-1" }, { "qmax", "-1" }, { NULL },