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 2A8924043D for ; Wed, 23 Mar 2022 13:57:26 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id E5ACB68AA6A; Wed, 23 Mar 2022 15:57:23 +0200 (EET) Received: from mout-p-202.mailbox.org (mout-p-202.mailbox.org [80.241.56.172]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8643868067F for ; Wed, 23 Mar 2022 15:57:17 +0200 (EET) Received: from smtp202.mailbox.org (smtp202.mailbox.org [80.241.60.245]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-p-202.mailbox.org (Postfix) with ESMTPS id 4KNqfh5w7Dz9sRW for ; Wed, 23 Mar 2022 14:57:16 +0100 (CET) Message-ID: Date: Wed, 23 Mar 2022 14:57:08 +0100 MIME-Version: 1.0 Content-Language: en-US To: ffmpeg-devel@ffmpeg.org References: <20220323135426.32530-1-robux4@ycbcr.xyz> From: Steve Lhomme In-Reply-To: <20220323135426.32530-1-robux4@ycbcr.xyz> Subject: Re: [FFmpeg-devel] [PATCH] dxva2_hevc: don't use frames as reference if they are not marked as such 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 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: This makes my previous path "avcodec/dxva2: don't call GetDesc on a NULL ID3D11VideoDecoderOutputView" unnecessary. While it avoids a crash in release builds, it should still assert because a bogus reference is used. With this patch no bogus reference is used for that sample file, and playback seems correct. On 2022-03-23 14:54, Steve Lhomme wrote: > Similar to how a frame is considered for referencing for the RefPicList array. > This will do the same for RefPicSetStCurrBefore, RefPicSetStCurrAfter and > RefPicSetLtCurr. > > Fixes playback of http://www.gbbsoft.pl/!download/!/Film1.mp4 > Ref. VLC issue https://code.videolan.org/videolan/vlc/-/issues/26738 > > Signed-off-by: Steve Lhomme > --- > libavcodec/dxva2_hevc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/libavcodec/dxva2_hevc.c b/libavcodec/dxva2_hevc.c > index c91bcf3eeb..6b239d9917 100644 > --- a/libavcodec/dxva2_hevc.c > +++ b/libavcodec/dxva2_hevc.c > @@ -184,7 +184,7 @@ static void fill_picture_parameters(const AVCodecContext *avctx, AVDXVAContext * > const HEVCFrame *frame = NULL; \ > while (!frame && j < rpl->nb_refs) \ > frame = rpl->ref[j++]; \ > - if (frame) \ > + if (frame && frame->flags & (HEVC_FRAME_FLAG_LONG_REF | HEVC_FRAME_FLAG_SHORT_REF)) \ > pp->ref_list[i] = get_refpic_index(pp, ff_dxva2_get_surface_index(avctx, ctx, frame->frame)); \ > else \ > pp->ref_list[i] = 0xff; \ > -- > 2.29.2 > > _______________________________________________ > 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". _______________________________________________ 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".