aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2007-12-20 09:43:01 +0000
committerMichael Niedermayer <michaelni@gmx.at>2007-12-20 09:43:01 +0000
commit252f17e292064da25a82c99bf1f752ed5fedd434 (patch)
tree6268c50c933231b104c5c72e996833af0102c77f
parent1408352ada60d5a174b48d547114bb086812fcdb (diff)
downloadffmpeg-252f17e292064da25a82c99bf1f752ed5fedd434.tar.gz
Document structure change rules with relation to ABI/API.
Originally committed as revision 11281 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavcodec/avcodec.h6
-rw-r--r--libavformat/avformat.h8
2 files changed, 12 insertions, 2 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index a32f961403..98d1489f34 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -753,7 +753,11 @@ typedef struct AVFrame {
#define DEFAULT_FRAME_RATE_BASE 1001000
/**
- * main external API structure
+ * main external API structure.
+ * New fields can be added to the end with minor version bumps.
+ * Removial, reordering and changes to existing fields require a Major
+ * version bump.
+ * sizeof(AVCodecContext) must not be used outside libav*
*/
typedef struct AVCodecContext {
/**
diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index c0ad4a6613..bbe818f29d 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -358,7 +358,13 @@ typedef struct AVProgram {
#define MAX_STREAMS 20
-/* format I/O context */
+/**
+ * format I/O context.
+ * New fields can be added to the end with minor version bumps.
+ * Removial, reordering and changes to existing fields require a Major
+ * version bump.
+ * sizeof(AVFormatContext) must not be used outside libav*
+ */
typedef struct AVFormatContext {
const AVClass *av_class; /**< set by av_alloc_format_context */
/* can only be iformat or oformat, not both at the same time */