@pproenca/ffmpeg-darwin-arm64-lgpl 0.1.7 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (221) hide show
  1. package/LICENSE +176 -0
  2. package/lib/libSvtAv1Enc.a +0 -0
  3. package/lib/libaom.a +0 -0
  4. package/lib/libavcodec.a +0 -0
  5. package/lib/libavdevice.a +0 -0
  6. package/lib/libavfilter.a +0 -0
  7. package/lib/libavformat.a +0 -0
  8. package/lib/libavutil.a +0 -0
  9. package/lib/libdav1d.a +0 -0
  10. package/lib/libmp3lame.a +0 -0
  11. package/lib/libogg.a +0 -0
  12. package/lib/libopus.a +0 -0
  13. package/lib/libswresample.a +0 -0
  14. package/lib/libswscale.a +0 -0
  15. package/lib/libvorbis.a +0 -0
  16. package/lib/libvorbisenc.a +0 -0
  17. package/lib/libvorbisfile.a +0 -0
  18. package/lib/libvpx.a +0 -0
  19. package/lib/pkgconfig/SvtAv1Enc.pc +12 -0
  20. package/lib/pkgconfig/aom.pc +14 -0
  21. package/lib/pkgconfig/dav1d.pc +9 -0
  22. package/lib/pkgconfig/libavcodec.pc +14 -0
  23. package/lib/pkgconfig/libavdevice.pc +14 -0
  24. package/lib/pkgconfig/libavfilter.pc +14 -0
  25. package/lib/pkgconfig/libavformat.pc +14 -0
  26. package/lib/pkgconfig/libavutil.pc +14 -0
  27. package/lib/pkgconfig/libswresample.pc +14 -0
  28. package/lib/pkgconfig/libswscale.pc +14 -0
  29. package/lib/pkgconfig/mp3lame.pc +11 -0
  30. package/lib/pkgconfig/ogg.pc +14 -0
  31. package/lib/pkgconfig/opus.pc +16 -0
  32. package/lib/pkgconfig/vorbis.pc +15 -0
  33. package/lib/pkgconfig/vorbisenc.pc +14 -0
  34. package/lib/pkgconfig/vorbisfile.pc +14 -0
  35. package/lib/pkgconfig/vpx.pc +14 -0
  36. package/package.json +2 -3
  37. package/include/aom/aom.h +0 -127
  38. package/include/aom/aom_codec.h +0 -594
  39. package/include/aom/aom_decoder.h +0 -257
  40. package/include/aom/aom_encoder.h +0 -1154
  41. package/include/aom/aom_external_partition.h +0 -452
  42. package/include/aom/aom_frame_buffer.h +0 -84
  43. package/include/aom/aom_image.h +0 -462
  44. package/include/aom/aom_integer.h +0 -60
  45. package/include/aom/aomcx.h +0 -2288
  46. package/include/aom/aomdx.h +0 -607
  47. package/include/dav1d/common.h +0 -94
  48. package/include/dav1d/data.h +0 -117
  49. package/include/dav1d/dav1d.h +0 -329
  50. package/include/dav1d/headers.h +0 -444
  51. package/include/dav1d/picture.h +0 -157
  52. package/include/dav1d/version.h +0 -50
  53. package/include/lame/lame.h +0 -1342
  54. package/include/libavcodec/ac3_parser.h +0 -36
  55. package/include/libavcodec/adts_parser.h +0 -37
  56. package/include/libavcodec/avcodec.h +0 -3128
  57. package/include/libavcodec/avdct.h +0 -88
  58. package/include/libavcodec/avfft.h +0 -149
  59. package/include/libavcodec/bsf.h +0 -332
  60. package/include/libavcodec/codec.h +0 -382
  61. package/include/libavcodec/codec_desc.h +0 -134
  62. package/include/libavcodec/codec_id.h +0 -669
  63. package/include/libavcodec/codec_par.h +0 -248
  64. package/include/libavcodec/d3d11va.h +0 -109
  65. package/include/libavcodec/defs.h +0 -337
  66. package/include/libavcodec/dirac.h +0 -135
  67. package/include/libavcodec/dv_profile.h +0 -82
  68. package/include/libavcodec/dxva2.h +0 -90
  69. package/include/libavcodec/jni.h +0 -67
  70. package/include/libavcodec/mediacodec.h +0 -103
  71. package/include/libavcodec/packet.h +0 -887
  72. package/include/libavcodec/qsv.h +0 -109
  73. package/include/libavcodec/vdpau.h +0 -171
  74. package/include/libavcodec/version.h +0 -45
  75. package/include/libavcodec/version_major.h +0 -52
  76. package/include/libavcodec/videotoolbox.h +0 -85
  77. package/include/libavcodec/vorbis_parser.h +0 -74
  78. package/include/libavdevice/avdevice.h +0 -397
  79. package/include/libavdevice/version.h +0 -45
  80. package/include/libavdevice/version_major.h +0 -43
  81. package/include/libavfilter/avfilter.h +0 -1379
  82. package/include/libavfilter/buffersink.h +0 -173
  83. package/include/libavfilter/buffersrc.h +0 -215
  84. package/include/libavfilter/version.h +0 -48
  85. package/include/libavfilter/version_major.h +0 -40
  86. package/include/libavformat/avformat.h +0 -3107
  87. package/include/libavformat/avio.h +0 -831
  88. package/include/libavformat/version.h +0 -47
  89. package/include/libavformat/version_major.h +0 -54
  90. package/include/libavutil/adler32.h +0 -63
  91. package/include/libavutil/aes.h +0 -69
  92. package/include/libavutil/aes_ctr.h +0 -99
  93. package/include/libavutil/ambient_viewing_environment.h +0 -72
  94. package/include/libavutil/attributes.h +0 -173
  95. package/include/libavutil/audio_fifo.h +0 -187
  96. package/include/libavutil/avassert.h +0 -78
  97. package/include/libavutil/avconfig.h +0 -6
  98. package/include/libavutil/avstring.h +0 -428
  99. package/include/libavutil/avutil.h +0 -362
  100. package/include/libavutil/base64.h +0 -72
  101. package/include/libavutil/blowfish.h +0 -82
  102. package/include/libavutil/bprint.h +0 -254
  103. package/include/libavutil/bswap.h +0 -105
  104. package/include/libavutil/buffer.h +0 -322
  105. package/include/libavutil/camellia.h +0 -70
  106. package/include/libavutil/cast5.h +0 -80
  107. package/include/libavutil/channel_layout.h +0 -751
  108. package/include/libavutil/common.h +0 -589
  109. package/include/libavutil/cpu.h +0 -145
  110. package/include/libavutil/crc.h +0 -102
  111. package/include/libavutil/csp.h +0 -150
  112. package/include/libavutil/des.h +0 -81
  113. package/include/libavutil/detection_bbox.h +0 -108
  114. package/include/libavutil/dict.h +0 -241
  115. package/include/libavutil/display.h +0 -109
  116. package/include/libavutil/dovi_meta.h +0 -396
  117. package/include/libavutil/downmix_info.h +0 -115
  118. package/include/libavutil/encryption_info.h +0 -205
  119. package/include/libavutil/error.h +0 -129
  120. package/include/libavutil/eval.h +0 -140
  121. package/include/libavutil/executor.h +0 -67
  122. package/include/libavutil/ffversion.h +0 -5
  123. package/include/libavutil/fifo.h +0 -242
  124. package/include/libavutil/file.h +0 -62
  125. package/include/libavutil/film_grain_params.h +0 -322
  126. package/include/libavutil/frame.h +0 -1175
  127. package/include/libavutil/hash.h +0 -264
  128. package/include/libavutil/hdr_dynamic_metadata.h +0 -376
  129. package/include/libavutil/hdr_dynamic_vivid_metadata.h +0 -346
  130. package/include/libavutil/hmac.h +0 -99
  131. package/include/libavutil/hwcontext.h +0 -598
  132. package/include/libavutil/hwcontext_cuda.h +0 -74
  133. package/include/libavutil/hwcontext_d3d11va.h +0 -178
  134. package/include/libavutil/hwcontext_d3d12va.h +0 -142
  135. package/include/libavutil/hwcontext_drm.h +0 -169
  136. package/include/libavutil/hwcontext_dxva2.h +0 -75
  137. package/include/libavutil/hwcontext_mediacodec.h +0 -61
  138. package/include/libavutil/hwcontext_opencl.h +0 -100
  139. package/include/libavutil/hwcontext_qsv.h +0 -87
  140. package/include/libavutil/hwcontext_vaapi.h +0 -117
  141. package/include/libavutil/hwcontext_vdpau.h +0 -44
  142. package/include/libavutil/hwcontext_videotoolbox.h +0 -106
  143. package/include/libavutil/hwcontext_vulkan.h +0 -382
  144. package/include/libavutil/iamf.h +0 -690
  145. package/include/libavutil/imgutils.h +0 -377
  146. package/include/libavutil/intfloat.h +0 -77
  147. package/include/libavutil/intreadwrite.h +0 -677
  148. package/include/libavutil/lfg.h +0 -81
  149. package/include/libavutil/log.h +0 -387
  150. package/include/libavutil/lzo.h +0 -66
  151. package/include/libavutil/macros.h +0 -80
  152. package/include/libavutil/mastering_display_metadata.h +0 -137
  153. package/include/libavutil/mathematics.h +0 -300
  154. package/include/libavutil/md5.h +0 -89
  155. package/include/libavutil/mem.h +0 -607
  156. package/include/libavutil/motion_vector.h +0 -57
  157. package/include/libavutil/murmur3.h +0 -115
  158. package/include/libavutil/opt.h +0 -1187
  159. package/include/libavutil/parseutils.h +0 -197
  160. package/include/libavutil/pixdesc.h +0 -440
  161. package/include/libavutil/pixelutils.h +0 -51
  162. package/include/libavutil/pixfmt.h +0 -716
  163. package/include/libavutil/random_seed.h +0 -57
  164. package/include/libavutil/rational.h +0 -225
  165. package/include/libavutil/rc4.h +0 -69
  166. package/include/libavutil/replaygain.h +0 -50
  167. package/include/libavutil/ripemd.h +0 -83
  168. package/include/libavutil/samplefmt.h +0 -269
  169. package/include/libavutil/sha.h +0 -90
  170. package/include/libavutil/sha512.h +0 -92
  171. package/include/libavutil/spherical.h +0 -243
  172. package/include/libavutil/stereo3d.h +0 -325
  173. package/include/libavutil/tea.h +0 -71
  174. package/include/libavutil/threadmessage.h +0 -115
  175. package/include/libavutil/time.h +0 -56
  176. package/include/libavutil/timecode.h +0 -199
  177. package/include/libavutil/timestamp.h +0 -85
  178. package/include/libavutil/tree.h +0 -137
  179. package/include/libavutil/twofish.h +0 -70
  180. package/include/libavutil/tx.h +0 -210
  181. package/include/libavutil/uuid.h +0 -146
  182. package/include/libavutil/version.h +0 -124
  183. package/include/libavutil/video_enc_params.h +0 -171
  184. package/include/libavutil/video_hint.h +0 -107
  185. package/include/libavutil/xtea.h +0 -94
  186. package/include/libswresample/swresample.h +0 -587
  187. package/include/libswresample/version.h +0 -46
  188. package/include/libswresample/version_major.h +0 -31
  189. package/include/libswscale/swscale.h +0 -460
  190. package/include/libswscale/version.h +0 -44
  191. package/include/libswscale/version_major.h +0 -35
  192. package/include/ogg/config_types.h +0 -26
  193. package/include/ogg/ogg.h +0 -209
  194. package/include/ogg/os_types.h +0 -158
  195. package/include/opus/opus.h +0 -1099
  196. package/include/opus/opus_defines.h +0 -830
  197. package/include/opus/opus_multistream.h +0 -660
  198. package/include/opus/opus_projection.h +0 -568
  199. package/include/opus/opus_types.h +0 -166
  200. package/include/svt-av1/EbDebugMacros.h +0 -88
  201. package/include/svt-av1/EbSvtAv1.h +0 -462
  202. package/include/svt-av1/EbSvtAv1Enc.h +0 -1112
  203. package/include/svt-av1/EbSvtAv1ErrorCodes.h +0 -67
  204. package/include/svt-av1/EbSvtAv1ExtFrameBuf.h +0 -64
  205. package/include/svt-av1/EbSvtAv1Formats.h +0 -126
  206. package/include/svt-av1/EbSvtAv1Metadata.h +0 -156
  207. package/include/vorbis/codec.h +0 -242
  208. package/include/vorbis/vorbisenc.h +0 -435
  209. package/include/vorbis/vorbisfile.h +0 -205
  210. package/include/vpx/vp8.h +0 -136
  211. package/include/vpx/vp8cx.h +0 -1118
  212. package/include/vpx/vp8dx.h +0 -228
  213. package/include/vpx/vpx_codec.h +0 -475
  214. package/include/vpx/vpx_decoder.h +0 -367
  215. package/include/vpx/vpx_encoder.h +0 -1150
  216. package/include/vpx/vpx_ext_ratectrl.h +0 -590
  217. package/include/vpx/vpx_frame_buffer.h +0 -83
  218. package/include/vpx/vpx_image.h +0 -221
  219. package/include/vpx/vpx_integer.h +0 -40
  220. package/include/vpx/vpx_tpl.h +0 -68
  221. /package/{include → lib/pkgconfig}/index.js +0 -0
@@ -1,607 +0,0 @@
1
- /*
2
- * Copyright (c) 2016, Alliance for Open Media. All rights reserved.
3
- *
4
- * This source code is subject to the terms of the BSD 2 Clause License and
5
- * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
6
- * was not distributed with this source code in the LICENSE file, you can
7
- * obtain it at www.aomedia.org/license/software. If the Alliance for Open
8
- * Media Patent License 1.0 was not distributed with this source code in the
9
- * PATENTS file, you can obtain it at www.aomedia.org/license/patent.
10
- */
11
-
12
- /*!\defgroup aom_decoder AOMedia AOM/AV1 Decoder
13
- * \ingroup aom
14
- *
15
- * @{
16
- */
17
- /*!\file
18
- * \brief Provides definitions for using AOM or AV1 within the aom Decoder
19
- * interface.
20
- */
21
- #ifndef AOM_AOM_AOMDX_H_
22
- #define AOM_AOM_AOMDX_H_
23
-
24
- #ifdef __cplusplus
25
- extern "C" {
26
- #endif
27
-
28
- /* Include controls common to both the encoder and decoder */
29
- #include "aom/aom.h"
30
-
31
- /*!\name Algorithm interface for AV1
32
- *
33
- * This interface provides the capability to decode AV1 streams.
34
- * @{
35
- */
36
-
37
- /*!\brief A single instance of the AV1 decoder.
38
- *\deprecated This access mechanism is provided for backwards compatibility;
39
- * prefer aom_codec_av1_dx().
40
- */
41
- extern aom_codec_iface_t aom_codec_av1_dx_algo;
42
- /*!\brief The interface to the AV1 decoder.
43
- */
44
- extern aom_codec_iface_t *aom_codec_av1_dx(void);
45
-
46
- /*!@} - end algorithm interface member group */
47
-
48
- /** Data structure that stores bit accounting for debug
49
- */
50
- typedef struct Accounting Accounting;
51
-
52
- #ifndef AOM_INSPECTION_H_
53
- /** Callback that inspects decoder frame data.
54
- */
55
- typedef void (*aom_inspect_cb)(void *decoder, void *ctx);
56
-
57
- #endif
58
-
59
- /*!\brief Structure to hold inspection callback and context.
60
- *
61
- * Defines a structure to hold the inspection callback function and calling
62
- * context.
63
- */
64
- typedef struct aom_inspect_init {
65
- /*! Inspection callback. */
66
- aom_inspect_cb inspect_cb;
67
-
68
- /*! Inspection context. */
69
- void *inspect_ctx;
70
- } aom_inspect_init;
71
-
72
- /*!\brief Structure to collect a buffer index when inspecting.
73
- *
74
- * Defines a structure to hold the buffer and return an index
75
- * when calling decode from inspect. This enables us to decode
76
- * non showable sub frames.
77
- */
78
- typedef struct {
79
- /*! Pointer for new position in compressed buffer after decoding 1 OBU. */
80
- const unsigned char *buf;
81
- /*! Index into reference buffer array to see result of decoding 1 OBU. */
82
- int idx;
83
- /*! Is a show existing frame. */
84
- int show_existing;
85
- } Av1DecodeReturn;
86
-
87
- /*!\brief Structure to hold a tile's start address and size in the bitstream.
88
- *
89
- * Defines a structure to hold a tile's start address and size in the bitstream.
90
- */
91
- typedef struct aom_tile_data {
92
- /*! Tile data size. */
93
- size_t coded_tile_data_size;
94
- /*! Tile's start address. */
95
- const void *coded_tile_data;
96
- /*! Extra size information. */
97
- size_t extra_size;
98
- } aom_tile_data;
99
-
100
- /*!\brief Max number of tile columns
101
- *
102
- * This is the limit of number of tile columns allowed within a frame.
103
- *
104
- * Currently same as "MAX_TILE_COLS" in AV1, the maximum that AV1 supports.
105
- *
106
- */
107
- #define AOM_MAX_TILE_COLS 64
108
- /*!\brief Max number of tile rows
109
- *
110
- * This is the limit of number of tile rows allowed within a frame.
111
- *
112
- * Currently same as "MAX_TILE_ROWS" in AV1, the maximum that AV1 supports.
113
- *
114
- */
115
- #define AOM_MAX_TILE_ROWS 64
116
-
117
- /*!\brief Structure to hold information about tiles in a frame.
118
- *
119
- * Defines a structure to hold a frame's tile information, namely
120
- * number of tile columns, number of tile_rows, and the width and
121
- * height of each tile.
122
- */
123
- typedef struct aom_tile_info {
124
- /*! Indicates the number of tile columns. */
125
- int tile_columns;
126
- /*! Indicates the number of tile rows. */
127
- int tile_rows;
128
- /*! Indicates the tile widths in units of SB. */
129
- int tile_widths[AOM_MAX_TILE_COLS];
130
- /*! Indicates the tile heights in units of SB. */
131
- int tile_heights[AOM_MAX_TILE_ROWS];
132
- /*! Indicates the number of tile groups present in a frame. */
133
- int num_tile_groups;
134
- } aom_tile_info;
135
-
136
- /*!\brief Structure to hold information about still image coding.
137
- *
138
- * Defines a structure to hold a information regarding still picture
139
- * and its header type.
140
- */
141
- typedef struct aom_still_picture_info {
142
- /*! Video is a single frame still picture */
143
- int is_still_picture;
144
- /*! Use full header for still picture */
145
- int is_reduced_still_picture_hdr;
146
- } aom_still_picture_info;
147
-
148
- /*!\brief Structure to hold information about S_FRAME.
149
- *
150
- * Defines a structure to hold a information regarding S_FRAME
151
- * and its position.
152
- */
153
- typedef struct aom_s_frame_info {
154
- /*! Indicates if current frame is S_FRAME */
155
- int is_s_frame;
156
- /*! Indicates if current S_FRAME is present at ALTREF frame*/
157
- int is_s_frame_at_altref;
158
- } aom_s_frame_info;
159
-
160
- /*!\brief Structure to hold information about screen content tools.
161
- *
162
- * Defines a structure to hold information about screen content
163
- * tools, namely: allow_screen_content_tools, allow_intrabc, and
164
- * force_integer_mv.
165
- */
166
- typedef struct aom_screen_content_tools_info {
167
- /*! Are screen content tools allowed */
168
- int allow_screen_content_tools;
169
- /*! Is intrabc allowed */
170
- int allow_intrabc;
171
- /*! Is integer mv forced */
172
- int force_integer_mv;
173
- } aom_screen_content_tools_info;
174
-
175
- /*!\brief Structure to hold the external reference frame pointer.
176
- *
177
- * Define a structure to hold the external reference frame pointer.
178
- */
179
- typedef struct av1_ext_ref_frame {
180
- /*! Start pointer of external references. */
181
- aom_image_t *img;
182
- /*! Number of available external references. */
183
- int num;
184
- } av1_ext_ref_frame_t;
185
-
186
- /*!\enum aom_dec_control_id
187
- * \brief AOM decoder control functions
188
- *
189
- * This set of macros define the control functions available for the AOM
190
- * decoder interface.
191
- * The range for decoder control ID is >= 256.
192
- *
193
- * \sa #aom_codec_control(aom_codec_ctx_t *ctx, int ctrl_id, ...)
194
- */
195
- enum aom_dec_control_id {
196
- /*!\brief Codec control function to get info on which reference frames were
197
- * updated by the last decode, int* parameter
198
- */
199
- AOMD_GET_LAST_REF_UPDATES = AOM_DECODER_CTRL_ID_START,
200
-
201
- /*!\brief Codec control function to check if the indicated frame is
202
- corrupted, int* parameter
203
- */
204
- AOMD_GET_FRAME_CORRUPTED,
205
-
206
- /*!\brief Codec control function to get info on which reference frames were
207
- * used by the last decode, int* parameter
208
- */
209
- AOMD_GET_LAST_REF_USED,
210
-
211
- /*!\brief Codec control function to get the dimensions that the current
212
- * frame is decoded at, int* parameter
213
- *
214
- * This may be different to the intended display size for the frame as
215
- * specified in the wrapper or frame header (see AV1D_GET_DISPLAY_SIZE).
216
- */
217
- AV1D_GET_FRAME_SIZE,
218
-
219
- /*!\brief Codec control function to get the current frame's intended display
220
- * dimensions (as specified in the wrapper or frame header), int* parameter
221
- *
222
- * This may be different to the decoded dimensions of this frame (see
223
- * AV1D_GET_FRAME_SIZE).
224
- */
225
- AV1D_GET_DISPLAY_SIZE,
226
-
227
- /*!\brief Codec control function to get the bit depth of the stream,
228
- * unsigned int* parameter
229
- */
230
- AV1D_GET_BIT_DEPTH,
231
-
232
- /*!\brief Codec control function to get the image format of the stream,
233
- * aom_img_fmt_t* parameter
234
- */
235
- AV1D_GET_IMG_FORMAT,
236
-
237
- /*!\brief Codec control function to get the width and height (in pixels) of
238
- * the tiles in a tile list, unsigned int* parameter
239
- *
240
- * Tile width is in the high 16 bits of the output value, and tile height is
241
- * in the low 16 bits of the output value.
242
- */
243
- AV1D_GET_TILE_SIZE,
244
-
245
- /*!\brief Codec control function to get the tile count in a tile list,
246
- * unsigned int* parameter
247
- */
248
- AV1D_GET_TILE_COUNT,
249
-
250
- /*!\brief Codec control function to set the byte alignment of the planes in
251
- * the reference buffers, int parameter
252
- *
253
- * Valid values are power of 2, from 32 to 1024. A value of 0 sets
254
- * legacy alignment. I.e. Y plane is aligned to 32 bytes, U plane directly
255
- * follows Y plane, and V plane directly follows U plane. Default value is 0.
256
- */
257
- AV1_SET_BYTE_ALIGNMENT,
258
-
259
- /*!\brief Codec control function to invert the decoding order to from right to
260
- * left, int parameter
261
- *
262
- * The function is used in a test to confirm the decoding independence of tile
263
- * columns. The function may be used in application where this order
264
- * of decoding is desired. int parameter
265
- *
266
- * TODO(yaowu): Rework the unit test that uses this control, and in a future
267
- * release, this test-only control shall be removed.
268
- */
269
- AV1_INVERT_TILE_DECODE_ORDER,
270
-
271
- /*!\brief Codec control function to set the skip loop filter flag, int
272
- * parameter
273
- *
274
- * Valid values are integers. The decoder will skip the loop filter
275
- * when its value is set to nonzero. If the loop filter is skipped the
276
- * decoder may accumulate decode artifacts. The default value is 0.
277
- */
278
- AV1_SET_SKIP_LOOP_FILTER,
279
-
280
- /*!\brief Codec control function to retrieve a pointer to the Accounting
281
- * struct, takes Accounting** as parameter
282
- *
283
- * If called before a frame has been decoded, this returns AOM_CODEC_ERROR.
284
- * The caller should ensure that AOM_CODEC_OK is returned before attempting
285
- * to dereference the Accounting pointer.
286
- *
287
- * \attention When configured with -DCONFIG_ACCOUNTING=0, the default, this
288
- * returns AOM_CODEC_INCAPABLE.
289
- */
290
- AV1_GET_ACCOUNTING,
291
-
292
- /*!\brief Codec control function to get last decoded frame quantizer,
293
- * int* parameter
294
- *
295
- * Returned value uses internal quantizer scale defined by the codec.
296
- */
297
- AOMD_GET_LAST_QUANTIZER,
298
-
299
- /*!\brief Codec control function to set the range of tile decoding, int
300
- * parameter
301
- *
302
- * A value that is greater and equal to zero indicates only the specific
303
- * row/column is decoded. A value that is -1 indicates the whole row/column
304
- * is decoded. A special case is both values are -1 that means the whole
305
- * frame is decoded.
306
- */
307
- AV1_SET_DECODE_TILE_ROW,
308
- AV1_SET_DECODE_TILE_COL,
309
-
310
- /*!\brief Codec control function to set the tile coding mode, unsigned int
311
- * parameter
312
- *
313
- * - 0 = tiles are coded in normal tile mode
314
- * - 1 = tiles are coded in large-scale tile mode
315
- */
316
- AV1_SET_TILE_MODE,
317
-
318
- /*!\brief Codec control function to get the frame header information of an
319
- * encoded frame, aom_tile_data* parameter
320
- */
321
- AV1D_GET_FRAME_HEADER_INFO,
322
-
323
- /*!\brief Codec control function to get the start address and size of a
324
- * tile in the coded bitstream, aom_tile_data* parameter.
325
- */
326
- AV1D_GET_TILE_DATA,
327
-
328
- /*!\brief Codec control function to set the external references' pointers in
329
- * the decoder, av1_ext_ref_frame_t* parameter.
330
- *
331
- * This is used while decoding the tile list OBU in large-scale tile coding
332
- * mode.
333
- */
334
- AV1D_SET_EXT_REF_PTR,
335
-
336
- /*!\brief Codec control function to enable the ext-tile software debug and
337
- * testing code in the decoder, unsigned int parameter
338
- */
339
- AV1D_EXT_TILE_DEBUG,
340
-
341
- /*!\brief Codec control function to enable the row based multi-threading of
342
- * decoding, unsigned int parameter
343
- *
344
- * - 0 = disabled
345
- * - 1 = enabled (default)
346
- */
347
- AV1D_SET_ROW_MT,
348
-
349
- /*!\brief Codec control function to indicate whether bitstream is in
350
- * Annex-B format, unsigned int parameter
351
- */
352
- AV1D_SET_IS_ANNEXB,
353
-
354
- /*!\brief Codec control function to indicate which operating point to use,
355
- * int parameter
356
- *
357
- * A scalable stream may define multiple operating points, each of which
358
- * defines a set of temporal and spatial layers to be processed. The
359
- * operating point index may take a value between 0 and
360
- * operating_points_cnt_minus_1 (which is at most 31).
361
- */
362
- AV1D_SET_OPERATING_POINT,
363
-
364
- /*!\brief Codec control function to indicate whether to output one frame per
365
- * temporal unit (the default), or one frame per spatial layer, int parameter
366
- *
367
- * In a scalable stream, each temporal unit corresponds to a single "frame"
368
- * of video, and within a temporal unit there may be multiple spatial layers
369
- * with different versions of that frame.
370
- * For video playback, only the highest-quality version (within the
371
- * selected operating point) is needed, but for some use cases it is useful
372
- * to have access to multiple versions of a frame when they are available.
373
- */
374
- AV1D_SET_OUTPUT_ALL_LAYERS,
375
-
376
- /*!\brief Codec control function to set an aom_inspect_cb callback that is
377
- * invoked each time a frame is decoded, aom_inspect_init* parameter
378
- *
379
- * \attention When configured with -DCONFIG_INSPECTION=0, the default, this
380
- * returns AOM_CODEC_INCAPABLE.
381
- */
382
- AV1_SET_INSPECTION_CALLBACK,
383
-
384
- /*!\brief Codec control function to set the skip film grain flag, int
385
- * parameter
386
- *
387
- * Valid values are integers. The decoder will skip the film grain when its
388
- * value is set to nonzero. The default value is 0.
389
- */
390
- AV1D_SET_SKIP_FILM_GRAIN,
391
-
392
- /*!\brief Codec control function to check the presence of forward key frames,
393
- * int* parameter
394
- */
395
- AOMD_GET_FWD_KF_PRESENT,
396
-
397
- /*!\brief Codec control function to get the frame flags of the previous frame
398
- * decoded, int* parameter
399
- *
400
- * This will return a flag of type aom_codec_frame_flags_t.
401
- */
402
- AOMD_GET_FRAME_FLAGS,
403
-
404
- /*!\brief Codec control function to check the presence of altref frames, int*
405
- * parameter
406
- */
407
- AOMD_GET_ALTREF_PRESENT,
408
-
409
- /*!\brief Codec control function to get tile information of the previous frame
410
- * decoded, aom_tile_info* parameter
411
- *
412
- * This will return a struct of type aom_tile_info.
413
- */
414
- AOMD_GET_TILE_INFO,
415
-
416
- /*!\brief Codec control function to get screen content tools information,
417
- * aom_screen_content_tools_info* parameter
418
- *
419
- * It returns a struct of type aom_screen_content_tools_info, which contains
420
- * the header flags allow_screen_content_tools, allow_intrabc, and
421
- * force_integer_mv.
422
- */
423
- AOMD_GET_SCREEN_CONTENT_TOOLS_INFO,
424
-
425
- /*!\brief Codec control function to get the still picture coding information,
426
- * aom_still_picture_info* parameter
427
- */
428
- AOMD_GET_STILL_PICTURE,
429
-
430
- /*!\brief Codec control function to get superblock size,
431
- * aom_superblock_size_t* parameter
432
- *
433
- * It returns an enum, indicating the superblock size read from the sequence
434
- * header(0 for BLOCK_64X64 and 1 for BLOCK_128X128)
435
- */
436
- AOMD_GET_SB_SIZE,
437
-
438
- /*!\brief Codec control function to check if the previous frame
439
- * decoded has show existing frame flag set, int* parameter
440
- */
441
- AOMD_GET_SHOW_EXISTING_FRAME_FLAG,
442
-
443
- /*!\brief Codec control function to get the S_FRAME coding information,
444
- * aom_s_frame_info* parameter
445
- */
446
- AOMD_GET_S_FRAME_INFO,
447
-
448
- /*!\brief Codec control function to get the show frame flag, int* parameter
449
- */
450
- AOMD_GET_SHOW_FRAME_FLAG,
451
-
452
- /*!\brief Codec control function to get the base q index of a frame, int*
453
- * parameter
454
- */
455
- AOMD_GET_BASE_Q_IDX,
456
-
457
- /*!\brief Codec control function to get the order hint of a frame, unsigned
458
- * int* parameter
459
- */
460
- AOMD_GET_ORDER_HINT,
461
-
462
- /*!\brief Codec control function to get the info of a 4x4 block.
463
- * Parameters: int mi_row, int mi_col, and MB_MODE_INFO*.
464
- *
465
- * \note This only returns a shallow copy, so all pointer members should not
466
- * be used.
467
- */
468
- AV1D_GET_MI_INFO,
469
- };
470
-
471
- /*!\cond */
472
- /*!\brief AOM decoder control function parameter type
473
- *
474
- * Defines the data types that AOMD control functions take.
475
- *
476
- * \note Additional common controls are defined in aom.h.
477
- *
478
- * \note For each control ID "X", a macro-define of
479
- * AOM_CTRL_X is provided. It is used at compile time to determine
480
- * if the control ID is supported by the libaom library available,
481
- * when the libaom version cannot be controlled.
482
- */
483
- AOM_CTRL_USE_TYPE(AOMD_GET_LAST_REF_UPDATES, int *)
484
- #define AOM_CTRL_AOMD_GET_LAST_REF_UPDATES
485
-
486
- AOM_CTRL_USE_TYPE(AOMD_GET_FRAME_CORRUPTED, int *)
487
- #define AOM_CTRL_AOMD_GET_FRAME_CORRUPTED
488
-
489
- AOM_CTRL_USE_TYPE(AOMD_GET_LAST_REF_USED, int *)
490
- #define AOM_CTRL_AOMD_GET_LAST_REF_USED
491
-
492
- AOM_CTRL_USE_TYPE(AV1D_GET_FRAME_SIZE, int *)
493
- #define AOM_CTRL_AV1D_GET_FRAME_SIZE
494
-
495
- AOM_CTRL_USE_TYPE(AV1D_GET_DISPLAY_SIZE, int *)
496
- #define AOM_CTRL_AV1D_GET_DISPLAY_SIZE
497
-
498
- AOM_CTRL_USE_TYPE(AV1D_GET_BIT_DEPTH, unsigned int *)
499
- #define AOM_CTRL_AV1D_GET_BIT_DEPTH
500
-
501
- AOM_CTRL_USE_TYPE(AV1D_GET_IMG_FORMAT, aom_img_fmt_t *)
502
- #define AOM_CTRL_AV1D_GET_IMG_FORMAT
503
-
504
- AOM_CTRL_USE_TYPE(AV1D_GET_TILE_SIZE, unsigned int *)
505
- #define AOM_CTRL_AV1D_GET_TILE_SIZE
506
-
507
- AOM_CTRL_USE_TYPE(AV1D_GET_TILE_COUNT, unsigned int *)
508
- #define AOM_CTRL_AV1D_GET_TILE_COUNT
509
-
510
- AOM_CTRL_USE_TYPE(AV1_INVERT_TILE_DECODE_ORDER, int)
511
- #define AOM_CTRL_AV1_INVERT_TILE_DECODE_ORDER
512
-
513
- AOM_CTRL_USE_TYPE(AV1_SET_SKIP_LOOP_FILTER, int)
514
- #define AOM_CTRL_AV1_SET_SKIP_LOOP_FILTER
515
-
516
- AOM_CTRL_USE_TYPE(AV1_GET_ACCOUNTING, Accounting **)
517
- #define AOM_CTRL_AV1_GET_ACCOUNTING
518
-
519
- AOM_CTRL_USE_TYPE(AOMD_GET_LAST_QUANTIZER, int *)
520
- #define AOM_CTRL_AOMD_GET_LAST_QUANTIZER
521
-
522
- AOM_CTRL_USE_TYPE(AV1_SET_DECODE_TILE_ROW, int)
523
- #define AOM_CTRL_AV1_SET_DECODE_TILE_ROW
524
-
525
- AOM_CTRL_USE_TYPE(AV1_SET_DECODE_TILE_COL, int)
526
- #define AOM_CTRL_AV1_SET_DECODE_TILE_COL
527
-
528
- AOM_CTRL_USE_TYPE(AV1_SET_TILE_MODE, unsigned int)
529
- #define AOM_CTRL_AV1_SET_TILE_MODE
530
-
531
- AOM_CTRL_USE_TYPE(AV1D_GET_FRAME_HEADER_INFO, aom_tile_data *)
532
- #define AOM_CTRL_AV1D_GET_FRAME_HEADER_INFO
533
-
534
- AOM_CTRL_USE_TYPE(AV1D_GET_TILE_DATA, aom_tile_data *)
535
- #define AOM_CTRL_AV1D_GET_TILE_DATA
536
-
537
- AOM_CTRL_USE_TYPE(AV1D_SET_EXT_REF_PTR, av1_ext_ref_frame_t *)
538
- #define AOM_CTRL_AV1D_SET_EXT_REF_PTR
539
-
540
- AOM_CTRL_USE_TYPE(AV1D_EXT_TILE_DEBUG, unsigned int)
541
- #define AOM_CTRL_AV1D_EXT_TILE_DEBUG
542
-
543
- AOM_CTRL_USE_TYPE(AV1D_SET_ROW_MT, unsigned int)
544
- #define AOM_CTRL_AV1D_SET_ROW_MT
545
-
546
- AOM_CTRL_USE_TYPE(AV1D_SET_IS_ANNEXB, unsigned int)
547
- #define AOM_CTRL_AV1D_SET_IS_ANNEXB
548
-
549
- AOM_CTRL_USE_TYPE(AV1D_SET_OPERATING_POINT, int)
550
- #define AOM_CTRL_AV1D_SET_OPERATING_POINT
551
-
552
- AOM_CTRL_USE_TYPE(AV1D_SET_OUTPUT_ALL_LAYERS, int)
553
- #define AOM_CTRL_AV1D_SET_OUTPUT_ALL_LAYERS
554
-
555
- AOM_CTRL_USE_TYPE(AV1_SET_INSPECTION_CALLBACK, aom_inspect_init *)
556
- #define AOM_CTRL_AV1_SET_INSPECTION_CALLBACK
557
-
558
- AOM_CTRL_USE_TYPE(AV1D_SET_SKIP_FILM_GRAIN, int)
559
- #define AOM_CTRL_AV1D_SET_SKIP_FILM_GRAIN
560
-
561
- AOM_CTRL_USE_TYPE(AOMD_GET_FWD_KF_PRESENT, int *)
562
- #define AOM_CTRL_AOMD_GET_FWD_KF_PRESENT
563
-
564
- AOM_CTRL_USE_TYPE(AOMD_GET_FRAME_FLAGS, int *)
565
- #define AOM_CTRL_AOMD_GET_FRAME_FLAGS
566
-
567
- AOM_CTRL_USE_TYPE(AOMD_GET_ALTREF_PRESENT, int *)
568
- #define AOM_CTRL_AOMD_GET_ALTREF_PRESENT
569
-
570
- AOM_CTRL_USE_TYPE(AOMD_GET_TILE_INFO, aom_tile_info *)
571
- #define AOM_CTRL_AOMD_GET_TILE_INFO
572
-
573
- AOM_CTRL_USE_TYPE(AOMD_GET_SCREEN_CONTENT_TOOLS_INFO,
574
- aom_screen_content_tools_info *)
575
- #define AOM_CTRL_AOMD_GET_SCREEN_CONTENT_TOOLS_INFO
576
-
577
- AOM_CTRL_USE_TYPE(AOMD_GET_STILL_PICTURE, aom_still_picture_info *)
578
- #define AOM_CTRL_AOMD_GET_STILL_PICTURE
579
-
580
- AOM_CTRL_USE_TYPE(AOMD_GET_SB_SIZE, aom_superblock_size_t *)
581
- #define AOMD_CTRL_AOMD_GET_SB_SIZE
582
-
583
- AOM_CTRL_USE_TYPE(AOMD_GET_SHOW_EXISTING_FRAME_FLAG, int *)
584
- #define AOMD_CTRL_AOMD_GET_SHOW_EXISTING_FRAME_FLAG
585
-
586
- AOM_CTRL_USE_TYPE(AOMD_GET_S_FRAME_INFO, aom_s_frame_info *)
587
- #define AOMD_CTRL_AOMD_GET_S_FRAME_INFO
588
-
589
- AOM_CTRL_USE_TYPE(AOMD_GET_SHOW_FRAME_FLAG, int *)
590
- #define AOM_CTRL_AOMD_GET_SHOW_FRAME_FLAG
591
-
592
- AOM_CTRL_USE_TYPE(AOMD_GET_BASE_Q_IDX, int *)
593
- #define AOM_CTRL_AOMD_GET_BASE_Q_IDX
594
-
595
- AOM_CTRL_USE_TYPE(AOMD_GET_ORDER_HINT, unsigned int *)
596
- #define AOM_CTRL_AOMD_GET_ORDER_HINT
597
-
598
- // The AOM_CTRL_USE_TYPE macro can't be used with AV1D_GET_MI_INFO because
599
- // AV1D_GET_MI_INFO takes more than one parameter.
600
- #define AOM_CTRL_AV1D_GET_MI_INFO
601
- /*!\endcond */
602
- /*! @} - end defgroup aom_decoder */
603
- #ifdef __cplusplus
604
- } // extern "C"
605
- #endif
606
-
607
- #endif // AOM_AOM_AOMDX_H_
@@ -1,94 +0,0 @@
1
- /*
2
- * Copyright © 2018, VideoLAN and dav1d authors
3
- * Copyright © 2018, Two Orioles, LLC
4
- * All rights reserved.
5
- *
6
- * Redistribution and use in source and binary forms, with or without
7
- * modification, are permitted provided that the following conditions are met:
8
- *
9
- * 1. Redistributions of source code must retain the above copyright notice, this
10
- * list of conditions and the following disclaimer.
11
- *
12
- * 2. Redistributions in binary form must reproduce the above copyright notice,
13
- * this list of conditions and the following disclaimer in the documentation
14
- * and/or other materials provided with the distribution.
15
- *
16
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
- * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
20
- * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
- */
27
-
28
- #ifndef DAV1D_COMMON_H
29
- #define DAV1D_COMMON_H
30
-
31
- #include <errno.h>
32
- #include <stddef.h>
33
- #include <stdint.h>
34
-
35
- #ifdef __cplusplus
36
- extern "C" {
37
- #endif
38
-
39
- #ifndef DAV1D_API
40
- #if defined _WIN32
41
- #if defined DAV1D_BUILDING_DLL
42
- #define DAV1D_API __declspec(dllexport)
43
- #else
44
- #define DAV1D_API
45
- #endif
46
- #else
47
- #if __GNUC__ >= 4
48
- #define DAV1D_API __attribute__ ((visibility ("default")))
49
- #else
50
- #define DAV1D_API
51
- #endif
52
- #endif
53
- #endif
54
-
55
- #if EPERM > 0
56
- #define DAV1D_ERR(e) (-(e)) ///< Negate POSIX error code.
57
- #else
58
- #define DAV1D_ERR(e) (e)
59
- #endif
60
-
61
- /**
62
- * A reference-counted object wrapper for a user-configurable pointer.
63
- */
64
- typedef struct Dav1dUserData {
65
- const uint8_t *data; ///< data pointer
66
- struct Dav1dRef *ref; ///< allocation origin
67
- } Dav1dUserData;
68
-
69
- /**
70
- * Input packet metadata which are copied from the input data used to
71
- * decode each image into the matching structure of the output image
72
- * returned back to the user. Since these are metadata fields, they
73
- * can be used for other purposes than the documented ones, they will
74
- * still be passed from input data to output picture without being
75
- * used internally.
76
- */
77
- typedef struct Dav1dDataProps {
78
- int64_t timestamp; ///< container timestamp of input data, INT64_MIN if unknown (default)
79
- int64_t duration; ///< container duration of input data, 0 if unknown (default)
80
- int64_t offset; ///< stream offset of input data, -1 if unknown (default)
81
- size_t size; ///< packet size, default Dav1dData.sz
82
- struct Dav1dUserData user_data; ///< user-configurable data, default NULL members
83
- } Dav1dDataProps;
84
-
85
- /**
86
- * Release reference to a Dav1dDataProps.
87
- */
88
- DAV1D_API void dav1d_data_props_unref(Dav1dDataProps *props);
89
-
90
- #ifdef __cplusplus
91
- } /* extern "C" */
92
- #endif
93
-
94
- #endif /* DAV1D_COMMON_H */