From patchwork Wed Sep 21 17:26:58 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Philip Langdale X-Patchwork-Id: 669 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.140.66 with SMTP id o63csp1066659vsd; Wed, 21 Sep 2016 10:27:24 -0700 (PDT) X-Received: by 10.194.28.231 with SMTP id e7mr41519606wjh.170.1474478844378; Wed, 21 Sep 2016 10:27:24 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id f2si1532423wjw.72.2016.09.21.10.27.23; Wed, 21 Sep 2016 10:27:24 -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; dkim=neutral (body hash did not verify) header.i=@overt.org; dkim=neutral (body hash did not verify) header.i=@overt.org; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 154B7689CCA; Wed, 21 Sep 2016 20:27:06 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from rs224.mailgun.us (rs224.mailgun.us [209.61.151.224]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 72A3C689C48 for ; Wed, 21 Sep 2016 20:26:59 +0300 (EEST) DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=overt.org; q=dns/txt; s=k1; t=1474478833; h=Message-Id: Date: Subject: Cc: To: From: Sender; bh=9xpIzvmDk3JMEQNRXAAFSVIJCI6sLQ7Cxajdqeob5IY=; b=MiosVKEOzoeRgZQoaPqcJpUdQsbu1xclTE1ZFw6VPSSPVQSQrxWEPYDmOZIM49Vjgr4vSvFu tdwFiSQ1s+f3Mp73bqiUirkeJYJ//zxsufd0G7x76z6pHPZVS4iM+2PEpYODZlXEcSMiiMXH 7aDCdgnQuAMiG5aY0SKSq4tlYKY= DomainKey-Signature: a=rsa-sha1; c=nofws; d=overt.org; s=k1; q=dns; h=Sender: From: To: Cc: Subject: Date: Message-Id; b=NgW8CKNDSpWV++TwwxyF289+wxnpocjDddrDi67BbrQJUY1mNQeMnf4GwAYVqnb/qIgDDl adSSC5eAeSqrI1uFcNf3B78b3cDMobHAFEcXQ25DazahausbO3ZPIzRIP+p4gBsmNuZV2x2R 1Mn6e0P365NOQd9cOZHnU8QwI3v/M= X-Mailgun-Sending-Ip: 209.61.151.224 X-Mailgun-Sid: WyIyM2Q3MCIsICJmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZyIsICI0YTg5NjEiXQ== Received: from mail.overt.org (155.208.178.107.bc.googleusercontent.com [107.178.208.155]) by mxa.mailgun.org with ESMTP id 57e2c2e7.7f09ac7597d8-in06; Wed, 21 Sep 2016 17:27:03 -0000 (UTC) Received: from authenticated-user (mail.overt.org [107.178.208.155]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) by mail.overt.org (Postfix) with ESMTPSA id 751B0600AF; Wed, 21 Sep 2016 17:27:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=overt.org; s=mail; t=1474478822; bh=0ldrBHOQaJ94HTmjTcdq0px4/XToZ0IwIAsieOWp5Uo=; h=From:To:Cc:Subject:Date:From; b=X3/r6WwTn9XEMvR7HMAXtcELE6NGaLswBvVaSZ62MfpH3KYOGq9ryA39OHXlUuv88 3fH/jaBvxmHzivEAXwb8hJz27ldzUEvCAX0cnROaqwgi2s9q7plXSSHRgQDaX7mMv7 jH+iVrdND6+LRp+tA9GH/v+ZXanxxNI3+awj+XmkINTNXnKUo8lprv5WTyXMbSTAlY goPl5BFrdvo2eEkpC18rDfv2PU1mIgGZ/5gEO2PQ3j9V/rO6n0/hBGZKDD1qvsuKc5 uQBWh7BM89pDzNhl04oCtoyd6ptfmyS3SrDkuGtq6/NMD7ESp+x5QTPTSQ9H9UMspM iRhmqCQ3iyIMQ== From: Philip Langdale To: ffmpeg-devel@ffmpeg.org Date: Wed, 21 Sep 2016 10:26:58 -0700 Message-Id: <1474478818-10561-1-git-send-email-philipl@overt.org> Subject: [FFmpeg-devel] [PATCH] cuvid: Pass bit depth information to decoder 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: Philip Langdale MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Although cuvid can only output 8bit, it can consume HEVC Main10 if the bit depth is set properly. In cases where >8bit is not supported, this change is still beneficial as the decoder will fail to be created instead of plowing throw and decoding as 8bit. Signed-off-by: Philip Langdale --- libavcodec/cuvid.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavcodec/cuvid.c b/libavcodec/cuvid.c index 2570848..ddf8b72 100644 --- a/libavcodec/cuvid.c +++ b/libavcodec/cuvid.c @@ -181,6 +181,7 @@ static int CUDAAPI cuvid_handle_video_sequence(void *opaque, CUVIDEOFORMAT* form cuinfo.ulNumDecodeSurfaces = MAX_FRAME_COUNT; cuinfo.ulNumOutputSurfaces = 1; cuinfo.ulCreationFlags = cudaVideoCreate_PreferCUVID; + cuinfo.bitDepthMinus8 = format->bit_depth_luma_minus8; if (format->progressive_sequence) { ctx->deint_mode = cuinfo.DeinterlaceMode = cudaVideoDeinterlaceMode_Weave; @@ -573,6 +574,7 @@ static int cuvid_test_dummy_decoder(AVCodecContext *avctx, CUVIDPARSERPARAMS *cu cuinfo.ulNumDecodeSurfaces = MAX_FRAME_COUNT; cuinfo.ulNumOutputSurfaces = 1; cuinfo.ulCreationFlags = cudaVideoCreate_PreferCUVID; + cuinfo.bitDepthMinus8 = 0; cuinfo.DeinterlaceMode = cudaVideoDeinterlaceMode_Weave;