annotate avutil.h @ 1022:7cfd5ddf993b libavutil

Move AVOptions from libavcodec to libavutil
author michael
date Sun, 26 Sep 2010 14:25:22 +0000
parents 4a16166d580e
children 7eb7bb8fe651
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
1 /*
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
2 * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
3 *
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
4 * This file is part of FFmpeg.
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
5 *
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
6 * FFmpeg is free software; you can redistribute it and/or
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
7 * modify it under the terms of the GNU Lesser General Public
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
8 * License as published by the Free Software Foundation; either
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
9 * version 2.1 of the License, or (at your option) any later version.
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
10 *
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
11 * FFmpeg is distributed in the hope that it will be useful,
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
14 * Lesser General Public License for more details.
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
15 *
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
16 * You should have received a copy of the GNU Lesser General Public
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
17 * License along with FFmpeg; if not, write to the Free Software
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
19 */
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
20
567
bd4052d9050c Globally rename the header inclusion guard names.
stefano
parents: 564
diff changeset
21 #ifndef AVUTIL_AVUTIL_H
bd4052d9050c Globally rename the header inclusion guard names.
stefano
parents: 564
diff changeset
22 #define AVUTIL_AVUTIL_H
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
23
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
24 /**
899
0795a743bda1 Remove explicit filename from Doxygen @file commands.
diego
parents: 894
diff changeset
25 * @file
466
f4fd038fcb58 misc spelling fixes
diego
parents: 459
diff changeset
26 * external API header
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
27 */
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
28
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
29
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
30 #define AV_STRINGIFY(s) AV_TOSTRING(s)
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
31 #define AV_TOSTRING(s) #s
823
d6e37d18a0ff Add macro AV_JOIN() for joining two tokens into one
mru
parents: 821
diff changeset
32
d6e37d18a0ff Add macro AV_JOIN() for joining two tokens into one
mru
parents: 821
diff changeset
33 #define AV_GLUE(a, b) a ## b
d6e37d18a0ff Add macro AV_JOIN() for joining two tokens into one
mru
parents: 821
diff changeset
34 #define AV_JOIN(a, b) AV_GLUE(a, b)
d6e37d18a0ff Add macro AV_JOIN() for joining two tokens into one
mru
parents: 821
diff changeset
35
821
ee9a0af0b0db Add an AV_PRAGMA() macro for constructing _Pragma() directives
mru
parents: 805
diff changeset
36 #define AV_PRAGMA(s) _Pragma(#s)
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
37
459
3a8b439cb980 less preprocessor magic in version number macros
mru
parents: 453
diff changeset
38 #define AV_VERSION_INT(a, b, c) (a<<16 | b<<8 | c)
3a8b439cb980 less preprocessor magic in version number macros
mru
parents: 453
diff changeset
39 #define AV_VERSION_DOT(a, b, c) a ##.## b ##.## c
3a8b439cb980 less preprocessor magic in version number macros
mru
parents: 453
diff changeset
40 #define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
453
5aec7a3442b1 Clean up lib* version definitions
mru
parents: 439
diff changeset
41
681
588652a81abe Bump major version of libavutil due to FIFO fixes.
michael
parents: 671
diff changeset
42 #define LIBAVUTIL_VERSION_MAJOR 50
1019
4a16166d580e 2nd try to fix av_log() repeated detection
michael
parents: 1018
diff changeset
43 #define LIBAVUTIL_VERSION_MINOR 28
973
877139dadde8 avutil: bump minor version for r23985 (install lfg.h)
ramiro
parents: 967
diff changeset
44 #define LIBAVUTIL_VERSION_MICRO 0
453
5aec7a3442b1 Clean up lib* version definitions
mru
parents: 439
diff changeset
45
459
3a8b439cb980 less preprocessor magic in version number macros
mru
parents: 453
diff changeset
46 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
3a8b439cb980 less preprocessor magic in version number macros
mru
parents: 453
diff changeset
47 LIBAVUTIL_VERSION_MINOR, \
3a8b439cb980 less preprocessor magic in version number macros
mru
parents: 453
diff changeset
48 LIBAVUTIL_VERSION_MICRO)
3a8b439cb980 less preprocessor magic in version number macros
mru
parents: 453
diff changeset
49 #define LIBAVUTIL_VERSION AV_VERSION(LIBAVUTIL_VERSION_MAJOR, \
3a8b439cb980 less preprocessor magic in version number macros
mru
parents: 453
diff changeset
50 LIBAVUTIL_VERSION_MINOR, \
3a8b439cb980 less preprocessor magic in version number macros
mru
parents: 453
diff changeset
51 LIBAVUTIL_VERSION_MICRO)
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
52 #define LIBAVUTIL_BUILD LIBAVUTIL_VERSION_INT
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
53
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
54 #define LIBAVUTIL_IDENT "Lavu" AV_STRINGIFY(LIBAVUTIL_VERSION)
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
55
545
fc868fc6439c Implement avutil_version().
stefano
parents: 513
diff changeset
56 /**
957
e34e8d654ded Fix grammar errors in documentation
mru
parents: 938
diff changeset
57 * Return the LIBAVUTIL_VERSION_INT constant.
545
fc868fc6439c Implement avutil_version().
stefano
parents: 513
diff changeset
58 */
fc868fc6439c Implement avutil_version().
stefano
parents: 513
diff changeset
59 unsigned avutil_version(void);
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
60
792
57659b3ef05c Add functions to return library license and library configuration.
diego
parents: 784
diff changeset
61 /**
957
e34e8d654ded Fix grammar errors in documentation
mru
parents: 938
diff changeset
62 * Return the libavutil build-time configuration.
792
57659b3ef05c Add functions to return library license and library configuration.
diego
parents: 784
diff changeset
63 */
805
98783d518982 Prefer "*FUNC_NAME(" over "* FUNC_NAME(" for XXX_configuration() and
stefano
parents: 799
diff changeset
64 const char *avutil_configuration(void);
792
57659b3ef05c Add functions to return library license and library configuration.
diego
parents: 784
diff changeset
65
57659b3ef05c Add functions to return library license and library configuration.
diego
parents: 784
diff changeset
66 /**
957
e34e8d654ded Fix grammar errors in documentation
mru
parents: 938
diff changeset
67 * Return the libavutil license.
792
57659b3ef05c Add functions to return library license and library configuration.
diego
parents: 784
diff changeset
68 */
805
98783d518982 Prefer "*FUNC_NAME(" over "* FUNC_NAME(" for XXX_configuration() and
stefano
parents: 799
diff changeset
69 const char *avutil_license(void);
792
57659b3ef05c Add functions to return library license and library configuration.
diego
parents: 784
diff changeset
70
894
6be1c118d9d6 Move AVMediaType from libavcodec to libavutil.
stefano
parents: 892
diff changeset
71 enum AVMediaType {
6be1c118d9d6 Move AVMediaType from libavcodec to libavutil.
stefano
parents: 892
diff changeset
72 AVMEDIA_TYPE_UNKNOWN = -1,
6be1c118d9d6 Move AVMediaType from libavcodec to libavutil.
stefano
parents: 892
diff changeset
73 AVMEDIA_TYPE_VIDEO,
6be1c118d9d6 Move AVMediaType from libavcodec to libavutil.
stefano
parents: 892
diff changeset
74 AVMEDIA_TYPE_AUDIO,
6be1c118d9d6 Move AVMediaType from libavcodec to libavutil.
stefano
parents: 892
diff changeset
75 AVMEDIA_TYPE_DATA,
6be1c118d9d6 Move AVMediaType from libavcodec to libavutil.
stefano
parents: 892
diff changeset
76 AVMEDIA_TYPE_SUBTITLE,
6be1c118d9d6 Move AVMediaType from libavcodec to libavutil.
stefano
parents: 892
diff changeset
77 AVMEDIA_TYPE_ATTACHMENT,
6be1c118d9d6 Move AVMediaType from libavcodec to libavutil.
stefano
parents: 892
diff changeset
78 AVMEDIA_TYPE_NB
6be1c118d9d6 Move AVMediaType from libavcodec to libavutil.
stefano
parents: 892
diff changeset
79 };
6be1c118d9d6 Move AVMediaType from libavcodec to libavutil.
stefano
parents: 892
diff changeset
80
1022
7cfd5ddf993b Move AVOptions from libavcodec to libavutil
michael
parents: 1019
diff changeset
81 #define FF_LAMBDA_SHIFT 7
7cfd5ddf993b Move AVOptions from libavcodec to libavutil
michael
parents: 1019
diff changeset
82 #define FF_LAMBDA_SCALE (1<<FF_LAMBDA_SHIFT)
7cfd5ddf993b Move AVOptions from libavcodec to libavutil
michael
parents: 1019
diff changeset
83 #define FF_QP2LAMBDA 118 ///< factor to convert from H.263 QP to lambda
7cfd5ddf993b Move AVOptions from libavcodec to libavutil
michael
parents: 1019
diff changeset
84 #define FF_LAMBDA_MAX (256*128-1)
7cfd5ddf993b Move AVOptions from libavcodec to libavutil
michael
parents: 1019
diff changeset
85
7cfd5ddf993b Move AVOptions from libavcodec to libavutil
michael
parents: 1019
diff changeset
86 #define FF_QUALITY_SCALE FF_LAMBDA_SCALE //FIXME maybe remove
7cfd5ddf993b Move AVOptions from libavcodec to libavutil
michael
parents: 1019
diff changeset
87
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
88 #include "common.h"
877
51fd7ea406a1 Move error code definitions from libavcodec/avcodec.h to
stefano
parents: 861
diff changeset
89 #include "error.h"
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
90 #include "mathematics.h"
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
91 #include "rational.h"
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
92 #include "intfloat_readwrite.h"
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
93 #include "log.h"
671
e847c4a1d29a Split avutil.h, move all the pixel format definitions to the new
stefano
parents: 670
diff changeset
94 #include "pixfmt.h"
267
d363937cc410 Reverting stray commit part II, r8156 had the base64 export patch mixed with the nutdec patch
lu_zero
parents:
diff changeset
95
567
bd4052d9050c Globally rename the header inclusion guard names.
stefano
parents: 564
diff changeset
96 #endif /* AVUTIL_AVUTIL_H */