@@ -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
@@ -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
@@ -21,7 +21,7 @@
#include "bsf.h"
#include "bsf_internal.h"
-#include "mpeg4video.h"
+#include "mpeg4videodefs.h"
#include "startcode.h"
typedef struct UnpackBFramesBSFContext {
@@ -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);
@@ -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"
@@ -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"
new file mode 100644
@@ -0,0 +1,68 @@
+/*
+ * MPEG-4 definitions.
+ * Copyright (c) 2000,2001 Fabrice Bellard
+ * Copyright (c) 2002-2010 Michael Niedermayer <michaelni@gmx.at>
+ *
+ * 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 */
@@ -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"
@@ -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"
This avoids including mpegvideo.h in mpeg4_unpack_bframes_bsf.c. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> --- 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