@pproenca/ffmpeg-darwin-x64 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.
- package/LICENSE +28 -0
- package/lib/libSvtAv1Enc.a +0 -0
- package/lib/libaom.a +0 -0
- package/lib/libavcodec.a +0 -0
- package/lib/libavdevice.a +0 -0
- package/lib/libavfilter.a +0 -0
- package/lib/libavformat.a +0 -0
- package/lib/libavutil.a +0 -0
- package/lib/libdav1d.a +0 -0
- package/lib/libogg.a +0 -0
- package/lib/libopus.a +0 -0
- package/lib/libswresample.a +0 -0
- package/lib/libswscale.a +0 -0
- package/lib/libvorbis.a +0 -0
- package/lib/libvorbisenc.a +0 -0
- package/lib/libvorbisfile.a +0 -0
- package/lib/libvpx.a +0 -0
- package/lib/pkgconfig/SvtAv1Enc.pc +12 -0
- package/lib/pkgconfig/aom.pc +14 -0
- package/lib/pkgconfig/dav1d.pc +9 -0
- package/lib/pkgconfig/libavcodec.pc +14 -0
- package/lib/pkgconfig/libavdevice.pc +14 -0
- package/lib/pkgconfig/libavfilter.pc +14 -0
- package/lib/pkgconfig/libavformat.pc +14 -0
- package/lib/pkgconfig/libavutil.pc +14 -0
- package/lib/pkgconfig/libswresample.pc +14 -0
- package/lib/pkgconfig/libswscale.pc +14 -0
- package/lib/pkgconfig/ogg.pc +14 -0
- package/lib/pkgconfig/opus.pc +16 -0
- package/lib/pkgconfig/vorbis.pc +15 -0
- package/lib/pkgconfig/vorbisenc.pc +14 -0
- package/lib/pkgconfig/vorbisfile.pc +14 -0
- package/lib/pkgconfig/vpx.pc +14 -0
- package/package.json +2 -3
- package/include/aom/aom.h +0 -127
- package/include/aom/aom_codec.h +0 -594
- package/include/aom/aom_decoder.h +0 -257
- package/include/aom/aom_encoder.h +0 -1154
- package/include/aom/aom_external_partition.h +0 -452
- package/include/aom/aom_frame_buffer.h +0 -84
- package/include/aom/aom_image.h +0 -462
- package/include/aom/aom_integer.h +0 -60
- package/include/aom/aomcx.h +0 -2288
- package/include/aom/aomdx.h +0 -607
- package/include/dav1d/common.h +0 -94
- package/include/dav1d/data.h +0 -117
- package/include/dav1d/dav1d.h +0 -329
- package/include/dav1d/headers.h +0 -444
- package/include/dav1d/picture.h +0 -157
- package/include/dav1d/version.h +0 -50
- package/include/libavcodec/ac3_parser.h +0 -36
- package/include/libavcodec/adts_parser.h +0 -37
- package/include/libavcodec/avcodec.h +0 -3128
- package/include/libavcodec/avdct.h +0 -88
- package/include/libavcodec/avfft.h +0 -149
- package/include/libavcodec/bsf.h +0 -332
- package/include/libavcodec/codec.h +0 -382
- package/include/libavcodec/codec_desc.h +0 -134
- package/include/libavcodec/codec_id.h +0 -669
- package/include/libavcodec/codec_par.h +0 -248
- package/include/libavcodec/d3d11va.h +0 -109
- package/include/libavcodec/defs.h +0 -337
- package/include/libavcodec/dirac.h +0 -135
- package/include/libavcodec/dv_profile.h +0 -82
- package/include/libavcodec/dxva2.h +0 -90
- package/include/libavcodec/jni.h +0 -67
- package/include/libavcodec/mediacodec.h +0 -103
- package/include/libavcodec/packet.h +0 -887
- package/include/libavcodec/qsv.h +0 -109
- package/include/libavcodec/vdpau.h +0 -171
- package/include/libavcodec/version.h +0 -45
- package/include/libavcodec/version_major.h +0 -52
- package/include/libavcodec/videotoolbox.h +0 -85
- package/include/libavcodec/vorbis_parser.h +0 -74
- package/include/libavdevice/avdevice.h +0 -397
- package/include/libavdevice/version.h +0 -45
- package/include/libavdevice/version_major.h +0 -43
- package/include/libavfilter/avfilter.h +0 -1379
- package/include/libavfilter/buffersink.h +0 -173
- package/include/libavfilter/buffersrc.h +0 -215
- package/include/libavfilter/version.h +0 -48
- package/include/libavfilter/version_major.h +0 -40
- package/include/libavformat/avformat.h +0 -3107
- package/include/libavformat/avio.h +0 -831
- package/include/libavformat/version.h +0 -47
- package/include/libavformat/version_major.h +0 -54
- package/include/libavutil/adler32.h +0 -63
- package/include/libavutil/aes.h +0 -69
- package/include/libavutil/aes_ctr.h +0 -99
- package/include/libavutil/ambient_viewing_environment.h +0 -72
- package/include/libavutil/attributes.h +0 -173
- package/include/libavutil/audio_fifo.h +0 -187
- package/include/libavutil/avassert.h +0 -78
- package/include/libavutil/avconfig.h +0 -6
- package/include/libavutil/avstring.h +0 -428
- package/include/libavutil/avutil.h +0 -362
- package/include/libavutil/base64.h +0 -72
- package/include/libavutil/blowfish.h +0 -82
- package/include/libavutil/bprint.h +0 -254
- package/include/libavutil/bswap.h +0 -105
- package/include/libavutil/buffer.h +0 -322
- package/include/libavutil/camellia.h +0 -70
- package/include/libavutil/cast5.h +0 -80
- package/include/libavutil/channel_layout.h +0 -751
- package/include/libavutil/common.h +0 -589
- package/include/libavutil/cpu.h +0 -145
- package/include/libavutil/crc.h +0 -102
- package/include/libavutil/csp.h +0 -150
- package/include/libavutil/des.h +0 -81
- package/include/libavutil/detection_bbox.h +0 -108
- package/include/libavutil/dict.h +0 -241
- package/include/libavutil/display.h +0 -109
- package/include/libavutil/dovi_meta.h +0 -396
- package/include/libavutil/downmix_info.h +0 -115
- package/include/libavutil/encryption_info.h +0 -205
- package/include/libavutil/error.h +0 -129
- package/include/libavutil/eval.h +0 -140
- package/include/libavutil/executor.h +0 -67
- package/include/libavutil/ffversion.h +0 -5
- package/include/libavutil/fifo.h +0 -242
- package/include/libavutil/file.h +0 -62
- package/include/libavutil/film_grain_params.h +0 -322
- package/include/libavutil/frame.h +0 -1175
- package/include/libavutil/hash.h +0 -264
- package/include/libavutil/hdr_dynamic_metadata.h +0 -376
- package/include/libavutil/hdr_dynamic_vivid_metadata.h +0 -346
- package/include/libavutil/hmac.h +0 -99
- package/include/libavutil/hwcontext.h +0 -598
- package/include/libavutil/hwcontext_cuda.h +0 -74
- package/include/libavutil/hwcontext_d3d11va.h +0 -178
- package/include/libavutil/hwcontext_d3d12va.h +0 -142
- package/include/libavutil/hwcontext_drm.h +0 -169
- package/include/libavutil/hwcontext_dxva2.h +0 -75
- package/include/libavutil/hwcontext_mediacodec.h +0 -61
- package/include/libavutil/hwcontext_opencl.h +0 -100
- package/include/libavutil/hwcontext_qsv.h +0 -87
- package/include/libavutil/hwcontext_vaapi.h +0 -117
- package/include/libavutil/hwcontext_vdpau.h +0 -44
- package/include/libavutil/hwcontext_videotoolbox.h +0 -106
- package/include/libavutil/hwcontext_vulkan.h +0 -382
- package/include/libavutil/iamf.h +0 -690
- package/include/libavutil/imgutils.h +0 -377
- package/include/libavutil/intfloat.h +0 -77
- package/include/libavutil/intreadwrite.h +0 -677
- package/include/libavutil/lfg.h +0 -81
- package/include/libavutil/log.h +0 -387
- package/include/libavutil/lzo.h +0 -66
- package/include/libavutil/macros.h +0 -80
- package/include/libavutil/mastering_display_metadata.h +0 -137
- package/include/libavutil/mathematics.h +0 -300
- package/include/libavutil/md5.h +0 -89
- package/include/libavutil/mem.h +0 -607
- package/include/libavutil/motion_vector.h +0 -57
- package/include/libavutil/murmur3.h +0 -115
- package/include/libavutil/opt.h +0 -1187
- package/include/libavutil/parseutils.h +0 -197
- package/include/libavutil/pixdesc.h +0 -440
- package/include/libavutil/pixelutils.h +0 -51
- package/include/libavutil/pixfmt.h +0 -716
- package/include/libavutil/random_seed.h +0 -57
- package/include/libavutil/rational.h +0 -225
- package/include/libavutil/rc4.h +0 -69
- package/include/libavutil/replaygain.h +0 -50
- package/include/libavutil/ripemd.h +0 -83
- package/include/libavutil/samplefmt.h +0 -269
- package/include/libavutil/sha.h +0 -90
- package/include/libavutil/sha512.h +0 -92
- package/include/libavutil/spherical.h +0 -243
- package/include/libavutil/stereo3d.h +0 -325
- package/include/libavutil/tea.h +0 -71
- package/include/libavutil/threadmessage.h +0 -115
- package/include/libavutil/time.h +0 -56
- package/include/libavutil/timecode.h +0 -199
- package/include/libavutil/timestamp.h +0 -85
- package/include/libavutil/tree.h +0 -137
- package/include/libavutil/twofish.h +0 -70
- package/include/libavutil/tx.h +0 -210
- package/include/libavutil/uuid.h +0 -146
- package/include/libavutil/version.h +0 -124
- package/include/libavutil/video_enc_params.h +0 -171
- package/include/libavutil/video_hint.h +0 -107
- package/include/libavutil/xtea.h +0 -94
- package/include/libswresample/swresample.h +0 -587
- package/include/libswresample/version.h +0 -46
- package/include/libswresample/version_major.h +0 -31
- package/include/libswscale/swscale.h +0 -460
- package/include/libswscale/version.h +0 -44
- package/include/libswscale/version_major.h +0 -35
- package/include/ogg/config_types.h +0 -26
- package/include/ogg/ogg.h +0 -209
- package/include/ogg/os_types.h +0 -158
- package/include/opus/opus.h +0 -1099
- package/include/opus/opus_defines.h +0 -830
- package/include/opus/opus_multistream.h +0 -660
- package/include/opus/opus_projection.h +0 -568
- package/include/opus/opus_types.h +0 -166
- package/include/svt-av1/EbDebugMacros.h +0 -88
- package/include/svt-av1/EbSvtAv1.h +0 -462
- package/include/svt-av1/EbSvtAv1Enc.h +0 -1112
- package/include/svt-av1/EbSvtAv1ErrorCodes.h +0 -67
- package/include/svt-av1/EbSvtAv1ExtFrameBuf.h +0 -64
- package/include/svt-av1/EbSvtAv1Formats.h +0 -126
- package/include/svt-av1/EbSvtAv1Metadata.h +0 -156
- package/include/vorbis/codec.h +0 -242
- package/include/vorbis/vorbisenc.h +0 -435
- package/include/vorbis/vorbisfile.h +0 -205
- package/include/vpx/vp8.h +0 -136
- package/include/vpx/vp8cx.h +0 -1118
- package/include/vpx/vp8dx.h +0 -228
- package/include/vpx/vpx_codec.h +0 -475
- package/include/vpx/vpx_decoder.h +0 -367
- package/include/vpx/vpx_encoder.h +0 -1150
- package/include/vpx/vpx_ext_ratectrl.h +0 -590
- package/include/vpx/vpx_frame_buffer.h +0 -83
- package/include/vpx/vpx_image.h +0 -221
- package/include/vpx/vpx_integer.h +0 -40
- package/include/vpx/vpx_tpl.h +0 -68
- /package/{include → lib/pkgconfig}/index.js +0 -0
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* This file is part of FFmpeg.
|
|
3
|
-
*
|
|
4
|
-
* FFmpeg is free software; you can redistribute it and/or
|
|
5
|
-
* modify it under the terms of the GNU Lesser General Public
|
|
6
|
-
* License as published by the Free Software Foundation; either
|
|
7
|
-
* version 2.1 of the License, or (at your option) any later version.
|
|
8
|
-
*
|
|
9
|
-
* FFmpeg is distributed in the hope that it will be useful,
|
|
10
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
-
* Lesser General Public License for more details.
|
|
13
|
-
*
|
|
14
|
-
* You should have received a copy of the GNU Lesser General Public
|
|
15
|
-
* License along with FFmpeg; if not, write to the Free Software
|
|
16
|
-
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
#ifndef AVCODEC_AVDCT_H
|
|
20
|
-
#define AVCODEC_AVDCT_H
|
|
21
|
-
|
|
22
|
-
#include "libavutil/opt.h"
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* AVDCT context.
|
|
26
|
-
* @note function pointers can be NULL if the specific features have been
|
|
27
|
-
* disabled at build time.
|
|
28
|
-
*/
|
|
29
|
-
typedef struct AVDCT {
|
|
30
|
-
const AVClass *av_class;
|
|
31
|
-
|
|
32
|
-
void (*idct)(int16_t *block /* align 16 */);
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* IDCT input permutation.
|
|
36
|
-
* Several optimized IDCTs need a permutated input (relative to the
|
|
37
|
-
* normal order of the reference IDCT).
|
|
38
|
-
* This permutation must be performed before the idct_put/add.
|
|
39
|
-
* Note, normally this can be merged with the zigzag/alternate scan<br>
|
|
40
|
-
* An example to avoid confusion:
|
|
41
|
-
* - (->decode coeffs -> zigzag reorder -> dequant -> reference IDCT -> ...)
|
|
42
|
-
* - (x -> reference DCT -> reference IDCT -> x)
|
|
43
|
-
* - (x -> reference DCT -> simple_mmx_perm = idct_permutation
|
|
44
|
-
* -> simple_idct_mmx -> x)
|
|
45
|
-
* - (-> decode coeffs -> zigzag reorder -> simple_mmx_perm -> dequant
|
|
46
|
-
* -> simple_idct_mmx -> ...)
|
|
47
|
-
*/
|
|
48
|
-
uint8_t idct_permutation[64];
|
|
49
|
-
|
|
50
|
-
void (*fdct)(int16_t *block /* align 16 */);
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* DCT algorithm.
|
|
55
|
-
* must use AVOptions to set this field.
|
|
56
|
-
*/
|
|
57
|
-
int dct_algo;
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* IDCT algorithm.
|
|
61
|
-
* must use AVOptions to set this field.
|
|
62
|
-
*/
|
|
63
|
-
int idct_algo;
|
|
64
|
-
|
|
65
|
-
void (*get_pixels)(int16_t *block /* align 16 */,
|
|
66
|
-
const uint8_t *pixels /* align 8 */,
|
|
67
|
-
ptrdiff_t line_size);
|
|
68
|
-
|
|
69
|
-
int bits_per_sample;
|
|
70
|
-
|
|
71
|
-
void (*get_pixels_unaligned)(int16_t *block /* align 16 */,
|
|
72
|
-
const uint8_t *pixels,
|
|
73
|
-
ptrdiff_t line_size);
|
|
74
|
-
} AVDCT;
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
* Allocates a AVDCT context.
|
|
78
|
-
* This needs to be initialized with avcodec_dct_init() after optionally
|
|
79
|
-
* configuring it with AVOptions.
|
|
80
|
-
*
|
|
81
|
-
* To free it use av_free()
|
|
82
|
-
*/
|
|
83
|
-
AVDCT *avcodec_dct_alloc(void);
|
|
84
|
-
int avcodec_dct_init(AVDCT *);
|
|
85
|
-
|
|
86
|
-
const AVClass *avcodec_dct_get_class(void);
|
|
87
|
-
|
|
88
|
-
#endif /* AVCODEC_AVDCT_H */
|
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* This file is part of FFmpeg.
|
|
3
|
-
*
|
|
4
|
-
* FFmpeg is free software; you can redistribute it and/or
|
|
5
|
-
* modify it under the terms of the GNU Lesser General Public
|
|
6
|
-
* License as published by the Free Software Foundation; either
|
|
7
|
-
* version 2.1 of the License, or (at your option) any later version.
|
|
8
|
-
*
|
|
9
|
-
* FFmpeg is distributed in the hope that it will be useful,
|
|
10
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
-
* Lesser General Public License for more details.
|
|
13
|
-
*
|
|
14
|
-
* You should have received a copy of the GNU Lesser General Public
|
|
15
|
-
* License along with FFmpeg; if not, write to the Free Software
|
|
16
|
-
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
#ifndef AVCODEC_AVFFT_H
|
|
20
|
-
#define AVCODEC_AVFFT_H
|
|
21
|
-
|
|
22
|
-
#include "libavutil/attributes.h"
|
|
23
|
-
#include "version_major.h"
|
|
24
|
-
#if FF_API_AVFFT
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* @file
|
|
28
|
-
* @ingroup lavc_fft
|
|
29
|
-
* FFT functions
|
|
30
|
-
*/
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* @defgroup lavc_fft FFT functions
|
|
34
|
-
* @ingroup lavc_misc
|
|
35
|
-
*
|
|
36
|
-
* @{
|
|
37
|
-
*/
|
|
38
|
-
|
|
39
|
-
typedef float FFTSample;
|
|
40
|
-
|
|
41
|
-
typedef struct FFTComplex {
|
|
42
|
-
FFTSample re, im;
|
|
43
|
-
} FFTComplex;
|
|
44
|
-
|
|
45
|
-
typedef struct FFTContext FFTContext;
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* Set up a complex FFT.
|
|
49
|
-
* @param nbits log2 of the length of the input array
|
|
50
|
-
* @param inverse if 0 perform the forward transform, if 1 perform the inverse
|
|
51
|
-
* @deprecated use av_tx_init from libavutil/tx.h with a type of AV_TX_FLOAT_FFT
|
|
52
|
-
*/
|
|
53
|
-
attribute_deprecated
|
|
54
|
-
FFTContext *av_fft_init(int nbits, int inverse);
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
* Do the permutation needed BEFORE calling ff_fft_calc().
|
|
58
|
-
* @deprecated without replacement
|
|
59
|
-
*/
|
|
60
|
-
attribute_deprecated
|
|
61
|
-
void av_fft_permute(FFTContext *s, FFTComplex *z);
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* Do a complex FFT with the parameters defined in av_fft_init(). The
|
|
65
|
-
* input data must be permuted before. No 1.0/sqrt(n) normalization is done.
|
|
66
|
-
* @deprecated use the av_tx_fn value returned by av_tx_init, which also does permutation
|
|
67
|
-
*/
|
|
68
|
-
attribute_deprecated
|
|
69
|
-
void av_fft_calc(FFTContext *s, FFTComplex *z);
|
|
70
|
-
|
|
71
|
-
attribute_deprecated
|
|
72
|
-
void av_fft_end(FFTContext *s);
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* @deprecated use av_tx_init from libavutil/tx.h with a type of AV_TX_FLOAT_MDCT,
|
|
76
|
-
* with a flag of AV_TX_FULL_IMDCT for a replacement to av_imdct_calc.
|
|
77
|
-
*/
|
|
78
|
-
attribute_deprecated
|
|
79
|
-
FFTContext *av_mdct_init(int nbits, int inverse, double scale);
|
|
80
|
-
attribute_deprecated
|
|
81
|
-
void av_imdct_calc(FFTContext *s, FFTSample *output, const FFTSample *input);
|
|
82
|
-
attribute_deprecated
|
|
83
|
-
void av_imdct_half(FFTContext *s, FFTSample *output, const FFTSample *input);
|
|
84
|
-
attribute_deprecated
|
|
85
|
-
void av_mdct_calc(FFTContext *s, FFTSample *output, const FFTSample *input);
|
|
86
|
-
attribute_deprecated
|
|
87
|
-
void av_mdct_end(FFTContext *s);
|
|
88
|
-
|
|
89
|
-
/* Real Discrete Fourier Transform */
|
|
90
|
-
|
|
91
|
-
enum RDFTransformType {
|
|
92
|
-
DFT_R2C,
|
|
93
|
-
IDFT_C2R,
|
|
94
|
-
IDFT_R2C,
|
|
95
|
-
DFT_C2R,
|
|
96
|
-
};
|
|
97
|
-
|
|
98
|
-
typedef struct RDFTContext RDFTContext;
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* Set up a real FFT.
|
|
102
|
-
* @param nbits log2 of the length of the input array
|
|
103
|
-
* @param trans the type of transform
|
|
104
|
-
*
|
|
105
|
-
* @deprecated use av_tx_init from libavutil/tx.h with a type of AV_TX_FLOAT_RDFT
|
|
106
|
-
*/
|
|
107
|
-
attribute_deprecated
|
|
108
|
-
RDFTContext *av_rdft_init(int nbits, enum RDFTransformType trans);
|
|
109
|
-
attribute_deprecated
|
|
110
|
-
void av_rdft_calc(RDFTContext *s, FFTSample *data);
|
|
111
|
-
attribute_deprecated
|
|
112
|
-
void av_rdft_end(RDFTContext *s);
|
|
113
|
-
|
|
114
|
-
/* Discrete Cosine Transform */
|
|
115
|
-
|
|
116
|
-
typedef struct DCTContext DCTContext;
|
|
117
|
-
|
|
118
|
-
enum DCTTransformType {
|
|
119
|
-
DCT_II = 0,
|
|
120
|
-
DCT_III,
|
|
121
|
-
DCT_I,
|
|
122
|
-
DST_I,
|
|
123
|
-
};
|
|
124
|
-
|
|
125
|
-
/**
|
|
126
|
-
* Set up DCT.
|
|
127
|
-
*
|
|
128
|
-
* @param nbits size of the input array:
|
|
129
|
-
* (1 << nbits) for DCT-II, DCT-III and DST-I
|
|
130
|
-
* (1 << nbits) + 1 for DCT-I
|
|
131
|
-
* @param type the type of transform
|
|
132
|
-
*
|
|
133
|
-
* @note the first element of the input of DST-I is ignored
|
|
134
|
-
*
|
|
135
|
-
* @deprecated use av_tx_init from libavutil/tx.h with an appropriate type of AV_TX_FLOAT_DCT
|
|
136
|
-
*/
|
|
137
|
-
attribute_deprecated
|
|
138
|
-
DCTContext *av_dct_init(int nbits, enum DCTTransformType type);
|
|
139
|
-
attribute_deprecated
|
|
140
|
-
void av_dct_calc(DCTContext *s, FFTSample *data);
|
|
141
|
-
attribute_deprecated
|
|
142
|
-
void av_dct_end (DCTContext *s);
|
|
143
|
-
|
|
144
|
-
/**
|
|
145
|
-
* @}
|
|
146
|
-
*/
|
|
147
|
-
|
|
148
|
-
#endif /* FF_API_AVFFT */
|
|
149
|
-
#endif /* AVCODEC_AVFFT_H */
|
package/include/libavcodec/bsf.h
DELETED
|
@@ -1,332 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Bitstream filters public API
|
|
3
|
-
*
|
|
4
|
-
* This file is part of FFmpeg.
|
|
5
|
-
*
|
|
6
|
-
* FFmpeg is free software; you can redistribute it and/or
|
|
7
|
-
* modify it under the terms of the GNU Lesser General Public
|
|
8
|
-
* License as published by the Free Software Foundation; either
|
|
9
|
-
* version 2.1 of the License, or (at your option) any later version.
|
|
10
|
-
*
|
|
11
|
-
* FFmpeg is distributed in the hope that it will be useful,
|
|
12
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
13
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
14
|
-
* Lesser General Public License for more details.
|
|
15
|
-
*
|
|
16
|
-
* You should have received a copy of the GNU Lesser General Public
|
|
17
|
-
* License along with FFmpeg; if not, write to the Free Software
|
|
18
|
-
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
19
|
-
*/
|
|
20
|
-
|
|
21
|
-
#ifndef AVCODEC_BSF_H
|
|
22
|
-
#define AVCODEC_BSF_H
|
|
23
|
-
|
|
24
|
-
#include "libavutil/dict.h"
|
|
25
|
-
#include "libavutil/log.h"
|
|
26
|
-
#include "libavutil/rational.h"
|
|
27
|
-
|
|
28
|
-
#include "codec_id.h"
|
|
29
|
-
#include "codec_par.h"
|
|
30
|
-
#include "packet.h"
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* @defgroup lavc_bsf Bitstream filters
|
|
34
|
-
* @ingroup libavc
|
|
35
|
-
*
|
|
36
|
-
* Bitstream filters transform encoded media data without decoding it. This
|
|
37
|
-
* allows e.g. manipulating various header values. Bitstream filters operate on
|
|
38
|
-
* @ref AVPacket "AVPackets".
|
|
39
|
-
*
|
|
40
|
-
* The bitstream filtering API is centered around two structures:
|
|
41
|
-
* AVBitStreamFilter and AVBSFContext. The former represents a bitstream filter
|
|
42
|
-
* in abstract, the latter a specific filtering process. Obtain an
|
|
43
|
-
* AVBitStreamFilter using av_bsf_get_by_name() or av_bsf_iterate(), then pass
|
|
44
|
-
* it to av_bsf_alloc() to create an AVBSFContext. Fill in the user-settable
|
|
45
|
-
* AVBSFContext fields, as described in its documentation, then call
|
|
46
|
-
* av_bsf_init() to prepare the filter context for use.
|
|
47
|
-
*
|
|
48
|
-
* Submit packets for filtering using av_bsf_send_packet(), obtain filtered
|
|
49
|
-
* results with av_bsf_receive_packet(). When no more input packets will be
|
|
50
|
-
* sent, submit a NULL AVPacket to signal the end of the stream to the filter.
|
|
51
|
-
* av_bsf_receive_packet() will then return trailing packets, if any are
|
|
52
|
-
* produced by the filter.
|
|
53
|
-
*
|
|
54
|
-
* Finally, free the filter context with av_bsf_free().
|
|
55
|
-
* @{
|
|
56
|
-
*/
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* The bitstream filter state.
|
|
60
|
-
*
|
|
61
|
-
* This struct must be allocated with av_bsf_alloc() and freed with
|
|
62
|
-
* av_bsf_free().
|
|
63
|
-
*
|
|
64
|
-
* The fields in the struct will only be changed (by the caller or by the
|
|
65
|
-
* filter) as described in their documentation, and are to be considered
|
|
66
|
-
* immutable otherwise.
|
|
67
|
-
*/
|
|
68
|
-
typedef struct AVBSFContext {
|
|
69
|
-
/**
|
|
70
|
-
* A class for logging and AVOptions
|
|
71
|
-
*/
|
|
72
|
-
const AVClass *av_class;
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* The bitstream filter this context is an instance of.
|
|
76
|
-
*/
|
|
77
|
-
const struct AVBitStreamFilter *filter;
|
|
78
|
-
|
|
79
|
-
/**
|
|
80
|
-
* Opaque filter-specific private data. If filter->priv_class is non-NULL,
|
|
81
|
-
* this is an AVOptions-enabled struct.
|
|
82
|
-
*/
|
|
83
|
-
void *priv_data;
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* Parameters of the input stream. This field is allocated in
|
|
87
|
-
* av_bsf_alloc(), it needs to be filled by the caller before
|
|
88
|
-
* av_bsf_init().
|
|
89
|
-
*/
|
|
90
|
-
AVCodecParameters *par_in;
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* Parameters of the output stream. This field is allocated in
|
|
94
|
-
* av_bsf_alloc(), it is set by the filter in av_bsf_init().
|
|
95
|
-
*/
|
|
96
|
-
AVCodecParameters *par_out;
|
|
97
|
-
|
|
98
|
-
/**
|
|
99
|
-
* The timebase used for the timestamps of the input packets. Set by the
|
|
100
|
-
* caller before av_bsf_init().
|
|
101
|
-
*/
|
|
102
|
-
AVRational time_base_in;
|
|
103
|
-
|
|
104
|
-
/**
|
|
105
|
-
* The timebase used for the timestamps of the output packets. Set by the
|
|
106
|
-
* filter in av_bsf_init().
|
|
107
|
-
*/
|
|
108
|
-
AVRational time_base_out;
|
|
109
|
-
} AVBSFContext;
|
|
110
|
-
|
|
111
|
-
typedef struct AVBitStreamFilter {
|
|
112
|
-
const char *name;
|
|
113
|
-
|
|
114
|
-
/**
|
|
115
|
-
* A list of codec ids supported by the filter, terminated by
|
|
116
|
-
* AV_CODEC_ID_NONE.
|
|
117
|
-
* May be NULL, in that case the bitstream filter works with any codec id.
|
|
118
|
-
*/
|
|
119
|
-
const enum AVCodecID *codec_ids;
|
|
120
|
-
|
|
121
|
-
/**
|
|
122
|
-
* A class for the private data, used to declare bitstream filter private
|
|
123
|
-
* AVOptions. This field is NULL for bitstream filters that do not declare
|
|
124
|
-
* any options.
|
|
125
|
-
*
|
|
126
|
-
* If this field is non-NULL, the first member of the filter private data
|
|
127
|
-
* must be a pointer to AVClass, which will be set by libavcodec generic
|
|
128
|
-
* code to this class.
|
|
129
|
-
*/
|
|
130
|
-
const AVClass *priv_class;
|
|
131
|
-
} AVBitStreamFilter;
|
|
132
|
-
|
|
133
|
-
/**
|
|
134
|
-
* @return a bitstream filter with the specified name or NULL if no such
|
|
135
|
-
* bitstream filter exists.
|
|
136
|
-
*/
|
|
137
|
-
const AVBitStreamFilter *av_bsf_get_by_name(const char *name);
|
|
138
|
-
|
|
139
|
-
/**
|
|
140
|
-
* Iterate over all registered bitstream filters.
|
|
141
|
-
*
|
|
142
|
-
* @param opaque a pointer where libavcodec will store the iteration state. Must
|
|
143
|
-
* point to NULL to start the iteration.
|
|
144
|
-
*
|
|
145
|
-
* @return the next registered bitstream filter or NULL when the iteration is
|
|
146
|
-
* finished
|
|
147
|
-
*/
|
|
148
|
-
const AVBitStreamFilter *av_bsf_iterate(void **opaque);
|
|
149
|
-
|
|
150
|
-
/**
|
|
151
|
-
* Allocate a context for a given bitstream filter. The caller must fill in the
|
|
152
|
-
* context parameters as described in the documentation and then call
|
|
153
|
-
* av_bsf_init() before sending any data to the filter.
|
|
154
|
-
*
|
|
155
|
-
* @param filter the filter for which to allocate an instance.
|
|
156
|
-
* @param[out] ctx a pointer into which the pointer to the newly-allocated context
|
|
157
|
-
* will be written. It must be freed with av_bsf_free() after the
|
|
158
|
-
* filtering is done.
|
|
159
|
-
*
|
|
160
|
-
* @return 0 on success, a negative AVERROR code on failure
|
|
161
|
-
*/
|
|
162
|
-
int av_bsf_alloc(const AVBitStreamFilter *filter, AVBSFContext **ctx);
|
|
163
|
-
|
|
164
|
-
/**
|
|
165
|
-
* Prepare the filter for use, after all the parameters and options have been
|
|
166
|
-
* set.
|
|
167
|
-
*
|
|
168
|
-
* @param ctx a AVBSFContext previously allocated with av_bsf_alloc()
|
|
169
|
-
*/
|
|
170
|
-
int av_bsf_init(AVBSFContext *ctx);
|
|
171
|
-
|
|
172
|
-
/**
|
|
173
|
-
* Submit a packet for filtering.
|
|
174
|
-
*
|
|
175
|
-
* After sending each packet, the filter must be completely drained by calling
|
|
176
|
-
* av_bsf_receive_packet() repeatedly until it returns AVERROR(EAGAIN) or
|
|
177
|
-
* AVERROR_EOF.
|
|
178
|
-
*
|
|
179
|
-
* @param ctx an initialized AVBSFContext
|
|
180
|
-
* @param pkt the packet to filter. The bitstream filter will take ownership of
|
|
181
|
-
* the packet and reset the contents of pkt. pkt is not touched if an error occurs.
|
|
182
|
-
* If pkt is empty (i.e. NULL, or pkt->data is NULL and pkt->side_data_elems zero),
|
|
183
|
-
* it signals the end of the stream (i.e. no more non-empty packets will be sent;
|
|
184
|
-
* sending more empty packets does nothing) and will cause the filter to output
|
|
185
|
-
* any packets it may have buffered internally.
|
|
186
|
-
*
|
|
187
|
-
* @return
|
|
188
|
-
* - 0 on success.
|
|
189
|
-
* - AVERROR(EAGAIN) if packets need to be retrieved from the filter (using
|
|
190
|
-
* av_bsf_receive_packet()) before new input can be consumed.
|
|
191
|
-
* - Another negative AVERROR value if an error occurs.
|
|
192
|
-
*/
|
|
193
|
-
int av_bsf_send_packet(AVBSFContext *ctx, AVPacket *pkt);
|
|
194
|
-
|
|
195
|
-
/**
|
|
196
|
-
* Retrieve a filtered packet.
|
|
197
|
-
*
|
|
198
|
-
* @param ctx an initialized AVBSFContext
|
|
199
|
-
* @param[out] pkt this struct will be filled with the contents of the filtered
|
|
200
|
-
* packet. It is owned by the caller and must be freed using
|
|
201
|
-
* av_packet_unref() when it is no longer needed.
|
|
202
|
-
* This parameter should be "clean" (i.e. freshly allocated
|
|
203
|
-
* with av_packet_alloc() or unreffed with av_packet_unref())
|
|
204
|
-
* when this function is called. If this function returns
|
|
205
|
-
* successfully, the contents of pkt will be completely
|
|
206
|
-
* overwritten by the returned data. On failure, pkt is not
|
|
207
|
-
* touched.
|
|
208
|
-
*
|
|
209
|
-
* @return
|
|
210
|
-
* - 0 on success.
|
|
211
|
-
* - AVERROR(EAGAIN) if more packets need to be sent to the filter (using
|
|
212
|
-
* av_bsf_send_packet()) to get more output.
|
|
213
|
-
* - AVERROR_EOF if there will be no further output from the filter.
|
|
214
|
-
* - Another negative AVERROR value if an error occurs.
|
|
215
|
-
*
|
|
216
|
-
* @note one input packet may result in several output packets, so after sending
|
|
217
|
-
* a packet with av_bsf_send_packet(), this function needs to be called
|
|
218
|
-
* repeatedly until it stops returning 0. It is also possible for a filter to
|
|
219
|
-
* output fewer packets than were sent to it, so this function may return
|
|
220
|
-
* AVERROR(EAGAIN) immediately after a successful av_bsf_send_packet() call.
|
|
221
|
-
*/
|
|
222
|
-
int av_bsf_receive_packet(AVBSFContext *ctx, AVPacket *pkt);
|
|
223
|
-
|
|
224
|
-
/**
|
|
225
|
-
* Reset the internal bitstream filter state. Should be called e.g. when seeking.
|
|
226
|
-
*/
|
|
227
|
-
void av_bsf_flush(AVBSFContext *ctx);
|
|
228
|
-
|
|
229
|
-
/**
|
|
230
|
-
* Free a bitstream filter context and everything associated with it; write NULL
|
|
231
|
-
* into the supplied pointer.
|
|
232
|
-
*/
|
|
233
|
-
void av_bsf_free(AVBSFContext **ctx);
|
|
234
|
-
|
|
235
|
-
/**
|
|
236
|
-
* Get the AVClass for AVBSFContext. It can be used in combination with
|
|
237
|
-
* AV_OPT_SEARCH_FAKE_OBJ for examining options.
|
|
238
|
-
*
|
|
239
|
-
* @see av_opt_find().
|
|
240
|
-
*/
|
|
241
|
-
const AVClass *av_bsf_get_class(void);
|
|
242
|
-
|
|
243
|
-
/**
|
|
244
|
-
* Structure for chain/list of bitstream filters.
|
|
245
|
-
* Empty list can be allocated by av_bsf_list_alloc().
|
|
246
|
-
*/
|
|
247
|
-
typedef struct AVBSFList AVBSFList;
|
|
248
|
-
|
|
249
|
-
/**
|
|
250
|
-
* Allocate empty list of bitstream filters.
|
|
251
|
-
* The list must be later freed by av_bsf_list_free()
|
|
252
|
-
* or finalized by av_bsf_list_finalize().
|
|
253
|
-
*
|
|
254
|
-
* @return Pointer to @ref AVBSFList on success, NULL in case of failure
|
|
255
|
-
*/
|
|
256
|
-
AVBSFList *av_bsf_list_alloc(void);
|
|
257
|
-
|
|
258
|
-
/**
|
|
259
|
-
* Free list of bitstream filters.
|
|
260
|
-
*
|
|
261
|
-
* @param lst Pointer to pointer returned by av_bsf_list_alloc()
|
|
262
|
-
*/
|
|
263
|
-
void av_bsf_list_free(AVBSFList **lst);
|
|
264
|
-
|
|
265
|
-
/**
|
|
266
|
-
* Append bitstream filter to the list of bitstream filters.
|
|
267
|
-
*
|
|
268
|
-
* @param lst List to append to
|
|
269
|
-
* @param bsf Filter context to be appended
|
|
270
|
-
*
|
|
271
|
-
* @return >=0 on success, negative AVERROR in case of failure
|
|
272
|
-
*/
|
|
273
|
-
int av_bsf_list_append(AVBSFList *lst, AVBSFContext *bsf);
|
|
274
|
-
|
|
275
|
-
/**
|
|
276
|
-
* Construct new bitstream filter context given it's name and options
|
|
277
|
-
* and append it to the list of bitstream filters.
|
|
278
|
-
*
|
|
279
|
-
* @param lst List to append to
|
|
280
|
-
* @param bsf_name Name of the bitstream filter
|
|
281
|
-
* @param options Options for the bitstream filter, can be set to NULL
|
|
282
|
-
*
|
|
283
|
-
* @return >=0 on success, negative AVERROR in case of failure
|
|
284
|
-
*/
|
|
285
|
-
int av_bsf_list_append2(AVBSFList *lst, const char * bsf_name, AVDictionary **options);
|
|
286
|
-
/**
|
|
287
|
-
* Finalize list of bitstream filters.
|
|
288
|
-
*
|
|
289
|
-
* This function will transform @ref AVBSFList to single @ref AVBSFContext,
|
|
290
|
-
* so the whole chain of bitstream filters can be treated as single filter
|
|
291
|
-
* freshly allocated by av_bsf_alloc().
|
|
292
|
-
* If the call is successful, @ref AVBSFList structure is freed and lst
|
|
293
|
-
* will be set to NULL. In case of failure, caller is responsible for
|
|
294
|
-
* freeing the structure by av_bsf_list_free()
|
|
295
|
-
*
|
|
296
|
-
* @param lst Filter list structure to be transformed
|
|
297
|
-
* @param[out] bsf Pointer to be set to newly created @ref AVBSFContext structure
|
|
298
|
-
* representing the chain of bitstream filters
|
|
299
|
-
*
|
|
300
|
-
* @return >=0 on success, negative AVERROR in case of failure
|
|
301
|
-
*/
|
|
302
|
-
int av_bsf_list_finalize(AVBSFList **lst, AVBSFContext **bsf);
|
|
303
|
-
|
|
304
|
-
/**
|
|
305
|
-
* Parse string describing list of bitstream filters and create single
|
|
306
|
-
* @ref AVBSFContext describing the whole chain of bitstream filters.
|
|
307
|
-
* Resulting @ref AVBSFContext can be treated as any other @ref AVBSFContext freshly
|
|
308
|
-
* allocated by av_bsf_alloc().
|
|
309
|
-
*
|
|
310
|
-
* @param str String describing chain of bitstream filters in format
|
|
311
|
-
* `bsf1[=opt1=val1:opt2=val2][,bsf2]`
|
|
312
|
-
* @param[out] bsf Pointer to be set to newly created @ref AVBSFContext structure
|
|
313
|
-
* representing the chain of bitstream filters
|
|
314
|
-
*
|
|
315
|
-
* @return >=0 on success, negative AVERROR in case of failure
|
|
316
|
-
*/
|
|
317
|
-
int av_bsf_list_parse_str(const char *str, AVBSFContext **bsf);
|
|
318
|
-
|
|
319
|
-
/**
|
|
320
|
-
* Get null/pass-through bitstream filter.
|
|
321
|
-
*
|
|
322
|
-
* @param[out] bsf Pointer to be set to new instance of pass-through bitstream filter
|
|
323
|
-
*
|
|
324
|
-
* @return
|
|
325
|
-
*/
|
|
326
|
-
int av_bsf_get_null_filter(AVBSFContext **bsf);
|
|
327
|
-
|
|
328
|
-
/**
|
|
329
|
-
* @}
|
|
330
|
-
*/
|
|
331
|
-
|
|
332
|
-
#endif // AVCODEC_BSF_H
|