-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathffmpeg-csrc-02opaque-types.patch
354 lines (305 loc) · 10.8 KB
/
ffmpeg-csrc-02opaque-types.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
diff -pruN csrc.orig/libavcodec/avcodec.h csrc/libavcodec/avcodec.h
--- csrc.orig/libavcodec/avcodec.h 2021-06-14 12:55:20.776487013 +0200
+++ csrc/libavcodec/avcodec.h 2021-06-14 12:56:00.000301218 +0200
@@ -518,7 +518,9 @@ typedef struct AVProducerReferenceTime {
*/
#define AV_GET_ENCODE_BUFFER_FLAG_REF (1 << 0)
-struct AVCodecInternal;
+struct AVCodecInternal {
+ int dummy;
+};
/**
* main external API structure.
diff -pruN csrc.orig/libavcodec/avfft.h csrc/libavcodec/avfft.h
--- csrc.orig/libavcodec/avfft.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libavcodec/avfft.h 2021-06-14 12:56:00.000301218 +0200
@@ -38,7 +38,9 @@ typedef struct FFTComplex {
FFTSample re, im;
} FFTComplex;
-typedef struct FFTContext FFTContext;
+typedef struct FFTContext {
+ int dummy;
+} FFTContext;
/**
* Set up a complex FFT.
@@ -75,7 +77,9 @@ enum RDFTransformType {
DFT_C2R,
};
-typedef struct RDFTContext RDFTContext;
+typedef struct RDFTContext {
+ int dummy;
+} RDFTContext;
/**
* Set up a real FFT.
@@ -88,7 +92,9 @@ void av_rdft_end(RDFTContext *s);
/* Discrete Cosine Transform */
-typedef struct DCTContext DCTContext;
+typedef struct DCTContext {
+ int dummy;
+} DCTContext;
enum DCTTransformType {
DCT_II = 0,
diff -pruN csrc.orig/libavcodec/mediacodec.h csrc/libavcodec/mediacodec.h
--- csrc.orig/libavcodec/mediacodec.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libavcodec/mediacodec.h 2021-06-14 12:56:00.000301218 +0200
@@ -70,7 +70,9 @@ void av_mediacodec_default_free(AVCodecC
/**
* Opaque structure representing a MediaCodec buffer to render.
*/
-typedef struct MediaCodecBuffer AVMediaCodecBuffer;
+typedef struct MediaCodecBuffer {
+ int dummy;
+} AVMediaCodecBuffer;
/**
* Release a MediaCodec buffer and render it to the surface that is associated
diff -pruN csrc.orig/libavcodec/vorbis_parser.h csrc/libavcodec/vorbis_parser.h
--- csrc.orig/libavcodec/vorbis_parser.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libavcodec/vorbis_parser.h 2021-06-14 12:56:00.000301218 +0200
@@ -28,7 +28,9 @@
#include <stdint.h>
-typedef struct AVVorbisParseContext AVVorbisParseContext;
+typedef struct AVVorbisParseContext {
+ int dummy;
+} AVVorbisParseContext;
/**
* Allocate and initialize the Vorbis parser using headers in the extradata.
diff -pruN csrc.orig/libavfilter/avfilter.h csrc/libavfilter/avfilter.h
--- csrc.orig/libavfilter/avfilter.h 2021-06-14 12:55:20.780486994 +0200
+++ csrc/libavfilter/avfilter.h 2021-06-14 13:00:55.826892611 +0200
@@ -64,11 +64,21 @@ const char *avfilter_configuration(void)
*/
const char *avfilter_license(void);
-typedef struct AVFilterContext AVFilterContext;
-typedef struct AVFilterLink AVFilterLink;
-typedef struct AVFilterPad AVFilterPad;
-typedef struct AVFilterFormats AVFilterFormats;
-typedef struct AVFilterChannelLayouts AVFilterChannelLayouts;
+typedef struct AVFilterContext {
+ int dummy;
+} AVFilterContext;
+typedef struct AVFilterLink {
+ int dummy;
+} AVFilterLink;
+typedef struct AVFilterPad {
+ int dummy;
+} AVFilterPad;
+typedef struct AVFilterFormats {
+ int dummy;
+} AVFilterFormats;
+typedef struct AVFilterChannelLayouts {
+ int dummy;
+} AVFilterChannelLayouts;
/**
* Get the number of elements in a NULL-terminated array of AVFilterPads (e.g.
@@ -335,7 +345,13 @@ typedef struct AVFilter {
*/
#define AVFILTER_THREAD_SLICE (1 << 0)
-typedef struct AVFilterInternal AVFilterInternal;
+typedef struct AVFilterInternal {
+ int dummy;
+} AVFilterInternal;
+
+typedef struct AVFilterCommand {
+ int dummy;
+} AVFilterCommand;
/** An instance of a filter */
struct AVFilterContext {
@@ -468,6 +484,10 @@ typedef struct AVFilterFormatsConfig {
* In the future, access to the header may be reserved for filters
* implementation.
*/
+typedef AVFilterChannelLayouts {
+ int dummy;
+} AVFilterChannelLayouts;
+
struct AVFilterLink {
AVFilterContext *src; ///< source filter
AVFilterPad *srcpad; ///< output pad on the source filter
@@ -816,7 +836,9 @@ int avfilter_insert_filter(AVFilterLink
*/
const AVClass *avfilter_get_class(void);
-typedef struct AVFilterGraphInternal AVFilterGraphInternal;
+typedef struct AVFilterGraphInternal {
+ int dummy;
+} AVFilterGraphInternal;
/**
* A function pointer passed to the @ref AVFilterGraph.execute callback to be
diff -pruN csrc.orig/libavformat/avformat.h csrc/libavformat/avformat.h
--- csrc.orig/libavformat/avformat.h 2021-06-14 12:55:20.780486994 +0200
+++ csrc/libavformat/avformat.h 2021-06-14 12:56:00.004301200 +0200
@@ -321,6 +321,10 @@ struct AVFormatContext;
struct AVDeviceInfoList;
struct AVDeviceCapabilitiesQuery;
+typedef struct FFFrac {
+ int dummy;
+} FFFrac;
+
/**
* @defgroup metadata_api Public Metadata API
* @{
@@ -433,7 +437,9 @@ int av_append_packet(AVIOContext *s, AVP
/*************************************************/
/* input/output formats */
-struct AVCodecTag;
+struct AVCodecTag {
+ int dummy;
+};
/**
* This structure contains the data a format has to probe a file.
@@ -847,7 +853,9 @@ typedef struct AVIndexEntry {
*/
#define AV_DISPOSITION_TIMED_THUMBNAILS 0x0800
-typedef struct AVStreamInternal AVStreamInternal;
+typedef struct AVStreamInternal {
+ int dummy;
+} AVStreamInternal;
/**
* To specify text track kind (different from subtitles default).
@@ -1215,7 +1223,9 @@ enum AVDurationEstimationMethod {
AVFMT_DURATION_FROM_BITRATE ///< Duration estimated from bitrate (less accurate)
};
-typedef struct AVFormatInternal AVFormatInternal;
+typedef struct AVFormatInternal {
+ int dummy;
+} AVFormatInternal;
/**
* Format I/O context.
diff -pruN csrc.orig/libavresample/avresample.h csrc/libavresample/avresample.h
--- csrc.orig/libavresample/avresample.h 2021-06-14 12:55:20.780486994 +0200
+++ csrc/libavresample/avresample.h 2021-06-14 12:56:00.004301200 +0200
@@ -103,7 +103,9 @@
#define AVRESAMPLE_MAX_CHANNELS 32
-typedef struct AVAudioResampleContext AVAudioResampleContext;
+typedef struct AVAudioResampleContext {
+ int dummy;
+} AVAudioResampleContext;
/**
* @deprecated use libswresample
diff -pruN csrc.orig/libavutil/audio_fifo.h csrc/libavutil/audio_fifo.h
--- csrc.orig/libavutil/audio_fifo.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libavutil/audio_fifo.h 2021-06-14 12:56:00.004301200 +0200
@@ -46,7 +46,9 @@
* - Supports multiple channels with either planar or packed sample format.
* - Automatic reallocation when writing to a full buffer.
*/
-typedef struct AVAudioFifo AVAudioFifo;
+typedef struct AVAudioFifo {
+ int dummy;
+} AVAudioFifo;
/**
* Free an AVAudioFifo.
diff -pruN csrc.orig/libavutil/buffer.h csrc/libavutil/buffer.h
--- csrc.orig/libavutil/buffer.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libavutil/buffer.h 2021-06-14 12:56:00.004301200 +0200
@@ -73,7 +73,9 @@
* A reference counted buffer type. It is opaque and is meant to be used through
* references (AVBufferRef).
*/
-typedef struct AVBuffer AVBuffer;
+typedef struct AVBuffer {
+ int dummy;
+} AVBuffer;
/**
* A reference to a data buffer.
@@ -274,7 +276,9 @@ int av_buffer_replace(AVBufferRef **dst,
* directly. It is allocated with av_buffer_pool_init() and freed with
* av_buffer_pool_uninit().
*/
-typedef struct AVBufferPool AVBufferPool;
+typedef struct AVBufferPool {
+ int dummy;
+} AVBufferPool;
/**
* Allocate and initialize a buffer pool.
diff -pruN csrc.orig/libavutil/dict.h csrc/libavutil/dict.h
--- csrc.orig/libavutil/dict.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libavutil/dict.h 2021-06-14 12:56:00.004301200 +0200
@@ -83,7 +83,9 @@ typedef struct AVDictionaryEntry {
char *value;
} AVDictionaryEntry;
-typedef struct AVDictionary AVDictionary;
+typedef struct AVDictionary {
+ int dummy;
+} AVDictionary;
/**
* Get a dictionary entry with matching key.
diff -pruN csrc.orig/libavutil/eval.h csrc/libavutil/eval.h
--- csrc.orig/libavutil/eval.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libavutil/eval.h 2021-06-14 12:56:00.008301180 +0200
@@ -28,7 +28,9 @@
#include "avutil.h"
-typedef struct AVExpr AVExpr;
+typedef struct AVExpr {
+ int dummy;
+} AVExpr;
/**
* Parse and evaluate an expression.
diff -pruN csrc.orig/libavutil/hmac.h csrc/libavutil/hmac.h
--- csrc.orig/libavutil/hmac.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libavutil/hmac.h 2021-06-14 12:56:00.008301180 +0200
@@ -39,7 +39,9 @@ enum AVHMACType {
AV_HMAC_SHA512,
};
-typedef struct AVHMAC AVHMAC;
+typedef struct AVHMAC {
+ int dummy;
+} AVHMAC;
/**
* Allocate an AVHMAC context.
diff -pruN csrc.orig/libavutil/hwcontext_cuda.h csrc/libavutil/hwcontext_cuda.h
--- csrc.orig/libavutil/hwcontext_cuda.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libavutil/hwcontext_cuda.h 2021-06-14 12:56:00.008301180 +0200
@@ -34,7 +34,9 @@
* AVBufferRefs whose data pointer is a CUdeviceptr.
*/
-typedef struct AVCUDADeviceContextInternal AVCUDADeviceContextInternal;
+typedef struct AVCUDADeviceContextInternal {
+int dummy;
+} AVCUDADeviceContextInternal;
/**
* This struct is allocated as AVHWDeviceContext.hwctx
diff -pruN csrc.orig/libavutil/hwcontext.h csrc/libavutil/hwcontext.h
--- csrc.orig/libavutil/hwcontext.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libavutil/hwcontext.h 2021-06-14 12:56:00.008301180 +0200
@@ -39,7 +39,9 @@ enum AVHWDeviceType {
AV_HWDEVICE_TYPE_VULKAN,
};
-typedef struct AVHWDeviceInternal AVHWDeviceInternal;
+typedef struct AVHWDeviceInternal {
+ int dummy;
+} AVHWDeviceInternal;
/**
* This struct aggregates all the (hardware/vendor-specific) "high-level" state,
@@ -109,7 +111,9 @@ typedef struct AVHWDeviceContext {
void *user_opaque;
} AVHWDeviceContext;
-typedef struct AVHWFramesInternal AVHWFramesInternal;
+typedef struct AVHWFramesInternal {
+ int dummy;
+} AVHWFramesInternal;
/**
* This struct describes a set or pool of "hardware" frames (i.e. those with
diff -pruN csrc.orig/libavutil/threadmessage.h csrc/libavutil/threadmessage.h
--- csrc.orig/libavutil/threadmessage.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libavutil/threadmessage.h 2021-06-14 12:56:00.008301180 +0200
@@ -19,7 +19,9 @@
#ifndef AVUTIL_THREADMESSAGE_H
#define AVUTIL_THREADMESSAGE_H
-typedef struct AVThreadMessageQueue AVThreadMessageQueue;
+typedef struct AVThreadMessageQueue {
+ int dummy;
+} AVThreadMessageQueue;
typedef enum AVThreadMessageFlags {
diff -pruN csrc.orig/libswresample/swresample.h csrc/libswresample/swresample.h
--- csrc.orig/libswresample/swresample.h 2021-05-19 15:42:00.000000000 +0200
+++ csrc/libswresample/swresample.h 2021-06-14 12:56:00.008301180 +0200
@@ -179,7 +179,9 @@ enum SwrFilterType {
* the @ref avoptions API and cannot directly set values to members of the
* structure.
*/
-typedef struct SwrContext SwrContext;
+typedef struct SwrContext {
+ int dummy;
+} SwrContext;
/**
* Get the AVClass for SwrContext. It can be used in combination with