Document pts/dts.
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 23 May 2008 17:56:45 +0000 (17:56 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 23 May 2008 17:56:45 +0000 (17:56 +0000)
Originally committed as revision 13265 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/avformat.h

index 03902d0..fd49442 100644 (file)
 /* packet functions */
 
 typedef struct AVPacket {
 /* packet functions */
 
 typedef struct AVPacket {
-    int64_t pts;                            ///< presentation time stamp in time_base units
-    int64_t dts;                            ///< decompression time stamp in time_base units
+    /**
+     * Presentation time stamp in time_base units.
+     * This is 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 can not happen before
+     * decompression, unless one wants to view hex dumps. Some formats misuse
+     * the terms dts and pts/cts to mean something different, these timestamps
+     * must be converted to true pts/dts before they are stored in AVPacket.
+     */
+    int64_t pts;
+    /**
+     * Decompression time stamp in time_base units.
+     * This is 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;
     uint8_t *data;
     int   size;
     int   stream_index;