X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Favi.h;h=b4e551971aa15c1fbf467637cb82006ed007cd82;hb=13ff92d19706d17f876ff676591dace0b3e34794;hp=9dfbf324c8b7f19094defbaa2ddba284dba4b6b6;hpb=115329f16062074e11ccf3b89ead6176606c9696;p=ffmpeg diff --git a/libavformat/avi.h b/libavformat/avi.h index 9dfbf324c8b..b4e551971aa 100644 --- a/libavformat/avi.h +++ b/libavformat/avi.h @@ -1,43 +1,47 @@ -#ifndef FFMPEG_AVI_H -#define FFMPEG_AVI_H - -#include "avcodec.h" - -#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 +/* + * copyright (c) 2001 Fabrice Bellard + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef AVFORMAT_AVI_H +#define AVFORMAT_AVI_H + +#include "metadata.h" + +#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 #define AVI_MAX_RIFF_SIZE 0x40000000LL #define AVI_MASTER_INDEX_SIZE 256 +#define AVI_MAX_STREAM_COUNT 100 /* index flags */ #define AVIIF_INDEX 0x10 -offset_t start_tag(ByteIOContext *pb, const char *tag); -void end_tag(ByteIOContext *pb, offset_t start); - -typedef struct CodecTag { - int id; - unsigned int tag; - unsigned int invalid_asf : 1; -} CodecTag; - -void put_bmp_header(ByteIOContext *pb, AVCodecContext *enc, const CodecTag *tags, int for_asf); -int put_wav_header(ByteIOContext *pb, AVCodecContext *enc); -int wav_codec_get_id(unsigned int tag, int bps); -void get_wav_header(ByteIOContext *pb, AVCodecContext *codec, int size); - -extern const CodecTag codec_bmp_tags[]; -extern const CodecTag codec_wav_tags[]; +extern const AVMetadataConv ff_avi_metadata_conv[]; -unsigned int codec_get_tag(const CodecTag *tags, int id); -enum CodecID codec_get_id(const CodecTag *tags, unsigned int tag); -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); +/** + * A list of AVI info tags. + */ +extern const char ff_avi_tags[][5]; -#endif /* FFMPEG_AVI_H */ +#endif /* AVFORMAT_AVI_H */