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 ECF2643C87 for ; Sun, 28 Aug 2022 21:19:05 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CAF1C68B985; Mon, 29 Aug 2022 00:19:01 +0300 (EEST) Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05olkn2068.outbound.protection.outlook.com [40.92.90.68]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AF96968B603 for ; Mon, 29 Aug 2022 00:18:55 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aoSOYcCmmIXRnXmtsg9p6Upwy5gpQXC5IuePMj55NYd7fngaA3qzkqrKCMQ67N1kqbWwgyG0eJ6DI8i92bV52pMY7IUhTkJ+uxHHP9K1RmdI2ll9VT0R5G3eh24QgLgSFwe8UODQfoD78f/yiGh3qnf21mHPnt+iV4T+OAI1AIULnMBXJRslz99ip55+hIIBvJtVtXs73AOTNo2Nt264u0z6+E0zCqTIYC/a1c+eADkRFoLLOqAlxBQn9BHy0wS0zQsW/e55zenHpxue2wtAuYTdprPxC5gQpj3G6K45k44A+Tjjcn0Gce0To6WYJd0vgeCPW8efLkf+LgNMU/5kVQ== 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=UQqFbLa1aVAblRTqWUvvrICe6vYBeiTu4i7yOosRP28=; b=Tb/CvMsFTeoSrU6j3BAyrzEWil0AsZNEAmpHLK482VMCsqzm/sOdm3SDjrGd0Fq5Mys7cSVDcGMtXuNAnfjKf3b3thYdzQJBoYfy7gMVlAyexL5eL7PumJRm9tsmHAQWZIdXb2cvonQZzxXnSRm2f9ePrgcDt7CTpuCdMMYsSMVfJbUjVdAyHPhRov2udh5qXh9WFcZUdMMYcsmndeZzkGkZPLQieqyf5bTf/cUayQLjX/FXKleGbWxSRaQ2U5lqHRcEbmYoi8+bd/MrkeRY6xK0mYlrvDldvNCQfxr2/vT7lbljQ3va3r38oC0aw/JSvC7o8XsoBep6ENieq3ibzA== 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=UQqFbLa1aVAblRTqWUvvrICe6vYBeiTu4i7yOosRP28=; b=q0e/apShRhCsz5iQK0Vu7E+yGsEH8o4Yvxl3nonhB+pU0YNayEmO5ZhrKEcq3+TOxioPOMmzeelTBz/yv/viW82Irl7Wo5vugJl+G7M8O60GSo758cwyBsc1vPKCbWeHcRVSSlOKY2rAHtTaXoN2Gji3GcMWTZy0KzspEV/TfByU4EulYRJI8a7vMOby918bqNf6CDcGhsXHVTzeCMSg0pibUKXwteqWrmT5//0r8Wqn6cg1pIfkUW6ZU7FqHwclep6BCx1iLtBf13MQTgjTeiS5JCwANGNFBFbGmT53/ilss1VlL1LIn6eJgzZAZY8xcHAMRZkE3utXULPYL7NUGw== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5566.15; Sun, 28 Aug 2022 21:18:54 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::7d2a:d9d8:f384:4cee]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::7d2a:d9d8:f384:4cee%9]) with mapi id 15.20.5566.021; Sun, 28 Aug 2022 21:18:53 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 28 Aug 2022 23:18:35 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 X-TMN: [gJZwSqD03cTLY21R60Q0voby4iHhplCh] X-ClientProxiedBy: AM6P192CA0030.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:83::43) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <20220828211845.472220-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 84a4065d-e7ec-487b-fff8-08da893ae8ce X-MS-Exchange-SLBlob-MailProps: AZnQBsB9XmrlP0uwnDwxs8RZ0OmP5JOde+uebh6+aXPpX86nV7GdStilC6dKf7vnnHhwrwRTBdy5gLffBF/0QOSI1FHSbDDOgLauUJyWJ499AZWsIIoupRsZYFy3bLBfpezHBq5RSPcCl61x1DFNTMS0lrepjsqd2fsOjLfEZ2GC/ScFdOUOIezpYqRCq4wAwx7lJtsLIIHfL+t1+yCpUgmagTbdOZXiUbPnsJTD4GoKVr8GQ8z5ny5Tjf3fDs4V0VIvzeRXyvNcQGahNtvWXfnex2LGdT28lOvs6q2By7cGX7/zy/+rXR5YdhlCj4ft3hJWVq6+mey2whqdInr3SZAEPv/AEjGvt74L8LBWZ1Lx0YJ//evuFy50OwGk6NarE0gcixjixmNByx7cTNfdWEqfw+oHu5gAZ8i5949v6Mnu7sHzwU6RKweO1I3mrAnwg3WajsNqeShus2gMPOpGwD2DMa/ae5+jGJvQutfFCGT8yxGpvLFDadcxGxpMYObmreosPZ25gLyZSZ8wUcrKqobYyevMDdOyNQN2Dglm76YzA1j/w1W+afrdw2VzhgW520lrC60kiG0U6lbcZVXTAizDvhDLGKMhQdGIrMcq4Vo9/q1yTzKhlrXAxhofmZAV7Tz5a5z2GJFPoA3J970jO0FttiINSHcg215f+e7FXKVRzi5kuETvdLOD7AQjs1PVeRw4nvM/2EjirLFu8PNxBhPzN8HN/bmFIabC2Z9FbteJjFQUsxBSku+MAk7sfrOjnccrCP3DS+Q= X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6ezXbl1g1KX0Jypp3rKw8jT5OKXe6F0DpxOnAkXH+ixysKtHjfuKuiHhZPr6Hm32yF7e14vJzoAJVQvCrzjVRBqGOXubzGFJcBFtywJgNptmT67CaNeV3PEYOukTUlxg3b3bTBfsgog9MLFU1QBec8Ff72FjLri27ZiuUkpveHZGhs8uU9+ZfacsrIXeDT6ZmnfbJGqUhftj5dX8svefL2OQ8P1mU8C7NFAx4+WBvf1DFCJmTRQpwGWn0EsK8d8kqPWfj0z4LRFLIMk6q84BEKytwTG5U6igm/27qHPRmQBCxzhLGpiCEz6tFfnAMhajoiSGAsBEQS6xF/amP9i5ZOtpL/egygtk3utl8Ks47C/dg2k+eoT4OmXuM7ruBFUklBUSO+/hQHVbLaQy4bsBIgOmWf7lFwJfinkuIW4qEAcFZyrJdreL6JV/4CGZ4ZG7I3PNIRCSoKjzGR9Z8a1GcTSLZggKpjimhJUmwuIPKn8N1XBAo9t/qCYNNz+Ao901f0RbkjClr/uboBZ/nPXgYol2Atg/EvY1bOKhjAXWvM9GQ+Ytz18dlTWVVIUIqtrgYIgI0hLGxyNFvLiHAoCyb/tMRSVjHnJCikmmEk1mj7A+VdLDSU+EnUKNMw2Cfg/eliQQAHHyBDKKGzS3BjKRCw== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?qj13NVLtlJmY0OSmhcvy08M4AUPhrctb7kMO+OaCgPq39sSUi1BSoeQ+NXci?= =?us-ascii?Q?jbN50TgqVYFQtfb9vwjfs+lMAgn+j+//Kg51K+shakNMhDGVcGcXyPGIUuSA?= =?us-ascii?Q?AcYgdmEL7pJHJJN0/cils71jTFl8JcnejRx9Lz5z944UiSdoL+WsYos97INk?= =?us-ascii?Q?Gi3Le8MgsTYSp23hiwnAHnlPSWwcSsQFJF8kcZlmtoY2Cgeq6pJQwsWdqZhK?= =?us-ascii?Q?vYptDyGdflaPLXZASMWzeXr2X7CIfyYbWp6CuP18UpLMJ0iDfPinBmKcPkdO?= =?us-ascii?Q?Whqp7q5qHqsegqGXAt1mSEovrtoFC46LVCwY3EDpWv3YxC/BnFtwjvOEMDKa?= =?us-ascii?Q?3GB9fcaeb3m5uGXu4l2FJl+cvoWlqIYBbQ5e47h/OAvYSAQYa3cTkOYzErLY?= =?us-ascii?Q?SYTULCXbKQcG/2xXXoC/+GrxYfjDxXeJ2ffdpNeC8Sik/DC2J2lwuG/3hwgC?= =?us-ascii?Q?lc1xiGuxGWWSy1MNrrye+5+U7hQw16Pb3/SKNHg9wUw3tVVkl4MZ/sT7jIej?= =?us-ascii?Q?At76rMDr06juFj4w9j2V5CAe+mCewMbmZoQ7hlSd9GvUmbUISKASK0MLZb01?= =?us-ascii?Q?BbH5udZGe+A7Z9bYIsFEsi5agz/o5E3Y1l1Lat4bQNOv/RXSsXHvDiOr1wSw?= =?us-ascii?Q?SpuVyUa+2hZ+fOgR8SbcQpB0AiZmYHGESt/qISE1pqOJBemURxlNJ5FAi66X?= =?us-ascii?Q?eltmIZiI15XfsW1n84dsA3/ACaqf1lnQbZwf8YxnWtF0GZcijv50szfdAme7?= =?us-ascii?Q?DwVVLgu1MVEfgdRbcg1KXKjvqH2bWeh8Y/7VPxpHptSK5t5ongru470RAUJ3?= =?us-ascii?Q?+m3HnhzajpIX8m5EouYP6xbJBkkuJ4I87HrYcPFYbSrQiDsYZlgS7MYhzx3J?= =?us-ascii?Q?6Lm6/M5WFv8XbBneXj0m3qWKDqHGbQBjfJBrBa9202hgNUTxHKbxhaf3gy0k?= =?us-ascii?Q?nEycVmDPywknEdUYrlWA8e1cwntmIkbwPcgShr+4gTJhzqM98xHWPx0TEWwy?= =?us-ascii?Q?WqeYYUws6ww+n/eA60rnD2ebUlkIohG+ucBQY4/yzl8x/vzcaqD7n7v9192g?= =?us-ascii?Q?6Q1lLkjb3g3Vrh5bXqU2Uq5vqmyNGXIVaRPliFT8nsKsaSqtTyB1A27fvmVy?= =?us-ascii?Q?bFiNd073VeT9ynZ2I0qcRmqcYpfL/dGtIWlsKeCT0S9mDFHEhYVNRzFu99T1?= =?us-ascii?Q?vnujbHC4E44YzO1V1/rBN3etEJ89IngKUuYWun43pI3JQ7YyldWemML4Mtez?= =?us-ascii?Q?/Fl0iG11h4pyYF2vpfNpHKVhJrYsCy2vb3Np+shcjvQcDLQsvNBjWyHx2d/4?= =?us-ascii?Q?kB4=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 84a4065d-e7ec-487b-fff8-08da893ae8ce X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2022 21:18:53.6003 (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: DU0P250MB0747 Subject: [FFmpeg-devel] [PATCH 01/11] avcodec/mpeg4video: Factor non-codec stuff out into a header of its own 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: This avoids including mpegvideo.h in mpeg4_unpack_bframes_bsf.c. Signed-off-by: Andreas Rheinhardt --- libavcodec/h263dec.c | 1 + libavcodec/ituh263dec.c | 1 + libavcodec/mpeg4_unpack_bframes_bsf.c | 2 +- libavcodec/mpeg4video.h | 42 ----------------- libavcodec/mpeg4video_parser.c | 2 +- libavcodec/mpeg4videodec.c | 1 + libavcodec/mpeg4videodefs.h | 68 +++++++++++++++++++++++++++ libavcodec/mpeg4videoenc.c | 1 + libavcodec/nvdec_mpeg4.c | 2 +- 9 files changed, 75 insertions(+), 45 deletions(-) create mode 100644 libavcodec/mpeg4videodefs.h diff --git a/libavcodec/h263dec.c b/libavcodec/h263dec.c index 8b4101272a..a08329a121 100644 --- a/libavcodec/h263dec.c +++ b/libavcodec/h263dec.c @@ -43,6 +43,7 @@ #include "mpeg_er.h" #include "mpeg4video.h" #include "mpeg4videodec.h" +#include "mpeg4videodefs.h" #if FF_API_FLAG_TRUNCATED #include "mpeg4video_parser.h" #endif diff --git a/libavcodec/ituh263dec.c b/libavcodec/ituh263dec.c index af054360d8..200de8527e 100644 --- a/libavcodec/ituh263dec.c +++ b/libavcodec/ituh263dec.c @@ -50,6 +50,7 @@ #include "mpegvideodata.h" #include "mpegvideodec.h" #include "mpeg4videodec.h" +#include "mpeg4videodefs.h" // The defines below define the number of bits that are read at once for // reading vlc values. Changing these may improve speed and data cache needs diff --git a/libavcodec/mpeg4_unpack_bframes_bsf.c b/libavcodec/mpeg4_unpack_bframes_bsf.c index 5493dafa97..3a3aad795f 100644 --- a/libavcodec/mpeg4_unpack_bframes_bsf.c +++ b/libavcodec/mpeg4_unpack_bframes_bsf.c @@ -21,7 +21,7 @@ #include "bsf.h" #include "bsf_internal.h" -#include "mpeg4video.h" +#include "mpeg4videodefs.h" #include "startcode.h" typedef struct UnpackBFramesBSFContext { diff --git a/libavcodec/mpeg4video.h b/libavcodec/mpeg4video.h index ab65280756..29b11eb92e 100644 --- a/libavcodec/mpeg4video.h +++ b/libavcodec/mpeg4video.h @@ -27,48 +27,6 @@ #include "mpegvideo.h" -// shapes -#define RECT_SHAPE 0 -#define BIN_SHAPE 1 -#define BIN_ONLY_SHAPE 2 -#define GRAY_SHAPE 3 - -#define SIMPLE_VO_TYPE 1 -#define CORE_VO_TYPE 3 -#define MAIN_VO_TYPE 4 -#define NBIT_VO_TYPE 5 -#define ARTS_VO_TYPE 10 -#define ACE_VO_TYPE 12 -#define SIMPLE_STUDIO_VO_TYPE 14 -#define CORE_STUDIO_VO_TYPE 15 -#define ADV_SIMPLE_VO_TYPE 17 - -#define VOT_VIDEO_ID 1 -#define VOT_STILL_TEXTURE_ID 2 - -// aspect_ratio_info -#define EXTENDED_PAR 15 - -//vol_sprite_usage / sprite_enable -#define STATIC_SPRITE 1 -#define GMC_SPRITE 2 - -#define MOTION_MARKER 0x1F001 -#define DC_MARKER 0x6B001 - -#define VOS_STARTCODE 0x1B0 -#define USER_DATA_STARTCODE 0x1B2 -#define GOP_STARTCODE 0x1B3 -#define VISUAL_OBJ_STARTCODE 0x1B5 -#define VOP_STARTCODE 0x1B6 -#define SLICE_STARTCODE 0x1B7 -#define EXT_STARTCODE 0x1B8 - -#define QUANT_MATRIX_EXT_ID 0x3 - -/* smaller packets likely don't contain a real frame */ -#define MAX_NVOP_SIZE 19 - void ff_mpeg4_clean_buffers(MpegEncContext *s); int ff_mpeg4_get_video_packet_prefix_length(MpegEncContext *s); void ff_mpeg4_init_direct_mv(MpegEncContext *s); diff --git a/libavcodec/mpeg4video_parser.c b/libavcodec/mpeg4video_parser.c index bbdb2209cf..e32a93d296 100644 --- a/libavcodec/mpeg4video_parser.c +++ b/libavcodec/mpeg4video_parser.c @@ -25,8 +25,8 @@ #include "decode.h" #include "parser.h" #include "mpegvideo.h" -#include "mpeg4video.h" #include "mpeg4videodec.h" +#include "mpeg4videodefs.h" #if FF_API_FLAG_TRUNCATED /* Nuke this header when removing FF_API_FLAG_TRUNCATED */ #include "mpeg4video_parser.h" diff --git a/libavcodec/mpeg4videodec.c b/libavcodec/mpeg4videodec.c index d89adf8d63..65f3c89c47 100644 --- a/libavcodec/mpeg4videodec.c +++ b/libavcodec/mpeg4videodec.c @@ -38,6 +38,7 @@ #include "mpeg4video.h" #include "mpeg4videodata.h" #include "mpeg4videodec.h" +#include "mpeg4videodefs.h" #include "h263.h" #include "h263data.h" #include "h263dec.h" diff --git a/libavcodec/mpeg4videodefs.h b/libavcodec/mpeg4videodefs.h new file mode 100644 index 0000000000..27155eae5c --- /dev/null +++ b/libavcodec/mpeg4videodefs.h @@ -0,0 +1,68 @@ +/* + * MPEG-4 definitions. + * Copyright (c) 2000,2001 Fabrice Bellard + * Copyright (c) 2002-2010 Michael Niedermayer + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef AVCODEC_MPEG4VIDEODEFS_H +#define AVCODEC_MPEG4VIDEODEFS_H + +// shapes +#define RECT_SHAPE 0 +#define BIN_SHAPE 1 +#define BIN_ONLY_SHAPE 2 +#define GRAY_SHAPE 3 + +#define SIMPLE_VO_TYPE 1 +#define CORE_VO_TYPE 3 +#define MAIN_VO_TYPE 4 +#define NBIT_VO_TYPE 5 +#define ARTS_VO_TYPE 10 +#define ACE_VO_TYPE 12 +#define SIMPLE_STUDIO_VO_TYPE 14 +#define CORE_STUDIO_VO_TYPE 15 +#define ADV_SIMPLE_VO_TYPE 17 + +#define VOT_VIDEO_ID 1 +#define VOT_STILL_TEXTURE_ID 2 + +// aspect_ratio_info +#define EXTENDED_PAR 15 + +//vol_sprite_usage / sprite_enable +#define STATIC_SPRITE 1 +#define GMC_SPRITE 2 + +#define MOTION_MARKER 0x1F001 +#define DC_MARKER 0x6B001 + +#define VOS_STARTCODE 0x1B0 +#define USER_DATA_STARTCODE 0x1B2 +#define GOP_STARTCODE 0x1B3 +#define VISUAL_OBJ_STARTCODE 0x1B5 +#define VOP_STARTCODE 0x1B6 +#define SLICE_STARTCODE 0x1B7 +#define EXT_STARTCODE 0x1B8 + +#define QUANT_MATRIX_EXT_ID 0x3 + +/* smaller packets likely don't contain a real frame */ +#define MAX_NVOP_SIZE 19 + +#endif /* AVCODEC_MPEG4VIDEODEFS_H */ diff --git a/libavcodec/mpeg4videoenc.c b/libavcodec/mpeg4videoenc.c index 339a3c2152..96c48b2eb2 100644 --- a/libavcodec/mpeg4videoenc.c +++ b/libavcodec/mpeg4videoenc.c @@ -31,6 +31,7 @@ #include "h263enc.h" #include "mpeg4video.h" #include "mpeg4videodata.h" +#include "mpeg4videodefs.h" #include "mpeg4videoenc.h" #include "mpegvideoenc.h" #include "profiles.h" diff --git a/libavcodec/nvdec_mpeg4.c b/libavcodec/nvdec_mpeg4.c index b7e1821754..eac138cc38 100644 --- a/libavcodec/nvdec_mpeg4.c +++ b/libavcodec/nvdec_mpeg4.c @@ -22,8 +22,8 @@ #include "avcodec.h" #include "internal.h" -#include "mpeg4video.h" #include "mpeg4videodec.h" +#include "mpeg4videodefs.h" #include "nvdec.h" #include "decode.h" -- 2.34.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".