1/*
2 * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
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 AVUTIL_AVUTIL_H
22#define AVUTIL_AVUTIL_H
23
24/**
25 * @file
26 * external API header
27 */
28
29
30#define AV_STRINGIFY(s)         AV_TOSTRING(s)
31#define AV_TOSTRING(s) #s
32
33#define AV_GLUE(a, b) a ## b
34#define AV_JOIN(a, b) AV_GLUE(a, b)
35
36#define AV_PRAGMA(s) _Pragma(#s)
37
38#define AV_VERSION_INT(a, b, c) (a<<16 | b<<8 | c)
39#define AV_VERSION_DOT(a, b, c) a ##.## b ##.## c
40#define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
41
42#define LIBAVUTIL_VERSION_MAJOR 50
43#define LIBAVUTIL_VERSION_MINOR 15
44#define LIBAVUTIL_VERSION_MICRO  1
45
46#define LIBAVUTIL_VERSION_INT   AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
47                                               LIBAVUTIL_VERSION_MINOR, \
48                                               LIBAVUTIL_VERSION_MICRO)
49#define LIBAVUTIL_VERSION       AV_VERSION(LIBAVUTIL_VERSION_MAJOR,     \
50                                           LIBAVUTIL_VERSION_MINOR,     \
51                                           LIBAVUTIL_VERSION_MICRO)
52#define LIBAVUTIL_BUILD         LIBAVUTIL_VERSION_INT
53
54#define LIBAVUTIL_IDENT         "Lavu" AV_STRINGIFY(LIBAVUTIL_VERSION)
55
56/**
57 * Returns the LIBAVUTIL_VERSION_INT constant.
58 */
59unsigned avutil_version(void);
60
61/**
62 * Returns the libavutil build-time configuration.
63 */
64const char *avutil_configuration(void);
65
66/**
67 * Returns the libavutil license.
68 */
69const char *avutil_license(void);
70
71enum AVMediaType {
72    AVMEDIA_TYPE_UNKNOWN = -1,
73    AVMEDIA_TYPE_VIDEO,
74    AVMEDIA_TYPE_AUDIO,
75    AVMEDIA_TYPE_DATA,
76    AVMEDIA_TYPE_SUBTITLE,
77    AVMEDIA_TYPE_ATTACHMENT,
78    AVMEDIA_TYPE_NB
79};
80
81#include "common.h"
82#include "error.h"
83#include "mathematics.h"
84#include "rational.h"
85#include "intfloat_readwrite.h"
86#include "log.h"
87#include "pixfmt.h"
88
89#endif /* AVUTIL_AVUTIL_H */
90