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 3AC434456E for ; Sun, 19 Mar 2023 15:34:55 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 546E068C38D; Sun, 19 Mar 2023 17:34:52 +0200 (EET) Received: from mail-oa1-f53.google.com (mail-oa1-f53.google.com [209.85.160.53]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 13DBD68C2E1 for ; Sun, 19 Mar 2023 17:34:45 +0200 (EET) Received: by mail-oa1-f53.google.com with SMTP id 586e51a60fabf-177b78067ffso10747014fac.7 for ; Sun, 19 Mar 2023 08:34:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1679240083; h=content-transfer-encoding:in-reply-to:from:references:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=r4RgnTNIFiirKhDk8l6ebo3gV1JukvSvGgHm7BTaSeg=; b=SkBZnfUmNvTU/R96XjPX1215QC5DnWm7Xpb/bqp8Y6gz7+YR1odXgAy1/rYGp1bpJO rsl0R5chhzmuatzVo0frnRKT/0C0SWtGhO/BwBxAWTf6SlGHVHD2W5+/IRbcvUZ6LLIh 7SWA2sbykYZ1Blqg7C3hDLLeJ8MFkWOUz/qnQBNBxIsKmxkyfFLMXtT0Ywr76R6OEpVw zf0N6CuLtH/41Vb73ldZhaZBGNSF59xsBH99YWbjSO35jbzrZDVfZbyjyUCdZ7LBLeuq zG5oaI9dQ77/8mD8ocUBTS+IYy++MiY9c3zSAwhTZwS4+ANjnpEnjVgjSOnxNE/XGMT6 hgeA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679240083; h=content-transfer-encoding:in-reply-to:from:references:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=r4RgnTNIFiirKhDk8l6ebo3gV1JukvSvGgHm7BTaSeg=; b=Vtv7QFz8biIqxwLwozJj67nQ27f5NtKINegynL7j0A+cMgij4Zx3T9Jbo/rUMGYQTs /LbWNiBMzJE4eVnEZvBvQHKp1RZk/uIx4oIJPDyzgEcAr+HnNSDzV4SEMZlZVabVGwVw 37TGGRmMdQ+dcuThIgwbIWhirkkruah57I7low8vSPW4mvPDy1HOVIJz3+/yC/wKGdkC AMMjvnAuTEJ73XZnnloEnppXdGypkQZjBGbw6pxMFuCrz5pLqWk1vqNFDNbPeOV/XzRo pXY0Ayj9fByBJ5t0MudF4JhpFaxS6BsjEvKoL6HzRYD3f5R0PWwZ4w32s4bfAuuBwTNr Qwmg== X-Gm-Message-State: AO0yUKXuK0fbx6XyjiQ+9lNpQE3RKEg5RuXUwD+1zCGJjpXy5yT6hEOn xy7iAlE1hC6Qm55BU2fwSCA7kYPVNBo= X-Google-Smtp-Source: AK7set/YblqGnDCJ/lteUKY6iEcG+uW3THwhm60jANhfiI8Xg/kSSUMfidpdIj5ZrzOU7YhPzNsCOQ== X-Received: by 2002:a05:6870:e615:b0:177:9562:ee57 with SMTP id q21-20020a056870e61500b001779562ee57mr3136246oag.30.1679240083326; Sun, 19 Mar 2023 08:34:43 -0700 (PDT) Received: from [192.168.0.14] (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id tm20-20020a0568718a9400b0017293fa734asm2561814oab.48.2023.03.19.08.34.42 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 19 Mar 2023 08:34:42 -0700 (PDT) Message-ID: <0f6d6b0c-8cae-5f61-6710-f9860ae83d5c@gmail.com> Date: Sun, 19 Mar 2023 12:34:50 -0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.9.0 Content-Language: en-US To: ffmpeg-devel@ffmpeg.org References: <20230319141514.28134-1-michael@niedermayer.cc> From: James Almer In-Reply-To: <20230319141514.28134-1-michael@niedermayer.cc> Subject: Re: [FFmpeg-devel] [PATCH 1/2] avcodec/snowenc: AV_CODEC_CAP_ENCODER_RECON_FRAME support 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: On 3/19/2023 11:15 AM, Michael Niedermayer wrote: > Signed-off-by: Michael Niedermayer > --- > libavcodec/snowenc.c | 10 +++++++++- > 1 file changed, 9 insertions(+), 1 deletion(-) > > diff --git a/libavcodec/snowenc.c b/libavcodec/snowenc.c > index 658684c575..a03e4292ee 100644 > --- a/libavcodec/snowenc.c > +++ b/libavcodec/snowenc.c > @@ -26,6 +26,7 @@ > #include "avcodec.h" > #include "codec_internal.h" > #include "encode.h" > +#include "internal.h" //For AVCodecInternal.recon_frame > #include "me_cmp.h" > #include "packet_internal.h" > #include "snow_dwt.h" > @@ -1576,6 +1577,7 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, > { > SnowContext *s = avctx->priv_data; > RangeCoder * const c= &s->c; > + AVCodecInternal *avci = avctx->internal; > AVFrame *pic; > const int width= s->avctx->width; > const int height= s->avctx->height; > @@ -1877,6 +1879,10 @@ redo_frame: > s->encoding_error, > (s->avctx->flags&AV_CODEC_FLAG_PSNR) ? SNOW_MAX_PLANES : 0, > s->current_picture->pict_type); > + if (avci->recon_frame) { The proper check is (s->avctx->flags & AV_CODEC_FLAG_RECON_FRAME). avci->recon_frame could start being allocated unconditionally in the future for whatever reason. > + av_frame_unref(avci->recon_frame); > + av_frame_ref(avci->recon_frame, s->current_picture); > + } > > pkt->size = ff_rac_terminate(c, 0); > if (s->current_picture->key_frame) > @@ -1934,7 +1940,9 @@ const FFCodec ff_snow_encoder = { > CODEC_LONG_NAME("Snow"), > .p.type = AVMEDIA_TYPE_VIDEO, > .p.id = AV_CODEC_ID_SNOW, > - .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE, > + .p.capabilities = AV_CODEC_CAP_DR1 | > + AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE | > + AV_CODEC_CAP_ENCODER_RECON_FRAME, > .priv_data_size = sizeof(SnowContext), > .init = encode_init, > FF_CODEC_ENCODE_CB(encode_frame), _______________________________________________ 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".