Move AVPacket up a bit, so that structs/functions that include AVPacket can
themselves be reasonably positioned. Patch by Thilo Borgmann thilo.borgmann googlemail com, see mailinglist thread "[FFmpeg-devel] Google Summer of Code participation". Originally committed as revision 18350 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
b02d3aef94
commit
18c915eef4
@ -843,6 +843,55 @@ typedef struct AVPanScan{
|
|||||||
#define FF_BUFFER_HINTS_PRESERVE 0x04 // User must not alter buffer content.
|
#define FF_BUFFER_HINTS_PRESERVE 0x04 // User must not alter buffer content.
|
||||||
#define FF_BUFFER_HINTS_REUSABLE 0x08 // Codec will reuse the buffer (update).
|
#define FF_BUFFER_HINTS_REUSABLE 0x08 // Codec will reuse the buffer (update).
|
||||||
|
|
||||||
|
typedef struct AVPacket {
|
||||||
|
/**
|
||||||
|
* Presentation timestamp in time_base units; the time at which the
|
||||||
|
* decompressed packet will be presented to the user.
|
||||||
|
* Can be AV_NOPTS_VALUE if it is not stored in the file.
|
||||||
|
* pts MUST be larger or equal to dts as presentation cannot happen before
|
||||||
|
* decompression, unless one wants to view hex dumps. Some formats misuse
|
||||||
|
* the terms dts and pts/cts to mean something different. Such timestamps
|
||||||
|
* must be converted to true pts/dts before they are stored in AVPacket.
|
||||||
|
*/
|
||||||
|
int64_t pts;
|
||||||
|
/**
|
||||||
|
* Decompression timestamp in time_base units; the time at which the
|
||||||
|
* packet is decompressed.
|
||||||
|
* Can be AV_NOPTS_VALUE if it is not stored in the file.
|
||||||
|
*/
|
||||||
|
int64_t dts;
|
||||||
|
uint8_t *data;
|
||||||
|
int size;
|
||||||
|
int stream_index;
|
||||||
|
int flags;
|
||||||
|
/**
|
||||||
|
* Duration of this packet in time_base units, 0 if unknown.
|
||||||
|
* Equals next_pts - this_pts in presentation order.
|
||||||
|
*/
|
||||||
|
int duration;
|
||||||
|
void (*destruct)(struct AVPacket *);
|
||||||
|
void *priv;
|
||||||
|
int64_t pos; ///< byte position in stream, -1 if unknown
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Time difference in stream time base units from the pts of this
|
||||||
|
* packet to the point at which the output from the decoder has converged
|
||||||
|
* independent from the availability of previous frames. That is, the
|
||||||
|
* frames are virtually identical no matter if decoding started from
|
||||||
|
* the very first frame or from this keyframe.
|
||||||
|
* Is AV_NOPTS_VALUE if unknown.
|
||||||
|
* This field is not the display duration of the current packet.
|
||||||
|
*
|
||||||
|
* The purpose of this field is to allow seeking in streams that have no
|
||||||
|
* keyframes in the conventional sense. It corresponds to the
|
||||||
|
* recovery point SEI in H.264 and match_time_delta in NUT. It is also
|
||||||
|
* essential for some types of subtitle streams to ensure that all
|
||||||
|
* subtitles are correctly displayed after seeking.
|
||||||
|
*/
|
||||||
|
int64_t convergence_duration;
|
||||||
|
} AVPacket;
|
||||||
|
#define PKT_FLAG_KEY 0x0001
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Audio Video Frame.
|
* Audio Video Frame.
|
||||||
* New fields can be added to the end of FF_COMMON_FRAME with minor version
|
* New fields can be added to the end of FF_COMMON_FRAME with minor version
|
||||||
@ -2530,55 +2579,6 @@ typedef struct AVPaletteControl {
|
|||||||
} AVPaletteControl attribute_deprecated;
|
} AVPaletteControl attribute_deprecated;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
typedef struct AVPacket {
|
|
||||||
/**
|
|
||||||
* Presentation timestamp in time_base units; the time at which the
|
|
||||||
* decompressed packet will be presented to the user.
|
|
||||||
* Can be AV_NOPTS_VALUE if it is not stored in the file.
|
|
||||||
* pts MUST be larger or equal to dts as presentation cannot happen before
|
|
||||||
* decompression, unless one wants to view hex dumps. Some formats misuse
|
|
||||||
* the terms dts and pts/cts to mean something different. Such timestamps
|
|
||||||
* must be converted to true pts/dts before they are stored in AVPacket.
|
|
||||||
*/
|
|
||||||
int64_t pts;
|
|
||||||
/**
|
|
||||||
* Decompression timestamp in time_base units; the time at which the
|
|
||||||
* packet is decompressed.
|
|
||||||
* Can be AV_NOPTS_VALUE if it is not stored in the file.
|
|
||||||
*/
|
|
||||||
int64_t dts;
|
|
||||||
uint8_t *data;
|
|
||||||
int size;
|
|
||||||
int stream_index;
|
|
||||||
int flags;
|
|
||||||
/**
|
|
||||||
* Duration of this packet in time_base units, 0 if unknown.
|
|
||||||
* Equals next_pts - this_pts in presentation order.
|
|
||||||
*/
|
|
||||||
int duration;
|
|
||||||
void (*destruct)(struct AVPacket *);
|
|
||||||
void *priv;
|
|
||||||
int64_t pos; ///< byte position in stream, -1 if unknown
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Time difference in stream time base units from the pts of this
|
|
||||||
* packet to the point at which the output from the decoder has converged
|
|
||||||
* independent from the availability of previous frames. That is, the
|
|
||||||
* frames are virtually identical no matter if decoding started from
|
|
||||||
* the very first frame or from this keyframe.
|
|
||||||
* Is AV_NOPTS_VALUE if unknown.
|
|
||||||
* This field is not the display duration of the current packet.
|
|
||||||
*
|
|
||||||
* The purpose of this field is to allow seeking in streams that have no
|
|
||||||
* keyframes in the conventional sense. It corresponds to the
|
|
||||||
* recovery point SEI in H.264 and match_time_delta in NUT. It is also
|
|
||||||
* essential for some types of subtitle streams to ensure that all
|
|
||||||
* subtitles are correctly displayed after seeking.
|
|
||||||
*/
|
|
||||||
int64_t convergence_duration;
|
|
||||||
} AVPacket;
|
|
||||||
#define PKT_FLAG_KEY 0x0001
|
|
||||||
|
|
||||||
enum AVSubtitleType {
|
enum AVSubtitleType {
|
||||||
SUBTITLE_NONE,
|
SUBTITLE_NONE,
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user