diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2011-12-11 00:40:09 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2011-12-11 01:05:33 +0100 |
commit | 964912aba56a29acf25c9e216255ea44190f419a (patch) | |
tree | fa82f5555f1604d36380b186f1f89403d0b9c388 /libavformat/avformat.h | |
parent | cdba9b617f1a77f035416096f3ea91158ec5307b (diff) | |
parent | 2e87b4c51152e0241cae7f655d53920029a0e632 (diff) | |
download | ffmpeg-964912aba56a29acf25c9e216255ea44190f419a.tar.gz |
Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
Warn about avserver being broken.
avconv: drop code for special handling of avserver streams.
rawdec: don't set codec timebase.
lavf doxy: add muxing stuff to lavf_encoding group
lavf doxy: add demuxing stuff to lavf_decoding group
lavf doxy: expand/reword metadata API doxy.
lavf doxy: add installed headers to groups.
lavf doxy: add avio groups into the lavf_io group.
lavf doxy: rename lavf I/O group to lavf_io.
lavf doxy: add metadata docs to the main lavf group
ttadec: check channel count as read from extradata.
Add CLJR encoding and decoding regression tests
cljr: remove unused code
flacdec: Support for tracks in cuesheet metadata block
ptx: fix inverted check for sufficient data
flac muxer: fix writing of file header and STREAMINFO header from extradata
ptx: emit a warning on insufficient picture data
utvideo: add fate tests covering all codec variants
doc: update to refer to avconv
doc: remove some stale entries from the faq
...
Conflicts:
Changelog
avconv.c
doc/avconv.texi
doc/faq.texi
doc/ffplay.texi
doc/ffprobe.texi
doc/ffserver.texi
libavcodec/avcodec.h
libavcodec/cljr.c
libavformat/avformat.h
libavformat/riff.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/avformat.h')
-rw-r--r-- | libavformat/avformat.h | 124 |
1 files changed, 80 insertions, 44 deletions
diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 64252029d3..1f3506d158 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -22,6 +22,12 @@ #define AVFORMAT_AVFORMAT_H /** + * @file + * @ingroup libavf + * Main libavformat public API header + */ + +/** * @defgroup libavf I/O and Muxing/Demuxing Library * @{ * @@ -33,7 +39,7 @@ * @{ * @} * - * @defgroup lavf_proto I/O Read/Write + * @defgroup lavf_io I/O Read/Write * @{ * @} * @@ -86,10 +92,17 @@ struct AVFormatContext; /** * @defgroup metadata_api Public Metadata API * @{ + * @ingroup libavf * The metadata API allows libavformat to export metadata tags to a client - * application using a sequence of key/value pairs. Like all strings in FFmpeg, - * metadata must be stored as UTF-8 encoded Unicode. Note that metadata + * application when demuxing. Conversely it allows a client application to + * set metadata when muxing. + * + * Metadata is exported or set as pairs of key/value strings in the 'metadata' + * fields of the AVFormatContext, AVStream, AVChapter and AVProgram structs + * using the @ref lavu_dict "AVDictionary" API. Like all strings in FFmpeg, + * metadata is assumed to be UTF-8 encoded Unicode. Note that metadata * exported by demuxers isn't checked to be valid UTF-8 in most cases. + * * Important concepts to keep in mind: * - Keys are unique; there can never be 2 tags with the same key. This is * also meant semantically, i.e., a demuxer should not knowingly produce @@ -313,6 +326,10 @@ typedef struct AVFormatParameters { increasing timestamps, but they must still be monotonic */ +/** + * @addtogroup lavf_encoding + * @{ + */ typedef struct AVOutputFormat { const char *name; /** @@ -373,7 +390,14 @@ typedef struct AVOutputFormat { /* private fields */ struct AVOutputFormat *next; } AVOutputFormat; +/** + * @} + */ +/** + * @addtogroup lavf_decoding + * @{ + */ typedef struct AVInputFormat { /** * A comma separated list of short names for the format. New names @@ -495,6 +519,9 @@ typedef struct AVInputFormat { /* private fields */ struct AVInputFormat *next; } AVInputFormat; +/** + * @} + */ enum AVStreamParseType { AVSTREAM_PARSE_NONE, @@ -1281,7 +1308,46 @@ enum CodecID av_codec_get_id(const struct AVCodecTag * const *tags, unsigned int */ unsigned int av_codec_get_tag(const struct AVCodecTag * const *tags, enum CodecID id); -/* media file input */ +/** + * Allocate an AVFormatContext. + * avformat_free_context() can be used to free the context and everything + * allocated by the framework within it. + */ +AVFormatContext *avformat_alloc_context(void); + +#if FF_API_ALLOC_OUTPUT_CONTEXT +/** + * @deprecated deprecated in favor of avformat_alloc_output_context2() + */ +attribute_deprecated +AVFormatContext *avformat_alloc_output_context(const char *format, + AVOutputFormat *oformat, + const char *filename); +#endif + +/** + * Allocate an AVFormatContext for an output format. + * avformat_free_context() can be used to free the context and + * everything allocated by the framework within it. + * + * @param *ctx is set to the created format context, or to NULL in + * case of failure + * @param oformat format to use for allocating the context, if NULL + * format_name and filename are used instead + * @param format_name the name of output format to use for allocating the + * context, if NULL filename is used instead + * @param filename the name of the filename to use for allocating the + * context, may be NULL + * @return >= 0 in case of success, a negative AVERROR code in case of + * failure + */ +int avformat_alloc_output_context2(AVFormatContext **ctx, AVOutputFormat *oformat, + const char *format_name, const char *filename); + +/** + * @addtogroup lavf_decoding + * @{ + */ /** * Find AVInputFormat based on the short name of the input format. @@ -1390,42 +1456,6 @@ int avformat_open_input(AVFormatContext **ps, const char *filename, AVInputForma int av_demuxer_open(AVFormatContext *ic, AVFormatParameters *ap); -/** - * Allocate an AVFormatContext. - * avformat_free_context() can be used to free the context and everything - * allocated by the framework within it. - */ -AVFormatContext *avformat_alloc_context(void); - -#if FF_API_ALLOC_OUTPUT_CONTEXT -/** - * @deprecated deprecated in favor of avformat_alloc_output_context2() - */ -attribute_deprecated -AVFormatContext *avformat_alloc_output_context(const char *format, - AVOutputFormat *oformat, - const char *filename); -#endif - -/** - * Allocate an AVFormatContext for an output format. - * avformat_free_context() can be used to free the context and - * everything allocated by the framework within it. - * - * @param *ctx is set to the created format context, or to NULL in - * case of failure - * @param oformat format to use for allocating the context, if NULL - * format_name and filename are used instead - * @param format_name the name of output format to use for allocating the - * context, if NULL filename is used instead - * @param filename the name of the filename to use for allocating the - * context, may be NULL - * @return >= 0 in case of success, a negative AVERROR code in case of - * failure - */ -int avformat_alloc_output_context2(AVFormatContext **ctx, AVOutputFormat *oformat, - const char *format_name, const char *filename); - #if FF_API_FORMAT_PARAMETERS /** * Read packets of a media file to get stream information. This @@ -1617,6 +1647,9 @@ void av_close_input_stream(AVFormatContext *s); * @param s media file handle */ void av_close_input_file(AVFormatContext *s); +/** + * @} + */ /** * Free an AVFormatContext and all its streams. @@ -1708,9 +1741,6 @@ int64_t av_gen_search(AVFormatContext *s, int stream_index, int64_t (*read_timestamp)(struct AVFormatContext *, int , int64_t *, int64_t )); #endif -/** - * media file output - */ #if FF_API_FORMAT_PARAMETERS /** * @deprecated pass the options to avformat_write_header directly. @@ -1743,7 +1773,10 @@ void av_url_split(char *proto, int proto_size, int *port_ptr, char *path, int path_size, const char *url); - +/** + * @addtogroup lavf_encoding + * @{ + */ /** * Allocate the stream private data and write the stream header to * an output media file. @@ -1835,6 +1868,9 @@ int av_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out, * @return 0 if OK, AVERROR_xxx on error */ int av_write_trailer(AVFormatContext *s); +/** + * @} + */ /** * Get timing information for the data currently output. |