From patchwork Sat May 11 20:50:28 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 48733 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:1706:b0:1af:cdee:28c5 with SMTP id nv6csp297990pzb; Sat, 11 May 2024 13:52:26 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUZ2eosWaj+K+ekkgF6noSaO95cjrniRLVSZAWqBi0JOwqBkfOLbOcQUT2LL8YNfD6I5b3dFQTr7D9Z2udn7rjylW0z7H4m0bHQfw== X-Google-Smtp-Source: AGHT+IGt7oaojWH+C/5otf13vvjYhOpSLRz4U27Dt8BgByek20ak7DCA7OESyv9/7slkp2hlFo+p X-Received: by 2002:a50:8747:0:b0:56f:e71b:74e3 with SMTP id 4fb4d7f45d1cf-5734d6f33c0mr4219006a12.39.1715460745847; Sat, 11 May 2024 13:52:25 -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 4fb4d7f45d1cf-5733c2d52f8si3233935a12.281.2024.05.11.13.52.25; Sat, 11 May 2024 13:52:25 -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=@outlook.com header.s=selector1 header.b=ot+Xa6tz; arc=fail (body hash mismatch); 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9319D68D5A6; Sat, 11 May 2024 23:52:19 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04olkn2073.outbound.protection.outlook.com [40.92.74.73]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9FB9068D539 for ; Sat, 11 May 2024 23:52:12 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PpTcjBGEWwKAkfH7M3zTuoL7+eJGIm8xUvZSCYWI9ihWM0LDzLKP9frqAn1JojNfxaRkfzefVA74PVBnCPRhjfX0oWHkI/DukgdqDahy85Nd0ibx8phODhC+uKO0kQYEuQ9BIFAqxqT5TDQh0UIAZUbhNsP2CZlOrykEArOhXdQQEdN3yY3TIyBhPQZCnQUp7EE9P/pToEudlxIVcBIiAWgaFOnPY2jUm0MMnAfilkj6pAsAq0FOuU2M0Y4uKW4mbU7YqjPo0Q4KeBJaN2ibleaRXslpdahyTVHNbwA4FONjHFeCPyWISSdWHiptkUjad/umVEAIF3Ol1gJT1/XizQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=SldcewuFhX51BXbgitDItxFsfVSJrd4L1OOzDHVsBAI=; b=lbrXvvoWFswTFikdn4O2Nfm+VwR7IGvKkWb5ZqEShfTZ9C32OLLtbMCOH7MSnF6BC/df3x8LlVKGKEFcJSAaMbGqMyt9p/Rf6FmWMH1cB0q7Su5usZ1rjKEVc3bfqneCvdKXlWyD5LplNQOJ2EEhyBmM7Oxknav3QbUa0wKWh9jtRCFGtZg3tXn8Df0DsZyc10wvnzCcpDFzFgwFaKkfZSsHKkJbNCK5hk6Nw24J0x3Y8lHPYB1/SDEI1phunQBHtnyeDZlyn4/rRigNtzQiVyvale8Gi+zokJRNO1OiIzyT8KefM2KWL8FNCMBdbGyvOcwuxoF8uiMllwU5twsTIg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SldcewuFhX51BXbgitDItxFsfVSJrd4L1OOzDHVsBAI=; b=ot+Xa6tzesAKObpUtxnNT3BybJvXZG+LT2UcQVKPkbL1seZHQp/ewr6/NfMXKP+RqH9PFEHPQSVO0z2w5QeuY66iT2Pd9DdIvyjSgyIB5xfLq1pQ66yb6tRW0jnAbudWTZi+nGyovfTYqukzRGZH+VbIIEpD7DWgE04d7JMiTb8k9CyS+vFDCUlS9zB3gjpqEGzbC6xA9ObRBGSMTW+ecQbJfVPlimtv5wfdlF148dFZtgNAXY6gClb13szomIuyqMil9viRdHvptpbu1tHTNLam7snveRtoDv3BkwArHeZV+/pmgedngEcNLgZhWaNJQI6CSdzjSD4ZjXB0KDDJ4g== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by DB9P250MB0449.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:325::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.51; Sat, 11 May 2024 20:52:09 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614%7]) with mapi id 15.20.7544.052; Sat, 11 May 2024 20:52:09 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sat, 11 May 2024 22:50:28 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [9khZqwomCcoegWPF+jdVP75FL5qVcHlpT2dQfZQcMmQ=] X-ClientProxiedBy: ZR0P278CA0172.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:45::6) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240511205135.2411886-3-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|DB9P250MB0449:EE_ X-MS-Office365-Filtering-Correlation-Id: 96429691-b8cd-4d4b-8e6a-08dc71fc3957 X-Microsoft-Antispam: BCL:0; ARA:14566002|461199019|3412199016|440099019|1710799017; X-Microsoft-Antispam-Message-Info: 4g9r1p9resuXJxJs0gbh8I538cSyUSvTOUWbUVnN8ssi7YffK85lg1r7h6ujUWX584Xqfl53BDD6XtYVe2KI0GJcF9ZLZd17wxOTnmVYj4Ch8D4YsxAnl7IiNDmXofsXhYtdLYQzLEJY32o0okhuhWh03WrNovna84smmNHjsIJjIs1CVDtIVnwZYl6F5NgrQlR+d20ZLH/iNnpbw+avOmNXPUcpVrssi+g+UuYVqfp0Nvj/SrO+ylb1VdKz0i+/nEGNtDvzfmRonttDsjI01m6dTS8sGGdJh9ry9Mmfp8gtaICv300nSURS+nr0+tml445wgMw8ak2+lETRQyVEMh3946fM14gfVfYgk/CwMxJaZWenB6HYtm7JRRc1gGc1dzSgpOZSTlsu30vF28Am42UFltTPIF985Rg+d/7rQck229JH9y6DjnO/AdhDkmojdhNXuJehdiCRGgSvNUJNL++BrVB81tnesBK43Hadw7leTdXQxKRROhpck0fDcrrmri4jWxwN5rH80kYoT4bnB1x+ncdhR7rpqcVAsEUktgeQiG1e4YzNqB94GTk/Jklh/PVEsxMvEo+Fe4ElR4ScE5PqUcChUjBrLE45IfCRp/aSWgyQ/WjghBtHowuGtExN X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: fpzshjo+AqragV7i/DFkLts85JvoYh3FFCNAr2F4NMf/tmclbQjjqsNEgWAl4NXET5cf1RsIYWv5aosOZegBU5bXr2Rc2gfjHaE5/tRFOJCdXgQx0KlV3fkb8YWJHPBcUIogFwqYjFq9vYTmTuzMV7KBbdFwufd3vR7rEKel8XKnyjZn0mOMiHxXKVJWe3U4L6So6G0J8089UTkQqMeOmlR76vc7mnkxhS/fxw+c5vV06ugenQt11OWBwiLVIKViYo/XBP0HiuBKNQof6MMaiGOiRyyW95QVy9/oR0RHjEXqdSBc/eQ66O7aemOrtWe8O3pbcHbsjFKSHWgWtpnd+TSGs/bS1Q2BPxCM4IYQxfvel1p+cYDqOxQjPK7ggeyQP8To47vbozxzlTy9oAosZfwoh3oK8A1wrvnG5L/SgcfFKZzcAsBY9OUlCzsIsajgMwKt7AZEU758uS8SR0dQ5Ekoxs3n7tfQCGJw/qrBafN2flO2TwCp8pAQhAcVUxJb9gkle2itMZ5pqsiHkmmtVXH5dXYyuT+PdzjTahbzK1n1FFdWSIDrN4plJhRic+Ba3nhf/E+QVZBBg9jytVY5TgtB8whxTTQIVr0q+ioseUEK1RbGkN38xc0qqPuybMhTMb79/chCBvhItw6eK+kgpp6kwLs+myjeRPwGi5LfmW9Sxa5E2ptz8HO+2DvPCzSvC7ImaGNO8ngeuE/4eWoYAWs9l7gqGhP6J02zzOuvEY8J5LGX+cVia9t3xFq52x1WrKWZb4LqiTANr4YlNQ85xTykhGD0vPMxZQpRnJ5BRdy+0XxXamgkQlX3XRtZAQk7/hVVF0Gz1KocCcmh7rgAKW9qqLW+BSX+b3xjz7xXPzPB6qpj0Bk6z78MKjGpNXRvjrW7BXTH4ngZlf5+8lh9pkO/EF/a16s4bKdrpwIFJ5akOdGl5JfLTyZLlEI46Cr8Y2UT3SJxstj1oSKHb1pnXzCcckDls6bw2GED0b6rh21DOj/3MU/GoCGdjPdIaLum/9g51ZoUesxb8f93GhuN+/IG4IC4dllUq8gwhs01qFZSa1aqkRbGVQp50UpyjmqH6vAc9KII53cKiL2eN2gsqS28B138kmr6FMrg1dPFbwB71iNL4t7gSSo0H4HGKPNYxMdLNE/cJKtZLRzBumMLevWd0L4dssjxBMqmA72fBcwbD5pSJpHOXeawKB1pE43IdxTpENBJcBge3YvAIWVqRjIo+avJmiJ+TzblVgVUcSh4QGWicYJffWoJUUGpBk80ees8k7JxBtM/Py1w05fR7g== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 96429691-b8cd-4d4b-8e6a-08dc71fc3957 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2024 20:52:09.0141 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9P250MB0449 Subject: [FFmpeg-devel] [PATCH v2 04/71] avcodec/mpegvideo, ratecontrol: Remove write-only skip_count 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: gvQjxHbfsU5I Write-only since 6cf0cb8935f515a7b5f79d2e3cf02bd0764943bf. Signed-off-by: Andreas Rheinhardt --- libavcodec/h261enc.c | 1 - libavcodec/ituh263enc.c | 1 - libavcodec/mpeg12enc.c | 1 - libavcodec/mpeg4videoenc.c | 3 --- libavcodec/mpegvideo.h | 1 - libavcodec/mpegvideo_enc.c | 4 ---- libavcodec/msmpeg4enc.c | 1 - libavcodec/ratecontrol.c | 14 +++++++++----- libavcodec/ratecontrol.h | 1 - 9 files changed, 9 insertions(+), 18 deletions(-) diff --git a/libavcodec/h261enc.c b/libavcodec/h261enc.c index 438ebb63d9..20dd296711 100644 --- a/libavcodec/h261enc.c +++ b/libavcodec/h261enc.c @@ -253,7 +253,6 @@ void ff_h261_encode_mb(MpegEncContext *s, int16_t block[6][64], if ((cbp | mvd) == 0) { /* skip macroblock */ - s->skip_count++; s->mb_skip_run++; s->last_mv[0][0][0] = 0; s->last_mv[0][0][1] = 0; diff --git a/libavcodec/ituh263enc.c b/libavcodec/ituh263enc.c index 97abfb3f45..4741ada853 100644 --- a/libavcodec/ituh263enc.c +++ b/libavcodec/ituh263enc.c @@ -512,7 +512,6 @@ void ff_h263_encode_mb(MpegEncContext * s, s->misc_bits++; s->last_bits++; } - s->skip_count++; return; } diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c index f956dde78f..fdb1b1e4a6 100644 --- a/libavcodec/mpeg12enc.c +++ b/libavcodec/mpeg12enc.c @@ -824,7 +824,6 @@ static av_always_inline void mpeg1_encode_mb_internal(MpegEncContext *s, (s->mv[1][0][1] - s->last_mv[1][0][1])) : 0)) == 0))) { s->mb_skip_run++; s->qscale -= s->dquant; - s->skip_count++; s->misc_bits++; s->last_bits++; if (s->pict_type == AV_PICTURE_TYPE_P) { diff --git a/libavcodec/mpeg4videoenc.c b/libavcodec/mpeg4videoenc.c index 71dda802e2..bddc26650a 100644 --- a/libavcodec/mpeg4videoenc.c +++ b/libavcodec/mpeg4videoenc.c @@ -512,7 +512,6 @@ void ff_mpeg4_encode_mb(MpegEncContext *s, int16_t block[6][64], /* nothing to do if this MB was skipped in the next P-frame */ if (s->next_picture.mbskip_table[s->mb_y * s->mb_stride + s->mb_x]) { // FIXME avoid DCT & ... - s->skip_count++; s->mv[0][0][0] = s->mv[0][0][1] = s->mv[1][0][0] = @@ -536,7 +535,6 @@ void ff_mpeg4_encode_mb(MpegEncContext *s, int16_t block[6][64], s->misc_bits++; s->last_bits++; } - s->skip_count++; return; } @@ -691,7 +689,6 @@ void ff_mpeg4_encode_mb(MpegEncContext *s, int16_t block[6][64], s->misc_bits++; s->last_bits++; } - s->skip_count++; return; } diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 215df0fd5b..a8ed1b60b6 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -345,7 +345,6 @@ typedef struct MpegEncContext { int i_tex_bits; int p_tex_bits; int i_count; - int skip_count; int misc_bits; ///< cbp, mb_type int last_bits; ///< temp var used for calculating the above vars diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index e31636d787..f45a5f1b37 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -2532,7 +2532,6 @@ static inline void copy_context_before_encode(MpegEncContext *d, d->i_tex_bits= s->i_tex_bits; d->p_tex_bits= s->p_tex_bits; d->i_count= s->i_count; - d->skip_count= s->skip_count; d->misc_bits= s->misc_bits; d->last_bits= 0; @@ -2561,7 +2560,6 @@ static inline void copy_context_after_encode(MpegEncContext *d, d->i_tex_bits= s->i_tex_bits; d->p_tex_bits= s->p_tex_bits; d->i_count= s->i_count; - d->skip_count= s->skip_count; d->misc_bits= s->misc_bits; d->mb_intra= s->mb_intra; @@ -2875,7 +2873,6 @@ static int encode_thread(AVCodecContext *c, void *arg){ s->i_tex_bits=0; s->p_tex_bits=0; s->i_count=0; - s->skip_count=0; for(i=0; i<3; i++){ /* init last dc values */ @@ -3504,7 +3501,6 @@ static void merge_context_after_encode(MpegEncContext *dst, MpegEncContext *src) MERGE(i_tex_bits); MERGE(p_tex_bits); MERGE(i_count); - MERGE(skip_count); MERGE(misc_bits); MERGE(encoding_error[0]); MERGE(encoding_error[1]); diff --git a/libavcodec/msmpeg4enc.c b/libavcodec/msmpeg4enc.c index 119ea8f15e..c159256068 100644 --- a/libavcodec/msmpeg4enc.c +++ b/libavcodec/msmpeg4enc.c @@ -405,7 +405,6 @@ void ff_msmpeg4_encode_mb(MpegEncContext * s, put_bits(&s->pb, 1, 1); s->last_bits++; s->misc_bits++; - s->skip_count++; return; } diff --git a/libavcodec/ratecontrol.c b/libavcodec/ratecontrol.c index 3219e1f60f..ecc157a9eb 100644 --- a/libavcodec/ratecontrol.c +++ b/libavcodec/ratecontrol.c @@ -39,7 +39,7 @@ void ff_write_pass1_stats(MpegEncContext *s) { snprintf(s->avctx->stats_out, 256, "in:%d out:%d type:%d q:%d itex:%d ptex:%d mv:%d misc:%d " - "fcode:%d bcode:%d mc-var:%"PRId64" var:%"PRId64" icount:%d skipcount:%d hbits:%d;\n", + "fcode:%d bcode:%d mc-var:%"PRId64" var:%"PRId64" icount:%d hbits:%d;\n", s->current_picture_ptr->display_picture_number, s->current_picture_ptr->coded_picture_number, s->pict_type, @@ -52,7 +52,7 @@ void ff_write_pass1_stats(MpegEncContext *s) s->b_code, s->mc_mb_var_sum, s->mb_var_sum, - s->i_count, s->skip_count, + s->i_count, s->header_bits); } @@ -606,13 +606,17 @@ av_cold int ff_rate_control_init(MpegEncContext *s) av_assert0(picture_number < rcc->num_entries); rce = &rcc->entry[picture_number]; - e += sscanf(p, " in:%*d out:%*d type:%d q:%f itex:%d ptex:%d mv:%d misc:%d fcode:%d bcode:%d mc-var:%"SCNd64" var:%"SCNd64" icount:%d skipcount:%d hbits:%d", + e += sscanf(p, " in:%*d out:%*d type:%d q:%f itex:%d ptex:%d " + "mv:%d misc:%d " + "fcode:%d bcode:%d " + "mc-var:%"SCNd64" var:%"SCNd64" " + "icount:%d hbits:%d", &rce->pict_type, &rce->qscale, &rce->i_tex_bits, &rce->p_tex_bits, &rce->mv_bits, &rce->misc_bits, &rce->f_code, &rce->b_code, &rce->mc_mb_var_sum, &rce->mb_var_sum, - &rce->i_count, &rce->skip_count, &rce->header_bits); - if (e != 14) { + &rce->i_count, &rce->header_bits); + if (e != 13) { av_log(s->avctx, AV_LOG_ERROR, "statistics are damaged at line %d, parser out=%d\n", i, e); diff --git a/libavcodec/ratecontrol.h b/libavcodec/ratecontrol.h index a5434f5b90..1b49889f75 100644 --- a/libavcodec/ratecontrol.h +++ b/libavcodec/ratecontrol.h @@ -50,7 +50,6 @@ typedef struct RateControlEntry{ int64_t mc_mb_var_sum; int64_t mb_var_sum; int i_count; - int skip_count; int f_code; int b_code; }RateControlEntry;