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 8893540FA6 for ; Mon, 14 Mar 2022 13:33:54 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id E104F68AF33; Mon, 14 Mar 2022 15:33:51 +0200 (EET) Received: from mail-ot1-f48.google.com (mail-ot1-f48.google.com [209.85.210.48]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C9DB4680264 for ; Mon, 14 Mar 2022 15:33:45 +0200 (EET) Received: by mail-ot1-f48.google.com with SMTP id k9-20020a056830242900b005ad25f8ebfdso11749742ots.7 for ; Mon, 14 Mar 2022 06:33:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=53MOyguSYCtM2J5l2oSBoifF3AsIeEM2220jFvh29QI=; b=TI5on/YSxVttYi02qRMN21kx7L3949DsGjNDWxGP33op+TozsAsAKX0UmdYQQ0mUih LAxIx8l52sparrOvgIlDmQ2mMQDU+9o43YBtnpwnZGWrczEEG5OG4L1XcE55puEHTnHo 8yS9VcM1FCuxbzYH2wXfn9ETfMa/SUTwIhVbZrfSziNReOEnBvu9WDHzM2z+5oavPbpg 4L7XhMkEWBn4kraF6y2wXSycbJEE02FXpwQqY31YSV/tSDqTPrSKa524aN2uZJNEQq1s X4jQrrFnD2wlVxOXXLmMA/UcJJhyIpcLSbtoy2ocadpG6Hwu/mXVVUs9Mk6P/pAOk8J5 kcvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=53MOyguSYCtM2J5l2oSBoifF3AsIeEM2220jFvh29QI=; b=fRugxLDz39aFg6QtUXTFfLsCp9b7j5lsQFEjcMrWMrOsX7FSfb+pc5VeEm0oVFcjls 36+/whA5bqdfEePi2vFUMR6KK9LByRXbofccEWp+3uybuWT06m0DvpLExwcwamCeZ9SL Q/VGW+Qa4POsws6O1PrLhqUt1+dgVY/c2Do2Xioc0uufa8kzGNi5DM59Wc80oXZCwxNC my5q685jtzVS21coEji+xzb60/YyHn5BkVZ4S+16IfCjIGeStwNyLsfNEwRMrqQNK8m5 oKdlgcuXIKD+9uWpVnRr5OK81f4wWTRpYV2kcIUNdadTBwTmPn4CG2/DuupyDA774VwJ /Glg== X-Gm-Message-State: AOAM533GrwqTfeC9F76RdqVhyw6ohY/1ggPMYQBsCenzD8PGEotg/jkA 8PS7Q9o2WF/ZXkFdnobJL09GOvgJvqJAmw== X-Google-Smtp-Source: ABdhPJyxawkILwlJopIPIfzkAatZndbbFXiomjAjWij2hs2mHalls6ivpnuTfqw3ZjtPXLKQ7yoUfQ== X-Received: by 2002:a05:6830:25d6:b0:5c9:49ef:3c5b with SMTP id d22-20020a05683025d600b005c949ef3c5bmr5269458otu.331.1647264823806; Mon, 14 Mar 2022 06:33:43 -0700 (PDT) Received: from localhost.localdomain ([186.136.131.95]) by smtp.gmail.com with ESMTPSA id e8-20020a9d63c8000000b005b235a56831sm7681651otl.49.2022.03.14.06.33.42 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 14 Mar 2022 06:33:43 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Mon, 14 Mar 2022 10:32:53 -0300 Message-Id: <20220314133253.1191-1-jamrial@gmail.com> X-Mailer: git-send-email 2.35.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] ffmpeg: print proper statistics for video output when using wrapped avframe encoder 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-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: pkt->size contains the size of an AVFrame struct plus some padding, which is meaningless. Use instead the size of a raw video frame, as if it was the rawvideo encoder. Signed-off-by: James Almer --- fftools/ffmpeg.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c index 9a3fdc636d..a878554627 100644 --- a/fftools/ffmpeg.c +++ b/fftools/ffmpeg.c @@ -722,6 +722,7 @@ static void write_packet(OutputFile *of, AVPacket *pkt, OutputStream *ost, int u { AVFormatContext *s = of->ctx; AVStream *st = ost->st; + int data_size = pkt->size; int ret; /* @@ -796,6 +797,12 @@ static void write_packet(OutputFile *of, AVPacket *pkt, OutputStream *ost, int u pkt->duration = av_rescale_q(1, av_inv_q(ost->frame_rate), ost->mux_timebase); } + + if (st->codecpar->codec_id == AV_CODEC_ID_WRAPPED_AVFRAME) { + ret = av_image_get_buffer_size(st->codecpar->format, st->codecpar->width, st->codecpar->height, 1); + if (ret >= 0) + data_size = ret; + } } av_packet_rescale_ts(pkt, ost->mux_timebase, ost->st->time_base); @@ -838,7 +845,7 @@ static void write_packet(OutputFile *of, AVPacket *pkt, OutputStream *ost, int u } ost->last_mux_dts = pkt->dts; - ost->data_size += pkt->size; + ost->data_size += data_size; ost->packets_written++; pkt->stream_index = ost->index; @@ -849,7 +856,7 @@ static void write_packet(OutputFile *of, AVPacket *pkt, OutputStream *ost, int u av_get_media_type_string(ost->enc_ctx->codec_type), av_ts2str(pkt->pts), av_ts2timestr(pkt->pts, &ost->st->time_base), av_ts2str(pkt->dts), av_ts2timestr(pkt->dts, &ost->st->time_base), - pkt->size + data_size ); } -- 2.35.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".