From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 276B2431D9 for ; Fri, 24 Jun 2022 04:04:20 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 44AAC68B6F9; Fri, 24 Jun 2022 07:04:18 +0300 (EEST) Received: from out162-62-57-252.mail.qq.com (out162-62-57-252.mail.qq.com [162.62.57.252]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7AB4C68B456 for ; Fri, 24 Jun 2022 07:04:11 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1656043447; bh=PAogDi5fqo/vAm+HynNTWBTe0Z9QJ0BvJT3UmEuonXU=; h=From:To:Cc:Subject:Date; b=yrHG3WY44DGtrT4cSTPAIIe/9ZAxMLFon3El4bax8qkMgmqxqPhs9MjzXecrVyobZ WhWlFJevyMHuAc+G1p0oudoNRfCg5W528k6qIrjr0OMd7oppiwBhomZ8YIyYSGPKQN TV1svsfeS0uyfNCOlSCjkHq+Q7hMg46oZcEv416c= Received: from ZHILIZHAO-PC2.localdomain ([113.108.77.72]) by newxmesmtplogicsvrszc11.qq.com (NewEsmtp) with SMTP id 10630671; Fri, 24 Jun 2022 12:04:06 +0800 X-QQ-mid: xmsmtpt1656043446twg3vebk5 Message-ID: X-QQ-XMAILINFO: OQhZ3T0tjf0aa9kxWSVqlt0rb+W6nnx9WFwlXKqPCGUZb6gXYyzNf8P3871twR 5w0Vl6B6cTUk8BrY9TC18Bu5lXuuFhChwrTR6DauQeSEIFLit2g170nA9HqQM2az/1GLWwU3PZ/b OscBUyF97SF2y7WGr8Ep62lRFGKqM/M7BugWX21SvPZR1xJByg+K+b+uFs1WWKxkcx5lbisaksgM ag023mIwmHGkyebfgXwo1DFZK6GwpJw0eZktYdiFNVw2jDmtCMXXv7js0gTnMs8WJ6XS4r1WUAx5 60EHlN0qRdqEOng1NvvSncGwaRu41JYRc4EONeKI5GP5hDdN6KFnkuE9iY+juGloiWpgm+S9Ysyl 0e3ezYBY/R0i2TkK/MoiISxAYMf3i7cUQd0NXVMohLULa72lmqHGuLX61NWQylBCOTLKW2dy5xl7 3+7bksFNmckLBZfmafVKY+3MlG4+8Eqo+KyuKuMoF6QOo78JKOxboBSUIW2ISNRqqK8nOGik3vCD HoNUao2EMih1y0CEdO+jnNbdZKJHBzKhA4rqgFtJ71R95lemZ71VhffZOcpq7lxZxXKuSFcYo9Ww vTFT+kDWvhNeMBTEv0uSZCMoWcjBTP+saQokv8j7kPM1Uf4B5BVEvt/VDLCHsk6Lof83Rl9aIMd7 aKLlm7xIAdLY/M7xXc4X1GgL8MCY0UgpNFWTU+09g1vOitie+BqZQa/Nz5caH/FArcyMShfFR54e A2VVMSKCGAu8MwnCHj60o1wrn4bFU/kQZu0iIXcgN4WTABq6uZU9ct8S4npa8DhYEHu9fIReGn1M I3RGZq92gEjeR1AZfTJBPwfZW539tLGDBEs7NkC46+JPgnKDori7HH8d4UO9xlYzwLoZB7fcmFB6 iktbuFG6CL4XfbKXHlRLIDZ1X8hhmZGQ== From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Fri, 24 Jun 2022 12:04:04 +0800 X-OQ-MSGID: <20220624040404.2376-1-quinkblack@foxmail.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] avcodec/cuviddec: fix AV1 decoding error X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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: Zhao Zhili Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: From: Zhao Zhili cuvidParseVideoData only supports pure OBUs, it report unknown error with AV1CodecConfigurationRecord. Check whether extradata is AV1CodecConfigurationRecord and skip the first 4 bytes to fix the issue. The bug is revealed in ffmpeg cmd since 45e3b6a68 and ffd1316e. --- libavcodec/cuviddec.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/libavcodec/cuviddec.c b/libavcodec/cuviddec.c index cb3cda7e24..fc9c0515fe 100644 --- a/libavcodec/cuviddec.c +++ b/libavcodec/cuviddec.c @@ -953,6 +953,16 @@ static av_cold int cuvid_decode_init(AVCodecContext *avctx) extradata_size = avctx->extradata_size; } + // Check first bit to determine whether it's AV1CodecConfigurationRecord. + // Skip first 4 bytes of AV1CodecConfigurationRecord to keep configOBUs + // only, otherwise cuvidParseVideoData report unknown error. + if (avctx->codec->id == AV_CODEC_ID_AV1 && + extradata_size > 4 && + extradata && extradata[0] & 0x80) { + extradata += 4; + extradata_size -= 4; + } + ctx->cuparse_ext = av_mallocz(sizeof(*ctx->cuparse_ext) + FFMAX(extradata_size - (int)sizeof(ctx->cuparse_ext->raw_seqhdr_data), 0)); if (!ctx->cuparse_ext) { -- 2.34.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".