From patchwork Tue Apr 20 15:49:47 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 27194 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:5014:0:0:0:0:0 with SMTP id e20csp1592939iob; Tue, 20 Apr 2021 08:50:13 -0700 (PDT) X-Google-Smtp-Source: ABdhPJweHuW9+IbQcAf3pxoXmznxX2DAK3CgWwMWd6FBsy6Q27nio+V8R8IOALenEisAiy5tipxO X-Received: by 2002:a05:6402:5149:: with SMTP id n9mr32489215edd.195.1618933813778; Tue, 20 Apr 2021 08:50:13 -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 df26si9294165edb.433.2021.04.20.08.50.13; Tue, 20 Apr 2021 08:50:13 -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=flPebk+c; 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 757DB6898DF; Tue, 20 Apr 2021 18:50:10 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-oln040092072074.outbound.protection.outlook.com [40.92.72.74]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 18E916801D1 for ; Tue, 20 Apr 2021 18:50:04 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R4PgQrllKOJ6sTiSt4jvXIQdZuZv78mUatd1dVYYlHHGoTGnUyurRBAbNCotS+t9Ey32Kx+HdbmLMJJzjPtfceUYASIegP2d3ZthekMlQu0jEZrjHIDdagYPJSEvxVEU+KzcrWwGfAbEiSw3T4nHmrCSVl1npEZzy58YtjAKNVK5duim1+OBXcW0nCOeNihwQl92raujV+1ZORtC3a2FaXoopuiLwa4wXtJD/miw5i/unS6yJXZNrLxnxdhc/Hugd8e7/gUbFv+TDB4tFuTFU8k+zjABUaaAufUlAzPl1cozV2uZmRtkoo6zhtOe/IU4Vr4GWm9o9rrxgEZ1rIynhA== 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-SenderADCheck; bh=3Xn6g0ZD+YpAzmFFS68V/kp5TwH+bku8kZof93bPboo=; b=asmGmtKyh4dy6NABom/CzFtcC0OA+l12WUnbgQKnK8WROzNuRNcZhWe+hcPTRrLL8IziO+sjIMY9qo5OpO+OQP9nbLofYX1U8utZpPUvBzBbuDwQkCfK6odS6ZpDod2xDdgkHeIe84rXSSOxNmnZkVvYLyydU0IS10i8yQR8LFfua1B4ng1dUgUeotWZ9mtlqeeiAIYao0II2VguaMfMm2tT7tuzkSGr/zKI++ZCU9x+MyIRecWFdeoPPxegh4IwR2wlKnMgvZLhUOhvdM2lk7O2xkXsWdgN87FOcMDuXmtscCFJTfTUM7mMpKGSYxRGpV/RBYRU1C9PPaUqzp06ig== 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=3Xn6g0ZD+YpAzmFFS68V/kp5TwH+bku8kZof93bPboo=; b=flPebk+cN9o5T6vwbBeunAtbwQrxUQcTiFSAu4cgKdrkO+ZHfF1VTGAD4Hx/kW42sH5GvBJksJ3RIPZuDRcIYoWQZRIqiT4G1vD2ppcZ8evilvkf4y0L5mveqBoPp8OGl7MoBdwesHaDh1aFxrICQO80fgAu/KWHOgn/P4xudYWyU6sviLIGLHTh94iMjbNYCg8IaE3QLdoKhcsbWaA2HzTHWjkmPGyPr/LZFlFdB1NnrhNPXvzglzhQKD64aHMXAQLDh0mB+nnU/suYwNKyyc2qNGRqMXVuu54S7IgmtDvC40cQk/8vg8JzyJzv6ZuP5sFyrofWFaAuhW70bY+7XQ== Received: from DB5EUR03FT014.eop-EUR03.prod.protection.outlook.com (2a01:111:e400:7e0a::48) by DB5EUR03HT027.eop-EUR03.prod.protection.outlook.com (2a01:111:e400:7e0a::205) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16; Tue, 20 Apr 2021 15:50:02 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e0a::46) by DB5EUR03FT014.mail.protection.outlook.com (2a01:111:e400:7e0a::102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend Transport; Tue, 20 Apr 2021 15:50:02 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:59ACBDA07C34D17F576493AA55470E258173319A8C628030ECCDD78193FD2707; UpperCasedChecksum:217A9730DEBDE28F826F8995D3E4B9EEA65FC15F4FDCC6442DE122197713A693; SizeAsReceived:7550; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7%5]) with mapi id 15.20.4042.024; Tue, 20 Apr 2021 15:49:57 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 20 Apr 2021 17:49:47 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: <20210419141024.8174-76-jamrial@gmail.com> References: <20210419141024.8174-76-jamrial@gmail.com> X-TMN: [ToknBW5BcyNG9F0Kp3Uhopwtxh9QMCV6oX6lFBvkA+c=] X-ClientProxiedBy: ZR0P278CA0156.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:41::6) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210420154947.1861537-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.193.169.173) by ZR0P278CA0156.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:41::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.16 via Frontend Transport; Tue, 20 Apr 2021 15:49:56 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: f83af4ea-9e48-43a7-a4e4-08d90413f259 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSaJ/Gj/W3pBm4L34lmZkwXPkXv/Nc65ZDiAPS2nXEZlL7w+qpwE+dN9ThI0EndYAN50pDAqMa2/krOTCbRS0dAQqgYQEkO7v3TT2Yugpewt4RykHpyHCXxGejkhtDvz1xoq1gQxQHBQWAtt0Nm4nrP6BsO3H5LrT2w0SWHp9p2Vku1A/1ZV23z+vlTKvyIXqAoQIZe3zi1ffu9TJhgbL+/k3HsjscgKMmmva3NTonGBpSU3Hr4lVJBcQMsWJjtQhP0TfixX5lSVperL0AKrYQ0AYmViKxBRENsSN636YVFsbUpua67j+kxPTGad5nrcTVnqr4nghDTz2M8W3OPhPtZQEkpUZ/q4SxJK5QFf10iqQrz1SXGjVYPGKtaulBJGsnPKhWGjRW5et16IBlo7UCxClmc+UcXv3tFqlXuVEJm+j8VaZxWyPEd2ll1dJClwY0LjbPkaNmXCdvjMSAOvPCZAjJ33VzUjuxecUqwUbZMpluMPG9rUrVZJTW1CREDa0OBpPhWYyDGnzCShct/lYCqbYFTMTHHV8sSM0vCSui2jhynr7rMMZIroAkyRC6WcKfdp2PX8b4W8DUmBvoIADIf1qqaEscHj/CA4P0wUsUnJY0l7zBFWoNGc+H9TCw4q0ya33hj2QoU7sBhGKnhwiXT3r7iGvr9dFNxIdqXHQoNI/eKG+U9bqxucv6jNUNXtb7Cv3yo4IP5jE0YcVFvUFaDjKybeyLUNt7CBTIhGfjEcEhJgHe+HRzfaOW4/0eH8Jk= X-MS-TrafficTypeDiagnostic: DB5EUR03HT027: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XhgXI6A1ZytnMDuQdARqwwzdBTYyWDNII7/5DiQL6SzL+AvnbyFZi3P2cZRcs5VCfOaY4yemExRmg4Cl4fuUQaHLbM5+bDs4dfNVv71Z8R/bKHgratho1RS4LwrvJdHwq4lDbIXwGGcU8s8oNUhP4Og7kqzJn2GWLU1HdcPDdApX6U6Xyf0EssxQiXSi1xTeSHZkZTjGcMVWwNvm5pf8BghJCEzIpMvcZ/e0YkOpbpTVIv5vLeph8km/SmWT6K9sgf0ICPHnr5VT34BcQx3fDz6KZXSTSbIiytPaQyI6/MiY247MRvafPifw8ncJ6/2c9iQSmOd54sdagQtoAB0PgCG5q2NYIbYToVkhXsoOWJAhKVyTsY1/cI7FARxR8kXfPnJS7RIN2M4zwHPqMH/rXQ== X-MS-Exchange-AntiSpam-MessageData: YPxc2WIjkJ21U6A53MDBkhTlDEU6YkpX5OVi5ED9hnHtdF4M3DqbdEVX3It1Y9mKjWHu4gb2sd7kIk1Ka4lTv9pRbiE+7BVJ7BPhgX5402uZ0tkDvdbcm/LTh3Ux/8tl1SEsqJJ6KSsPySGj5y25aA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f83af4ea-9e48-43a7-a4e4-08d90413f259 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2021 15:49:56.8435 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: DB5EUR03FT014.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5EUR03HT027 Subject: [FFmpeg-devel] [PATCH v2 75/90] avformat/avformat, utils: Make av_find_best_stream const-correct 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: 3Tfb0sXhBUV3 Signed-off-by: Andreas Rheinhardt --- Now also updating doc/examples. doc/APIchanges | 4 ++++ doc/examples/extract_mvs.c | 2 +- doc/examples/filtering_audio.c | 2 +- doc/examples/filtering_video.c | 2 +- doc/examples/hw_decode.c | 2 +- doc/examples/vaapi_transcode.c | 2 +- libavformat/avformat.h | 2 +- libavformat/utils.c | 4 ++-- 8 files changed, 12 insertions(+), 8 deletions(-) diff --git a/doc/APIchanges b/doc/APIchanges index a823a4419c..d19b817660 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -17,6 +17,10 @@ API changes, most recent first: 2021-04-17 - xxxxxxxxxx - lavu 56.73.100 - frame.h detection_bbox.h Add AV_FRAME_DATA_DETECTION_BBOXES +2021-04-14 - xxxxxxxxxx - lavf yyyyyyyyy - avformat.h + av_find_best_stream now uses a const AVCodec ** parameter + for the returned decoder. + 2021-04-14 - xxxxxxxxxx - lavc yyyyyyyyy - codec.h avcodec_find_encoder_by_name(), avcodec_find_encoder(), avcodec_find_decoder_by_name() and avcodec_find_decoder() diff --git a/doc/examples/extract_mvs.c b/doc/examples/extract_mvs.c index de31ccd2b9..42e1844150 100644 --- a/doc/examples/extract_mvs.c +++ b/doc/examples/extract_mvs.c @@ -78,7 +78,7 @@ static int open_codec_context(AVFormatContext *fmt_ctx, enum AVMediaType type) int ret; AVStream *st; AVCodecContext *dec_ctx = NULL; - AVCodec *dec = NULL; + const AVCodec *dec = NULL; AVDictionary *opts = NULL; ret = av_find_best_stream(fmt_ctx, type, -1, -1, &dec, 0); diff --git a/doc/examples/filtering_audio.c b/doc/examples/filtering_audio.c index 834b137cd9..508c19c60b 100644 --- a/doc/examples/filtering_audio.c +++ b/doc/examples/filtering_audio.c @@ -48,8 +48,8 @@ static int audio_stream_index = -1; static int open_input_file(const char *filename) { + const AVCodec *dec; int ret; - AVCodec *dec; if ((ret = avformat_open_input(&fmt_ctx, filename, NULL, NULL)) < 0) { av_log(NULL, AV_LOG_ERROR, "Cannot open input file\n"); diff --git a/doc/examples/filtering_video.c b/doc/examples/filtering_video.c index 105a200d93..88394530ab 100644 --- a/doc/examples/filtering_video.c +++ b/doc/examples/filtering_video.c @@ -53,8 +53,8 @@ static int64_t last_pts = AV_NOPTS_VALUE; static int open_input_file(const char *filename) { + const AVCodec *dec; int ret; - AVCodec *dec; if ((ret = avformat_open_input(&fmt_ctx, filename, NULL, NULL)) < 0) { av_log(NULL, AV_LOG_ERROR, "Cannot open input file\n"); diff --git a/doc/examples/hw_decode.c b/doc/examples/hw_decode.c index 71be6e6709..096a229c0d 100644 --- a/doc/examples/hw_decode.c +++ b/doc/examples/hw_decode.c @@ -152,7 +152,7 @@ int main(int argc, char *argv[]) int video_stream, ret; AVStream *video = NULL; AVCodecContext *decoder_ctx = NULL; - AVCodec *decoder = NULL; + const AVCodec *decoder = NULL; AVPacket packet; enum AVHWDeviceType type; int i; diff --git a/doc/examples/vaapi_transcode.c b/doc/examples/vaapi_transcode.c index e9b33eede0..a174bb643a 100644 --- a/doc/examples/vaapi_transcode.c +++ b/doc/examples/vaapi_transcode.c @@ -62,7 +62,7 @@ static enum AVPixelFormat get_vaapi_format(AVCodecContext *ctx, static int open_input_file(const char *filename) { int ret; - AVCodec *decoder = NULL; + const AVCodec *decoder = NULL; AVStream *video = NULL; if ((ret = avformat_open_input(&ifmt_ctx, filename, NULL, NULL)) < 0) { diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 23bdaa207b..28069d45dc 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -2070,7 +2070,7 @@ int av_find_best_stream(AVFormatContext *ic, enum AVMediaType type, int wanted_stream_nb, int related_stream, - AVCodec **decoder_ret, + const AVCodec **decoder_ret, int flags); /** diff --git a/libavformat/utils.c b/libavformat/utils.c index 7078891dc0..2f66f539a6 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -4200,7 +4200,7 @@ AVProgram *av_find_program_from_stream(AVFormatContext *ic, AVProgram *last, int int av_find_best_stream(AVFormatContext *ic, enum AVMediaType type, int wanted_stream_nb, int related_stream, - AVCodec **decoder_ret, int flags) + const AVCodec **decoder_ret, int flags) { int i, nb_streams = ic->nb_streams; int ret = AVERROR_STREAM_NOT_FOUND; @@ -4260,7 +4260,7 @@ int av_find_best_stream(AVFormatContext *ic, enum AVMediaType type, } } if (decoder_ret) - *decoder_ret = (AVCodec*)best_decoder; + *decoder_ret = best_decoder; return ret; }