lavc/aarch64: Fix addp overflow in ff_pred16x16_plane_neon_10
[ffmpeg.git] / libavformat / swf.h
1 /*
2 * Flash Compatible Streaming Format common header.
3 * Copyright (c) 2000 Fabrice Bellard
4 * Copyright (c) 2003 Tinic Uro
5 *
6 * This file is part of FFmpeg.
7 *
8 * FFmpeg is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
12 *
13 * FFmpeg is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with FFmpeg; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21 */
22
23 #ifndef AVFORMAT_SWF_H
24 #define AVFORMAT_SWF_H
25
26 #include "internal.h"
27
28 /* should have a generic way to indicate probable size */
29 #define DUMMY_FILE_SIZE (100 * 1024 * 1024)
30 #define DUMMY_DURATION 600 /* in seconds */
31
32 enum {
33 TAG_END = 0,
34 TAG_SHOWFRAME = 1,
35 TAG_DEFINESHAPE = 2,
36 TAG_FREECHARACTER = 3,
37 TAG_PLACEOBJECT = 4,
38 TAG_REMOVEOBJECT = 5,
39 TAG_DEFINEBITS = 6,
40 TAG_DEFINEBUTTON = 7,
41 TAG_JPEGTABLES = 8,
42 TAG_SETBACKGROUNDCOLOR = 9,
43 TAG_DEFINEFONT = 10,
44 TAG_DEFINETEXT = 11,
45 TAG_DOACTION = 12,
46 TAG_DEFINEFONTINFO = 13,
47 TAG_DEFINESOUND = 14,
48 TAG_STARTSOUND = 15,
49 TAG_DEFINEBUTTONSOUND = 17,
50 TAG_STREAMHEAD = 18,
51 TAG_STREAMBLOCK = 19,
52 TAG_DEFINEBITSLOSSLESS = 20,
53 TAG_JPEG2 = 21,
54 TAG_DEFINESHAPE2 = 22,
55 TAG_DEFINEBUTTONCXFORM = 23,
56 TAG_PROTECT = 24,
57 TAG_PLACEOBJECT2 = 26,
58 TAG_REMOVEOBJECT2 = 28,
59 TAG_DEFINESHAPE3 = 32,
60 TAG_DEFINETEXT2 = 33,
61 TAG_DEFINEBUTTON2 = 34,
62 TAG_DEFINEBITSJPEG3 = 35,
63 TAG_DEFINEBITSLOSSLESS2 = 36,
64 TAG_DEFINEEDITTEXT = 37,
65 TAG_DEFINESPRITE = 39,
66 TAG_FRAMELABEL = 43,
67 TAG_STREAMHEAD2 = 45,
68 TAG_DEFINEMORPHSHAPE = 46,
69 TAG_DEFINEFONT2 = 48,
70 TAG_EXPORTASSETS = 56,
71 TAG_IMPORTASSETS = 57,
72 TAG_ENABLEDEBUGGER = 58,
73 TAG_DOINITACTION = 59,
74 TAG_VIDEOSTREAM = 60,
75 TAG_VIDEOFRAME = 61,
76 TAG_DEFINEFONTINFO2 = 62,
77 TAG_ENABLEDEBUGGER2 = 64,
78 TAG_SCRIPTLIMITS = 65,
79 TAG_SETTABINDEX = 66,
80 TAG_FILEATTRIBUTES = 69,
81 TAG_PLACEOBJECT3 = 70,
82 TAG_IMPORTASSETS2 = 71,
83 TAG_DEFINEFONTALIGNZONES = 73,
84 TAG_CSMTEXTSETTINGS = 74,
85 TAG_DEFINEFONT3 = 75,
86 TAG_SYMBOLCLASS = 76,
87 TAG_METADATA = 77,
88 TAG_DEFINESCALINGGRID = 78,
89 TAG_DOABC = 82,
90 TAG_DEFINESHAPE4 = 83,
91 TAG_DEFINEMORPHSHAPE2 = 84,
92 TAG_DEFINESCENEANDFRAMELABELDATA = 86,
93 TAG_DEFINEBINARYDATA = 87,
94 TAG_DEFINEFONTNAME = 88,
95 TAG_STARTSOUND2 = 89,
96 TAG_DEFINEBITSJPEG4 = 90,
97 TAG_DEFINEFONT4 = 91,
98 };
99
100 #define TAG_LONG 0x100
101
102 /* flags for shape definition */
103 #define FLAG_MOVETO 0x01
104 #define FLAG_SETFILL0 0x02
105 #define FLAG_SETFILL1 0x04
106
107 /* character id used */
108 #define BITMAP_ID 0
109 #define VIDEO_ID 0
110 #define SHAPE_ID 1
111
112 extern const AVCodecTag ff_swf_codec_tags[];
113
114 #endif /* AVFORMAT_SWF_H */