Mercurial > libavformat.hg
annotate riff.h @ 3706:590e8cbe6d77 libavformat
Support Electronic Arts files containing MPEG2VIDEO.
author | pross |
---|---|
date | Tue, 12 Aug 2008 08:32:59 +0000 |
parents | 6f61c3b36632 |
children | 1b6245500d8c |
rev | line source |
---|---|
1306
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
1 /* |
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
2 * RIFF codec tags |
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
3 * copyright (c) 2000 Fabrice Bellard |
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
4 * |
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
5 * This file is part of FFmpeg. |
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
6 * |
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
7 * FFmpeg is free software; you can redistribute it and/or |
1306
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
8 * modify it under the terms of the GNU Lesser General Public |
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
9 * License as published by the Free Software Foundation; either |
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
10 * version 2.1 of the License, or (at your option) any later version. |
1306
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
11 * |
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
12 * FFmpeg is distributed in the hope that it will be useful, |
1306
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
15 * Lesser General Public License for more details. |
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
16 * |
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
17 * You should have received a copy of the GNU Lesser General Public |
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
18 * License along with FFmpeg; if not, write to the Free Software |
1306
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
20 */ |
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
1172
diff
changeset
|
21 |
1677
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
22 /** |
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
23 * @file riff.h |
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
24 * internal header for RIFF based (de)muxers |
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
25 * do NOT include this in end user applications |
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
26 */ |
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
27 |
2620
792383dd085e
Add FFMPEG_ prefix to all multiple inclusion guards.
diego
parents:
2230
diff
changeset
|
28 #ifndef FFMPEG_RIFF_H |
792383dd085e
Add FFMPEG_ prefix to all multiple inclusion guards.
diego
parents:
2230
diff
changeset
|
29 #define FFMPEG_RIFF_H |
1172
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
30 |
3286 | 31 #include "libavcodec/avcodec.h" |
2171 | 32 #include "avio.h" |
33 | |
1172
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
34 offset_t start_tag(ByteIOContext *pb, const char *tag); |
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
35 void end_tag(ByteIOContext *pb, offset_t start); |
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
36 |
1677
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
37 typedef struct AVCodecTag { |
1172
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
38 int id; |
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
39 unsigned int tag; |
1677
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
40 } AVCodecTag; |
1172
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
41 |
1677
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
42 void put_bmp_header(ByteIOContext *pb, AVCodecContext *enc, const AVCodecTag *tags, int for_asf); |
1172
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
43 int put_wav_header(ByteIOContext *pb, AVCodecContext *enc); |
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
44 int wav_codec_get_id(unsigned int tag, int bps); |
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
45 void get_wav_header(ByteIOContext *pb, AVCodecContext *codec, int size); |
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
46 |
1677
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
47 extern const AVCodecTag codec_bmp_tags[]; |
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
48 extern const AVCodecTag codec_wav_tags[]; |
1172
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
49 |
1677
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
50 unsigned int codec_get_tag(const AVCodecTag *tags, int id); |
2a85c82b8538
add codec_id <-> codec_tag tables to AVIn/OutputFormat
michael
parents:
1358
diff
changeset
|
51 enum CodecID codec_get_id(const AVCodecTag *tags, unsigned int tag); |
1172
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
52 void ff_parse_specific_params(AVCodecContext *stream, int *au_rate, int *au_ssize, int *au_scale); |
6a5e58d2114b
move common stuff from avienc.c and wav.c to new file riff.c
mru
parents:
diff
changeset
|
53 |
2620
792383dd085e
Add FFMPEG_ prefix to all multiple inclusion guards.
diego
parents:
2230
diff
changeset
|
54 #endif /* FFMPEG_RIFF_H */ |