diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2008-09-03 14:44:54 +0000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2008-09-03 14:44:54 +0000 |
commit | a2636c0fd5356827cd53b89eadde9962fbf7f1db (patch) | |
tree | 205e1f4b17c056d5225836541bfdbe90d6f0f1ff | |
parent | a82630deb28823de6cd7fc0b7832766034681bf2 (diff) | |
download | ffmpeg-a2636c0fd5356827cd53b89eadde9962fbf7f1db.tar.gz |
Add AVPacket.convergence_duration.
Originally committed as revision 15179 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | libavformat/avformat.h | 17 | ||||
-rw-r--r-- | libavformat/utils.c | 1 |
2 files changed, 17 insertions, 1 deletions
diff --git a/libavformat/avformat.h b/libavformat/avformat.h index e0cb8110e4..0db675886b 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -22,7 +22,7 @@ #define AVFORMAT_AVFORMAT_H #define LIBAVFORMAT_VERSION_MAJOR 52 -#define LIBAVFORMAT_VERSION_MINOR 21 +#define LIBAVFORMAT_VERSION_MINOR 22 #define LIBAVFORMAT_VERSION_MICRO 0 #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \ @@ -78,6 +78,21 @@ typedef struct AVPacket { void (*destruct)(struct AVPacket *); void *priv; int64_t pos; ///< byte position in stream, -1 if unknown + + /** + * This is the time difference in stream timebase units from the pts 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. + * + * 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 also is + * 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 diff --git a/libavformat/utils.c b/libavformat/utils.c index 5c268c79a3..87376485dd 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -251,6 +251,7 @@ void av_init_packet(AVPacket *pkt) pkt->dts = AV_NOPTS_VALUE; pkt->pos = -1; pkt->duration = 0; + pkt->convergence_duration = 0; pkt->flags = 0; pkt->stream_index = 0; pkt->destruct= av_destruct_packet_nofree; |