avformat/internal: Don't include avcodec.h
The general demuxing API uses parsers and decoders. Therefore FFStream contains pointers to AVCodecContexts and AVCodecParserContext and lavf/internal.h includes lavc/avcodec.h. Yet actually only a few files files really use these; and it is best when this number stays small. Therefore this commit uses opaque structs in lavf/internal.h for these contexts and stops including avcodec.h. This also avoids including lavc/codec_desc.h implicitly. All other headers are implicitly included as now (mostly through codec.h). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
@@ -23,7 +23,6 @@
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "libavcodec/avcodec.h"
|
||||
#include "libavcodec/packet_internal.h"
|
||||
|
||||
#include "avformat.h"
|
||||
@@ -221,7 +220,7 @@ typedef struct FFStream {
|
||||
/**
|
||||
* The codec context used by avformat_find_stream_info, the parser, etc.
|
||||
*/
|
||||
AVCodecContext *avctx;
|
||||
struct AVCodecContext *avctx;
|
||||
/**
|
||||
* 1 if avctx has been initialized with the values from the codec parameters
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user