2003-04-23 18:38:34 +00:00
|
|
|
#ifndef FFMPEG_AVI_H
|
|
|
|
#define FFMPEG_AVI_H
|
|
|
|
|
|
|
|
#include "avcodec.h"
|
2001-07-22 14:18:56 +00:00
|
|
|
|
|
|
|
#define AVIF_HASINDEX 0x00000010 // Index at end of file?
|
|
|
|
#define AVIF_MUSTUSEINDEX 0x00000020
|
|
|
|
#define AVIF_ISINTERLEAVED 0x00000100
|
|
|
|
#define AVIF_TRUSTCKTYPE 0x00000800 // Use CKType to find key frames?
|
|
|
|
#define AVIF_WASCAPTUREFILE 0x00010000
|
|
|
|
#define AVIF_COPYRIGHTED 0x00020000
|
|
|
|
|
2003-04-08 09:51:15 +00:00
|
|
|
#define AVI_MAX_RIFF_SIZE 0x40000000LL
|
2003-04-23 02:04:40 +00:00
|
|
|
#define AVI_MASTER_INDEX_SIZE 256
|
2003-04-08 09:51:15 +00:00
|
|
|
|
2003-11-10 18:48:33 +00:00
|
|
|
/* index flags */
|
|
|
|
#define AVIIF_INDEX 0x10
|
|
|
|
|
2002-11-11 09:07:32 +00:00
|
|
|
offset_t start_tag(ByteIOContext *pb, const char *tag);
|
2001-07-22 14:18:56 +00:00
|
|
|
void end_tag(ByteIOContext *pb, offset_t start);
|
|
|
|
|
|
|
|
typedef struct CodecTag {
|
|
|
|
int id;
|
|
|
|
unsigned int tag;
|
2002-10-30 03:02:00 +00:00
|
|
|
unsigned int invalid_asf : 1;
|
2001-07-22 14:18:56 +00:00
|
|
|
} CodecTag;
|
|
|
|
|
2002-11-11 09:07:32 +00:00
|
|
|
void put_bmp_header(ByteIOContext *pb, AVCodecContext *enc, const CodecTag *tags, int for_asf);
|
2002-04-08 20:58:56 +00:00
|
|
|
int put_wav_header(ByteIOContext *pb, AVCodecContext *enc);
|
|
|
|
int wav_codec_get_id(unsigned int tag, int bps);
|
2003-03-12 01:35:47 +00:00
|
|
|
void get_wav_header(ByteIOContext *pb, AVCodecContext *codec, int size);
|
2002-04-08 20:58:56 +00:00
|
|
|
|
2002-11-11 09:07:32 +00:00
|
|
|
extern const CodecTag codec_bmp_tags[];
|
|
|
|
extern const CodecTag codec_wav_tags[];
|
2001-07-22 14:18:56 +00:00
|
|
|
|
2002-04-08 15:07:42 +00:00
|
|
|
unsigned int codec_get_tag(const CodecTag *tags, int id);
|
2003-04-23 08:56:14 +00:00
|
|
|
enum CodecID codec_get_id(const CodecTag *tags, unsigned int tag);
|
2003-09-08 20:04:44 +00:00
|
|
|
unsigned int codec_get_bmp_tag(int id);
|
|
|
|
unsigned int codec_get_wav_tag(int id);
|
|
|
|
enum CodecID codec_get_bmp_id(unsigned int tag);
|
|
|
|
enum CodecID codec_get_wav_id(unsigned int tag);
|
2003-04-23 18:38:34 +00:00
|
|
|
|
|
|
|
#endif /* FFMPEG_AVI_H */
|