From patchwork Fri Jan 27 14:05:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 40141 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:3ca3:b0:b9:1511:ac2c with SMTP id b35csp1372715pzj; Fri, 27 Jan 2023 06:06:28 -0800 (PST) X-Google-Smtp-Source: AMrXdXuKVJiWUbGoM4e6OxFsMWeOGbaME9ZOU/OJ3+lHtBde+noW6bI+Qlbxl8wF4flQWNO4B4ny X-Received: by 2002:a17:907:2489:b0:84d:430a:5e5c with SMTP id zg9-20020a170907248900b0084d430a5e5cmr46207744ejb.32.1674828387857; Fri, 27 Jan 2023 06:06:27 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id eu3-20020a170907298300b008778ad3ca00si5865152ejc.234.2023.01.27.06.06.27; Fri, 27 Jan 2023 06:06:27 -0800 (PST) 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=dTCbTW0r; 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 07ECE68BE30; Fri, 27 Jan 2023 16:06:11 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01olkn2030.outbound.protection.outlook.com [40.92.64.30]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0101568BE28 for ; Fri, 27 Jan 2023 16:06:03 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=knzdD+fLK532WAmIp7r6cNqeh8jPrxdbp6lnvrSXoZIVkIlBjB8ivXVoXj083dZI4rvFFnV/nHQpIBsx0XUkBmj8CwEC5+NWAVEOGlnhrg5KNU9koC3wgVpgCaJX5n2yFTI44xMwh736jF3X0XUcKZvRn0sJJ1MnCuFDrhG8T4Qv3cLNBKKMHBLwX3eVM+vRCixYq0P/Eceb8G5NU58lKraCgrT9pimURPBpBJI3y7mDK+YvzSjZOi2Aj1JPBuBnahf3jos73QnNJQEbvPDr1ekEHt7k3i2Je7eC+tHxW8TXZMvnVJaq7eXR42y5rCp0E2huoU1y0tyAedy0D2kJMQ== 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=6Hv/TSjwRDGCFnbn3J8SS5skPqIz/OVg6hOrjwu6BeM=; b=NSPFTe0Op7cf/Rb5Y2GTx0ThkJ7L+z2frOh1c7pStvqs27k4xPmHXH7NPnB/l3FkjIShFTkRe0O6FPZ27Q7GdKMdrerUThoin4Dsc99k0jTCb3Nm/Dhqz+0uCUpu0LhdYC06lGs9SGNVdL5b1tArIhg2T7XhfwjQGe5mRLpyFPAod9ke3maifJnY7D/3FrNSJlaRopZnzyNTM1R+SKFbzcYb3zs900vsFoKSWfq1oGHn6EVjRVteO0StfXJnUXbHDMayJfFx6/xthZZRX0n35+OlJz8C9UePsoJq8ESZBg2+hZgrOwXzkExPXXXKe4kgdT4TqT4zFdzknHlZwzJ6Lw== 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=6Hv/TSjwRDGCFnbn3J8SS5skPqIz/OVg6hOrjwu6BeM=; b=dTCbTW0rl0k2k0ibZVDqYFf/pVzFGnH114eRsPygcEcNyWm0ny0pQpTgE8uug153QrUJRTJt1FvE9qR6HNyiW4af7Ye+3X81iou8EjPFlNSept45nK0angiYt5zkQJT429XKpXDppWpX5MgjNZhM//5TeQU+vPqoK+levWYRtSpHHmKXyysqxhalFXCi9GLYO00d3/ErGyRwTAXXYywry8gdPwbBularM6NV9DYfNfAJdl3Mh0sM1jv33M4/CXnnzn8BZYifmOR7rwmwsCkP5BxIF+SROAAjgpof7HQKXh1oFE+g7EEgNKmUIK5KgMcZfxpjvOxql0kczXVPQ4qXiw== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AS8P250MB0741.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:539::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.12; Fri, 27 Jan 2023 14:05:56 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::a65f:2ae7:256a:ab96]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::a65f:2ae7:256a:ab96%7]) with mapi id 15.20.6002.033; Fri, 27 Jan 2023 14:05:56 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 27 Jan 2023 15:05:58 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230127140600.2831578-1-andreas.rheinhardt@outlook.com> References: <20230116133840.512-1-jamrial@gmail.com> <20230127140600.2831578-1-andreas.rheinhardt@outlook.com> X-TMN: [ywRj4k5p5GtolEeo/51cZzKhhG6Sd51I] X-ClientProxiedBy: ZR0P278CA0164.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:45::14) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20230127140600.2831578-4-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AS8P250MB0741:EE_ X-MS-Office365-Filtering-Correlation-Id: dee167f1-7e1c-4d12-8de0-08db006f9be5 X-MS-Exchange-SLBlob-MailProps: AZnQBsB9Xmrgx3yDcOSN5Aj9SA/CMfffxw7FO2c6SQMimu5rzCwiajKTHvvIcYdyTeRtF4MylRz2hwgSLRNuN0piBQ9eeEgLVOXZWfF5LM6lZKpAnGur+p2QpzAZelyLIGAea3A51T180WWJ07Rfq9EkMbdt7c2p4IQBK6PgmyUvX7SchPBHZV40qnuYMWc4+yFQvUCldKb4hxBmrTT5DnjOiv5rh1LbEVOlmTB4iZCbw+0yXngch8QIKMobp5Db1bbmIOjOI89hRGJd9IAXRENndmlmrY1qZ6UdPRbUN+XKO+F2yq86YHz7OLcociWGKBLFg4tsX60XECrSWuAvVtJ78jZV1+k9oyDOQyvyejWx/HX+97dYBSUDFM2HCUaOnj0Xx+bTOwjC6pQvY3KLb0QuLt9+ukJTLfKytOScmpsObFqZO7aYTQ5zp38uPapniDhXC8FM63JX0liYwDaSrYp83WatSk4I/j9yuyb6qiCWLhE9ehGq0r24gpFLYVOmDMQRd2cAsFBjYF2l7aVVVrlnpz7G8hMhbVYsEOV12ltx3Fkj/3bqV3AwKcPaDfh5kOsaLbVncGCrlvJzbGgx8PjkE0TS+LWXPOvL8whHNW5Ghsh3Ao6keY08vi3B0uxd0Q1wa6vtGf1lv7jaNKH0VFnwRNbCWyjsYxS7DESVsi7z/oM+1chf7M2KA8wT857vLCbh+ITrzA2khZ8tS02AhzvF+kN8I1HSv7pO7v6mpaoDcYSE2YrtCOt29vEZ2FCKAdLt1SN4ewE= X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BMEooKJK9oIaR9pN2XpXG3tyTjqGHVsD9yDgdpU4BHkNXEMwXmbBY2tjbyUDrYKxnwWKZc5n+sUXt7YrqZSvuIZ5i+POVqlhkE/0tzR3dg6T7KYMmvtuGw4M7lCLYt+kiu3PF7ZnZhLnjNG16F34Xv28N2FlPD6pSZerHJmODnv8XdmHAm1tPyZkB6jErG2mn/xro50pz1UB2f/HOmd+y5Do1MOtRIR3dPYxPXbsL/Jh/J5TLbgLOk+++8DELTaJj9xABGZ6qkK0MdpEhxNxMneYw76Bm2PBk2lZCRWhaWD/YYXIsKwHZdt+u5VpsJIhXN7G7UxUjXX0s7zo5zHaR+gPEhbu+KBw5GFBP2eRysmht24OSirk/Sx0WpJXGpvaKOWYC4/iAxuHcTum1qx0FzwyUDkRyyFKdIMJsq72RGNhoJjatqy75v937mEvo9MDxuwannosMJnbkA1nOvx48AHGw74XAgiQBiKajeYe4zN6QotOHXCizOSZL3KVQmTHyiHaPJgvT1gFV8o1A3i3Td0NNUUiDZkUI8acSQLNHlKiG3S4TfBippKtkuTx5E9VRvp/Kqf9UEbDC3ZRkoBYYQxv5yokf3hCWI4S9SDL2YuMvQSeuvvXdGzC1G+29GZO9C8y3Ovzlpz8z4UEWAJ2hs/qbccv6YQVnlcXlvO4ryU= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: dJcKmtJsqZjVoVN/0BR1ktC7bFdl1+yAnZoAjsLmivAgyP0qxFrp+hk53kHjNE3I06bsOxNsmDdS9W5uWSsjx74hlPKcdDOoMXia0WvxeHTsq9bKca5RHS0YIdsQKNzABQUPgTPLU8yAzz2XNF1uJvx9BzxC6IlxenetTu6RA0X8TFjHs8nfUMV2imqipP7qwY3zXu+DFZwS3u+m2DfR/0s/ENPpi1M3Izb40AfhKbBit0+NyVELrwtTWupvLO217Qk2Zo7rMxdHIRqqKbU41m8r6JVGcHQL81VLfTiQjpddqoHhwr/JOZ0V/Q+elo6Wcttk6AgdIylOBOozT8sDAeATa25d09wgsFKgwNYxuSusVer1xKX/nBlaM8Jymcvz1/ZzL0ViZzehAE4ucJo4yDFRz9epesEB5MoL5s/rDNS1Obe6sDa8U9OCHonP+Z3U6U3KRcy5ZXS+MTES8DjlNUMpOIZC6533xpuQ0oYH7npzBC5n8niGgqfheMQ5dN2xuaZ+H+KfbcnVT8Tg5J4NLkiW2+x32axsrHqYGpcFZdGzTvQCUR1OxsOSIgOtq4moe+CQQEoEUIjWwo724AVO8fZ9evcsguYemJ9HmPiTc0S6lRUKdTk4SPDIKqj/35G9cOWVRfSpEXk8+nkzYBeqFRzclxNFOIOrFb6kbFTX8Yt3ICt7sVJhgxLD+ANIpQWcb0pDEWSV4L9nTkslgxX/D/1xE/zCUoMp5UtxIBqaq3LrUZ5ABjkuJ/tkbs5v5in4lkMbUZSHwtK91U2kzUpzmDtbLCBsS0ibSkdIt5jnXcYFFgn6A+iEETsB3eJ8/uDFsX24Unnh644twv7JVIYLHL/yk7mc8TK7B6o3mUTazh9IfrQR4b5xvBdj2/3akckGs9KLAcS3P3O04RLJveUTdCW8yG7MheXQ7J8jJi4JtBfgmCs/Av3Q3/wDa+JhuYZZkMonZyWmBcegDUXiDB8w/cMMJY6GX/nVlR6L1pUteyuEe2HnekFx+j4FkQy6c1N1CJHrm+/IRKAiVg2NX3Zl9iQaQWdn8c5Kt9K0eux6LqxVEhMPJQuycxuJ48QFCZDwBdo9t/CVN9IKgVdY89ZVJH5giUKAnijoX6v/Abi3SzSgWqjotPDYb8M2KvA1PPaS7ihcAipEF2GbHsWnuVjIcPv3BskHpRiE4MN+IXfabKgtVwA6YR7XQVeju87r2KanSx4+Mr9mk9eiRG+HETcVHSuzMZEerHJKzWafpyUBIpmCxf2CFQngiVxcZE6RW3+/rmtVG2aHXHoYNrkvP3GxINt2hV+0CGZ/nSvLmR6/jNo= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: dee167f1-7e1c-4d12-8de0-08db006f9be5 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jan 2023 14:05:56.2282 (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: AS8P250MB0741 Subject: [FFmpeg-devel] [PATCH 29/31] avcodec: Make avcodec_decode_subtitle2 accept a const AVPacket* 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: 72LAP8WHZAuV Signed-off-by: Andreas Rheinhardt --- doc/APIchanges | 3 +++ fftools/ffmpeg.c | 4 ++-- fftools/ffprobe.c | 2 +- libavcodec/avcodec.h | 3 +-- libavcodec/decode.c | 9 ++++----- libavcodec/version.h | 2 +- tools/target_dec_fuzzer.c | 4 ++-- 7 files changed, 14 insertions(+), 13 deletions(-) diff --git a/doc/APIchanges b/doc/APIchanges index a11acadecd..d4c37b9040 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -14,6 +14,9 @@ libavutil: 2021-04-27 API changes, most recent first: +2023-01-25 - xxxxxxxxxx - lavc 59.58.100 - avcodec.h + avcodec_decode_subtitle2() now accepts const AVPacket*. + 2023-01-13 - xxxxxxxxxx - lavu 57.44.100 - ambient_viewing_environment.h frame.h Adds a new structure for holding H.274 Ambient Viewing Environment metadata, AVAmbientViewingEnvironment. diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c index bef910a787..a916f9fe3e 100644 --- a/fftools/ffmpeg.c +++ b/fftools/ffmpeg.c @@ -2199,8 +2199,8 @@ fail: return err < 0 ? err : ret; } -static int transcode_subtitles(InputStream *ist, AVPacket *pkt, int *got_output, - int *decode_failed) +static int transcode_subtitles(InputStream *ist, const AVPacket *pkt, + int *got_output, int *decode_failed) { AVSubtitle subtitle; int free_sub = 1; diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c index 5cfc2d9f87..db37ec52f4 100644 --- a/fftools/ffprobe.c +++ b/fftools/ffprobe.c @@ -2733,7 +2733,7 @@ static void show_frame(WriterContext *w, AVFrame *frame, AVStream *stream, static av_always_inline int process_frame(WriterContext *w, InputFile *ifile, - AVFrame *frame, AVPacket *pkt, + AVFrame *frame, const AVPacket *pkt, int *packet_new) { AVFormatContext *fmt_ctx = ifile->fmt_ctx; diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 4a9f9957d2..cb4f7a8514 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -2504,8 +2504,7 @@ enum AVChromaLocation avcodec_chroma_pos_to_enum(int xpos, int ypos); * @param[in] avpkt The input AVPacket containing the input buffer. */ int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub, - int *got_sub_ptr, - AVPacket *avpkt); + int *got_sub_ptr, const AVPacket *avpkt); /** * Supply raw packet data as input to a decoder. diff --git a/libavcodec/decode.c b/libavcodec/decode.c index 96889f7dea..c37d607e27 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -771,8 +771,8 @@ static void get_subtitle_defaults(AVSubtitle *sub) } #define UTF8_MAX_BYTES 4 /* 5 and 6 bytes sequences should not be used */ -static int recode_subtitle(AVCodecContext *avctx, AVPacket **outpkt, - AVPacket *inpkt, AVPacket *buf_pkt) +static int recode_subtitle(AVCodecContext *avctx, const AVPacket **outpkt, + const AVPacket *inpkt, AVPacket *buf_pkt) { #if CONFIG_ICONV iconv_t cd = (iconv_t)-1; @@ -852,8 +852,7 @@ static int utf8_check(const uint8_t *str) } int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub, - int *got_sub_ptr, - AVPacket *avpkt) + int *got_sub_ptr, const AVPacket *avpkt) { int ret = 0; @@ -873,7 +872,7 @@ int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub, if ((avctx->codec->capabilities & AV_CODEC_CAP_DELAY) || avpkt->size) { AVCodecInternal *avci = avctx->internal; - AVPacket *pkt; + const AVPacket *pkt; ret = recode_subtitle(avctx, &pkt, avpkt, avci->buffer_pkt); if (ret < 0) diff --git a/libavcodec/version.h b/libavcodec/version.h index dfd3d5d7e5..7ac8d2b2fe 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -29,7 +29,7 @@ #include "version_major.h" -#define LIBAVCODEC_VERSION_MINOR 57 +#define LIBAVCODEC_VERSION_MINOR 58 #define LIBAVCODEC_VERSION_MICRO 100 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ diff --git a/tools/target_dec_fuzzer.c b/tools/target_dec_fuzzer.c index a20345db5c..8e89b613c0 100644 --- a/tools/target_dec_fuzzer.c +++ b/tools/target_dec_fuzzer.c @@ -81,8 +81,8 @@ static const FFCodec *AVCodecInitialize(enum AVCodecID codec_id) return ffcodec(res); } -static int subtitle_handler(AVCodecContext *avctx, void *frame, - int *got_sub_ptr, AVPacket *avpkt) +static int subtitle_handler(AVCodecContext *avctx, AVFrame *unused, + int *got_sub_ptr, const AVPacket *avpkt) { AVSubtitle sub; int ret = avcodec_decode_subtitle2(avctx, &sub, got_sub_ptr, avpkt);