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 86DD742E3C for ; Mon, 9 May 2022 21:19:17 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 584F768B1FB; Tue, 10 May 2022 00:19:14 +0300 (EEST) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075032.outbound.protection.outlook.com [40.92.75.32]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BF44668B02F for ; Tue, 10 May 2022 00:19:07 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YIYaNTgt2ByL8uBtkGh32hXZajamQEUb8T7m/sdUzqyIYtwaxMyzOaIqXztqPVkSneGbBsVcQew3MKApW2PPUI+suRdPE8pXbY1Aw2MbtydXAqRNzOOatAhixjDZ1acPxHfxgQ42SugAmH7NNZqLlfJtYl4txoy3Txsr2zrtNIldbky6o3UdT/rRF695JqHEJoV1DLu9tiQQ61LcNbT0n4GzslPDdRgt9iPHisF0IRiJ4nWf4lZimvO3/U9KvJZ+EVUpqrRH55FmlHVXapd8TKiF8VBMdM0y7xJeTlOKtAwHKhCqTibVzIH8O6Pgp24CbCWRiCErEcXhwjdJz98yCw== 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=usFE7niNw5GA8bYifdn3kKNI2XeQZ1mQV72ffJmv6cw=; b=Ha4eUf9ZYP6uHgWN8/3zOJhXjkSJYCRY2l748OsKx2vESmZgRoeC3QuKTpnKt4CV9SXamRB559oggLs0xsImaey/XpYvDHQxlR93sttKgsM76JzpfAJ0ZUrQTXCro5VXsb5QeAHaQOT7Dc/ZX2F8T0LwX3jKJk5X6AhBDqVLC+ygpqIK0EOvlMzAaVYG2BVO+NFZ9bOTdm2s5TkQTu2kKQqz84d8ZspUCetMQwbpjVM986tIIHoEgEp99Br+MIxUyZkzUh+A/VsADu0snzrz1/24/ZVaapf6EKDOIx74xS+Rrsy2yz1JCZHlRlVd0F9h5pL9lZe8tAtfP4pSZVg4ww== 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=usFE7niNw5GA8bYifdn3kKNI2XeQZ1mQV72ffJmv6cw=; b=qarUcpwrfAhYv2j9LnFZp5nLXX7F7BFX2JRwmGnI7YpanxKLCwflHJoXwmlQhWbM+sWgL0DbIhBIgl0xygaMcCv6YC63WfLsnZhVb9J4V9jYEkI0Wbcl7yY52qPZm1Fi2/OtM1/KaDi4QRvsWa05szK4vxn0/ADQ29fwTDokfPP1BlUHkdw6FElmbtY7M9Z5vEol1n7Z9zrPsfk/+Gi7QJVzYyY5aJ/4C3E0o+wt29gEUmqE/sIOFuQvpjwRPBngwyqMC6XwU7090AJEBb9hJSB9d9OFJLWnfpGK+iEB2q5nfM4KDWSGOgbrsrdjKiDgUhKBBZUbnNaudFNj2p4k3A== Received: from DB6PR0101MB2214.eurprd01.prod.exchangelabs.com (2603:10a6:4:42::27) by AM5PR01MB2963.eurprd01.prod.exchangelabs.com (2603:10a6:206:9::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5227.21; Mon, 9 May 2022 21:19:04 +0000 Received: from DB6PR0101MB2214.eurprd01.prod.exchangelabs.com ([fe80::60b9:9f29:40cc:f01c]) by DB6PR0101MB2214.eurprd01.prod.exchangelabs.com ([fe80::60b9:9f29:40cc:f01c%9]) with mapi id 15.20.5227.022; Mon, 9 May 2022 21:19:04 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 9 May 2022 23:18:55 +0200 Message-ID: X-Mailer: git-send-email 2.32.0 X-TMN: [jqGqVwJCv5cILFmGSklAFYQvq6qcHZZW] X-ClientProxiedBy: ZR0P278CA0162.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:41::13) To DB6PR0101MB2214.eurprd01.prod.exchangelabs.com (2603:10a6:4:42::27) X-Microsoft-Original-Message-ID: <20220509211855.177084-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: bcd22526-b17b-414a-4bb4-08da32018ae6 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU5slNsrisMN7qM2L2rmbut1SGRD7lfp3nfy2n3IgpeGie5gPtnzZdFP5c6ycB8Gm38qDfTMj6FbfWL62+WQd+lXXgKux7lUZ/5hnBOI+jeGW44h1v3mJV8dl9AmlXjwce6R9SN8o+uY/YfXEoUr0vQ/KtE0dC5yG4bJ1sylP7O1whwpp3Jkp9N0k38DiBEzqA/Jv1yLr9c0e12VnsQueg9QZY3x22u+EvVCLgCBQroS9eo7SSCHiyTcwH/rrnm0muWR8u0BIdghTLzcYANAQfq4oN6pq+z8qfKdY4pXlMcXUAraR4qxge2zya4K428rLAHio51ajVKIOkuiHVzIZKltpjoL2eHzd5Jd4ogHdfQS2SKYDvs6D04Ldc5QBgCN7JhsyzByOTZgjYuwZHHYH/VF67hUkeu/VsslL33s4SUmt499taic96nmHGkKnAUD4hFw+/dTovxfJiP4yQTbbATQAZpOICjhvUd/LXRvCAQg/ELeGhPTba4Bx3BifqeVfggq6qEZuPyzanYChdg4pD+jWJHkIHDC5sbl3DAEK+5VXz0S3XfBPJ65WjXvBXSft4hcRvzbuH1G9jSEvc9hoK2wKozA/O91oH2vH4lSe+2onVMcvd7U7rDXshtotpu7oq47reoS2dttXzuzOZPofycicyYgJR1M64p/1ImcbtYvrZij+lJF8PE6y1V1TndWkZvMwk6xo4i1yqNQq4K1moo7mEoH8WmK/I= X-MS-TrafficTypeDiagnostic: AM5PR01MB2963:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0fH9PlrFtrxZ/eOgbVgZrTNcfkCdMv97FK42AWzSiRkdR7HoKOMlZQjBHi9MC+F/1yAcQkSzu1Ggz0l2SGYNO+7hflfoU94HkzXRIBmYt6zkhQcml8wTmMm2TiVIovhtmOTG43EZINhp3ttLwKfgpOF67LN2IKwJW442P23cai9dxz20qUh1lJJfWAgLuCp/zjv26j8yh0JKYzB2orUOO4b4gZV7i72CJp3nP/etRG+d+DpKD7t13GMGqVb1mz4fH3wutrSNj6mCPfg1tT4OwkcBdWuw/lYk76out3fZBkpPy+heCOlOGAvL3IBh0IASKnbPoOCXIFueME/W5b4ypgaJt6vJN4JrGXItFa3ZDtih0erOhwm06G3+EjZ4S1kjEXY8BZ+It8qW9biowhtfsEE/lKiNhC28fEKfqJnTbZW5bdej1NcSG61Hrad5ej4t1cDEvPO3q/vRLEM+EMSTTm46DE7O0GOOd8wLYPCkRi19d5WFJ5YJgDxHRXqSMltPFY3gW7L0MZ/D6VhgXRNXrEkguKJCh2qiAgllTVNkg+apLNeIGt9uYIzlWCtvZ6L/qIFqY0lAVa3YJnpPB63ib7gorooIYvbp+q/nsFiMzqtd5JYu3ULkGuQSQntefa8dGXUqu2aKzTFBSJUw2OIHJA== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?jodsBfB93TV8iV+C+IhkVo22szhT9QDMV5/ABB6XkiLu/gOKjZNWNTUU4UZ4?= =?us-ascii?Q?rzbpF2P0yFARb0guOwBKctpMcyInOOdFe70gV0GyY68X7j4aYBkivr52RFF2?= =?us-ascii?Q?L6HAV/Yuir+FrHGddN82J772kf2X0l35MOZrN5hM8X5tBiPrBVzI+hFHZ5yk?= =?us-ascii?Q?E1txGqV7tHbwqPy1xcbwGVpoT3VqHeS6+sjwZVecR4Nq90DyvhVA9l387Tes?= =?us-ascii?Q?wxgpE8kzp8vKQKaizWaeHJPHFcCNslGh0MvoAK0g5C38WXSqWgutXSaDFoKo?= =?us-ascii?Q?gS0AFbAGh03dP8gG2k/l8r4O+uYUMPDQSAAFhuIhyml0t2g3HDZz+5Fj68MQ?= =?us-ascii?Q?titafzPjvY8cnj3iKqpyMyNgJQZEZFJGntUO+/adkXLmToVznnprApovtRH7?= =?us-ascii?Q?ZGRUI8fpVG09kePTsxjo08GGUy8UUEXYaBBel/eA+dtXGwbubAV6ATzryEeO?= =?us-ascii?Q?rMM69k6ygW1+zffphwQEQhhIy8GAa9RCHQXPt+k0ceYNBKls6KZXNoDNbVvX?= =?us-ascii?Q?CdqJYCA8I+N+BDU+V+XXTswaFU8LLXa0/zwSceeIosf2JIb4E2duhwA+fx0t?= =?us-ascii?Q?puIEp3t8g+K9qqbIqEhaX6wEfBsDM3W+4rt9GHfGQKCXI89hZvarl45bB734?= =?us-ascii?Q?lPe7umBjWYqo9aRjZKe9o+n1B/O7LQifyUTvs2OjHlRiQkkCOVB/s5HHgCXK?= =?us-ascii?Q?0mjIpNFy+YDYPqgkNhwFz5dHpEgZ1L9SLGFuP0SN7hdp/VzZ6qYIzTG8ifz+?= =?us-ascii?Q?nNWwqnmnB/oyrOst6S4Pv7BOoLMv4thLa35F/nciDmZmXkWdrGJ0cQL0Hs4h?= =?us-ascii?Q?UlihBlq+6tRsHVywtfwhd1oP9B7SSQXgso9f3e/Zx0qIy1WFltF5FycYHOr6?= =?us-ascii?Q?hHNNfB12gM/geR5lU+wTQGXL5Ip/uJ7yqTs+/1neh7/sgZ8jhlW/rSO27LKy?= =?us-ascii?Q?u06V2UNp81v0bzU6pqAqSPbJgE9MBTDYU/ZeyIcn9kpu5gdv27HXP9rQ9Ozk?= =?us-ascii?Q?FHzYMxmrlhl338PigU23Oi/qpwz6UX/pf+nKTX0P/FVO5Omhx8Dt4oB4Zbhd?= =?us-ascii?Q?QO/i2W7LPzV/ohxSwebxcFk+4bc6SAfq9PS0ccw96LBN6w7aFS8cSndaU3dE?= =?us-ascii?Q?nf236A4hOeF+LJ+u+kT4UmLxYDWPj922ZrXtDfdbArX6h5k5M/Ph4ayjFCQ9?= =?us-ascii?Q?Iq/3Ytvm5TvUJMOdegmudhrhFm/6tQ+Z6YnAiVPOCZwYDtiFCUBm1bm2Bk5Q?= =?us-ascii?Q?mXT18Pm0JnOHNqus2GjR8wlc842zUatweKzrcGboJBUVEIS+iwZf4fo4hV+6?= =?us-ascii?Q?62cUzUQnQDAYqGx06grmbaPAGbgiIVk6qjynpFXmZbbhFfEWWoVArezLssJA?= =?us-ascii?Q?jY4FnZxxtgLK+kJR0Wtu/usXKN+zrcc4QBNGCsECEXH9ApLV+tR7VQtH/OFt?= =?us-ascii?Q?AlbPWQv2e73L74vAht6g0/CvXNz1i6hk7OunGIWwOMddL/RRHqckHA=3D=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bcd22526-b17b-414a-4bb4-08da32018ae6 X-MS-Exchange-CrossTenant-AuthSource: DB6PR0101MB2214.eurprd01.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 May 2022 21:19:03.9925 (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: AM5PR01MB2963 Subject: [FFmpeg-devel] [PATCH] avcodec/internal: Hide stuff only used by the core decode API 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 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: The general decoding API uses bitstream filters and an AVFifo and therefore AVCodecInternal contains pointers to an AVBSFContext and to an AVFifo and lavc/internal.h includes lavc/bsf.h and lavu/fifo.h. Yet actually, only two files are supposed to use these, namely avcodec.c and (mainly) decode.c. For all the other files, it should be an opaque type that they should not touch and that they need not know anything about. This can be achieved by not including these headers and using the structs instead of the corresponding typedefs. This also forces translation units that really use the BSF and the FIFO APIs themselves to include the relevant headers directly instead of relying on indirect inclusions (up until now, even avcodec.c and decode.c relied on fifo.h to be included by internal.h). Of course, it also avoids unnecessary rebuilds when bsf.h or fifo.h change. Signed-off-by: Andreas Rheinhardt --- libavcodec/avcodec.c | 1 + libavcodec/cuviddec.c | 1 + libavcodec/decode.c | 1 + libavcodec/internal.h | 6 ++---- libavcodec/libvpxenc.c | 1 + 5 files changed, 6 insertions(+), 4 deletions(-) diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c index d11f035481..f4ce6b8459 100644 --- a/libavcodec/avcodec.c +++ b/libavcodec/avcodec.c @@ -28,6 +28,7 @@ #include "libavutil/avstring.h" #include "libavutil/bprint.h" #include "libavutil/channel_layout.h" +#include "libavutil/fifo.h" #include "libavutil/imgutils.h" #include "libavutil/mem.h" #include "libavutil/opt.h" diff --git a/libavcodec/cuviddec.c b/libavcodec/cuviddec.c index 81d4c89215..cb3cda7e24 100644 --- a/libavcodec/cuviddec.c +++ b/libavcodec/cuviddec.c @@ -34,6 +34,7 @@ #include "libavutil/pixdesc.h" #include "avcodec.h" +#include "bsf.h" #include "codec_internal.h" #include "decode.h" #include "hwconfig.h" diff --git a/libavcodec/decode.c b/libavcodec/decode.c index 69e68ab09d..209585c540 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -32,6 +32,7 @@ #include "libavutil/bprint.h" #include "libavutil/channel_layout.h" #include "libavutil/common.h" +#include "libavutil/fifo.h" #include "libavutil/frame.h" #include "libavutil/hwcontext.h" #include "libavutil/imgutils.h" diff --git a/libavcodec/internal.h b/libavcodec/internal.h index 2fa56d3a59..17e1de8127 100644 --- a/libavcodec/internal.h +++ b/libavcodec/internal.h @@ -28,11 +28,9 @@ #include "libavutil/buffer.h" #include "libavutil/channel_layout.h" -#include "libavutil/fifo.h" #include "libavutil/mathematics.h" #include "libavutil/pixfmt.h" #include "avcodec.h" -#include "bsf.h" #include "config.h" #define FF_SANE_NB_CHANNELS 512U @@ -73,14 +71,14 @@ typedef struct AVCodecInternal { * avcodec_flush_buffers(). */ AVPacket *in_pkt; - AVBSFContext *bsf; + struct AVBSFContext *bsf; /** * Properties (timestamps+side data) extracted from the last packet passed * for decoding. */ AVPacket *last_pkt_props; - AVFifo *pkt_props; + struct AVFifo *pkt_props; /** * temporary buffer used for encoders to store their bitstream diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c index e35b47b87e..187a9e9a36 100644 --- a/libavcodec/libvpxenc.c +++ b/libavcodec/libvpxenc.c @@ -42,6 +42,7 @@ #include "libavutil/base64.h" #include "libavutil/common.h" #include "libavutil/cpu.h" +#include "libavutil/fifo.h" #include "libavutil/internal.h" #include "libavutil/intreadwrite.h" #include "libavutil/mathematics.h" -- 2.32.0 _______________________________________________ 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".