From patchwork Thu Jun 7 10:24:04 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhong Li X-Patchwork-Id: 9278 Delivered-To: ffmpegpatchwork@gmail.com Received: by 2002:a02:11c:0:0:0:0:0 with SMTP id c28-v6csp16911jad; Thu, 7 Jun 2018 03:23:50 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLFZWc3/X+t7H7aDh2ADA4PDeXwAtjl9Xwc9UraMKkCD/8ExPaGU1+Nk7p20VcoEG/1Dz7S X-Received: by 2002:a1c:f906:: with SMTP id x6-v6mr1199073wmh.63.1528367029958; Thu, 07 Jun 2018 03:23:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1528367029; cv=none; d=google.com; s=arc-20160816; b=lPRVwYYqwZGdXw4zwor/oghLF2FLXmX/ILpCpjiZUGNLGltGgje96tPsXnW6KSlPGB Q/3nyh5hlVfwOjsz8mRrmUu1yo2aOTQ0ZdqXERVpGZ3h/DqwEJIgiD1Kn9ZCC05y49P/ BlVI7W/aCeMwSbUaSyS1MB2zvB341MJ7ukGQ9yVXtOtBTYsWa0a1wNfURzHshOIpzOVT 2qA7qBsmrPU/thsfvNhfSxzxnxtbdQzi1Pw2LZPHr9zTIUXrIDXMV9t9D5EXmD4U2noE rHkmwoCQNhQoVyCvq+kYdUKJnmf4Zbs0LOpaUspAGG5uxx2vk/GaXigct2zWv0CIsLqN PBQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:message-id:date:to:from:delivered-to :arc-authentication-results; bh=3qVbPcm4IzWnPE2pOJR0hipuCeIvXZyQk7chzyn2bII=; b=E7VAbmwJHWvuKU8UFSvlqrx6Ts+VxoeiH6FZA3q18p8ZowC+7ASSLS7uwOzPpXJPK/ UZ/jo5o08M5BomNm0HrJ+nx5YNwKVWdEQnpkhR0Z1W5+hRosT64tmmBBrIcBdCK9nGSs OKZ5GonZ0vAUSli1FY5knlnSto4Ge8p8HDmkVPU6cyMxFn0SDi9oLNY+8SpCZDFYmnqo MHKL8CBwI7OsHcZG5CIs0rS/Wy7uq16ck+DdIfl3a/2+dQaozIwqv+6zfQ3md/kWR/U2 LlzCZXsqL/7+Cai6WtwfbxXd4Y9h5r9Rh6homs8Q7xpmR6489/SuX2FfyQjXbD5I6SfF FX1w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id n185-v6si938242wmg.119.2018.06.07.03.23.49; Thu, 07 Jun 2018 03:23:49 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id F3E2D68A546; Thu, 7 Jun 2018 13:22:59 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id D50E268A546 for ; Thu, 7 Jun 2018 13:22:52 +0300 (EEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 07 Jun 2018 03:23:37 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,486,1520924400"; d="scan'208";a="65072362" Received: from media_ffmpeg_skl_e3.sh.intel.com ([10.239.156.42]) by orsmga002.jf.intel.com with ESMTP; 07 Jun 2018 03:23:36 -0700 From: Zhong Li To: ffmpeg-devel@ffmpeg.org Date: Thu, 7 Jun 2018 18:24:04 +0800 Message-Id: <1528367044-31396-1-git-send-email-zhong.li@intel.com> X-Mailer: git-send-email 2.7.4 Subject: [FFmpeg-devel] [PATCH] qsvenc: use the compression_level to replace private option 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: Zhong Li MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Use a common way to control target_usage, keeping consistent with vaapi encoders. The private option preset is kept only for compatibility. Signed-off-by: Zhong Li --- libavcodec/qsvenc.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/libavcodec/qsvenc.c b/libavcodec/qsvenc.c index ce003ad..c7eb1f4 100644 --- a/libavcodec/qsvenc.c +++ b/libavcodec/qsvenc.c @@ -453,8 +453,19 @@ static int init_video_param(AVCodecContext *avctx, QSVEncContext *q) if (avctx->level > 0) q->param.mfx.CodecLevel = avctx->level; + if (avctx->compression_level == FF_COMPRESSION_DEFAULT) { + avctx->compression_level = q->preset; + } else if (avctx->compression_level >= 0) { + if (avctx->compression_level > MFX_TARGETUSAGE_BEST_SPEED) { + av_log(avctx, AV_LOG_WARNING, "Invalid compression level: " + "valid range is 0-%d, using %d instead\n", + MFX_TARGETUSAGE_BEST_SPEED, MFX_TARGETUSAGE_BEST_SPEED); + avctx->compression_level = MFX_TARGETUSAGE_BEST_SPEED; + } + } + q->param.mfx.CodecProfile = q->profile; - q->param.mfx.TargetUsage = q->preset; + q->param.mfx.TargetUsage = avctx->compression_level; q->param.mfx.GopPicSize = FFMAX(0, avctx->gop_size); q->param.mfx.GopRefDist = FFMAX(-1, avctx->max_b_frames) + 1; q->param.mfx.GopOptFlag = avctx->flags & AV_CODEC_FLAG_CLOSED_GOP ?