Browse Source

lavc: add some AVPacket doxy.

tags/n1.1
Anton Khirnov 12 years ago
parent
commit
0876c28080
1 changed files with 22 additions and 0 deletions
  1. +22
    -0
      libavcodec/avcodec.h

+ 22
- 0
libavcodec/avcodec.h View File

@@ -872,6 +872,28 @@ enum AVPacketSideDataType {
AV_PKT_DATA_H263_MB_INFO, AV_PKT_DATA_H263_MB_INFO,
}; };


/**
* This structure stores compressed data. It is typically exported by demuxers
* and then passed as input to decoders, or received as output from encoders and
* then passed to muxers.
*
* For video, it should typically contain one compressed frame. For audio it may
* contain several compressed frames.
*
* AVPacket is one of the few structs in Libav, whose size is a part of public
* ABI. Thus it may be allocated on stack and no new fields can be added to it
* without libavcodec and libavformat major bump.
*
* The semantics of data ownership depends on the destruct field.
* If it is set, the packet data is dynamically allocated and is valid
* indefinitely until av_free_packet() is called (which in turn calls the
* destruct callback to free the data). If destruct is not set, the packet data
* is typically backed by some static buffer somewhere and is only valid for a
* limited time (e.g. until the next read call when demuxing).
*
* The side data is always allocated with av_malloc() and is freed in
* av_free_packet().
*/
typedef struct AVPacket { typedef struct AVPacket {
/** /**
* Presentation timestamp in AVStream->time_base units; the time at which * Presentation timestamp in AVStream->time_base units; the time at which


Loading…
Cancel
Save