From d0ab58507480dde81c7127f1eea29e10f91eb4b6 Mon Sep 17 00:00:00 2001 From: Justin Ruggles Date: Fri, 13 Jan 2012 14:04:11 -0500 Subject: [PATCH] vqf: set packet duration Fixes timestamp calculation. The FATE reference is updated because timestamp calculations are now more accurate. Previous timestamps were based on average bit rate. --- libavformat/vqf.c | 3 ++- tests/ref/fate/vqf-demux | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/libavformat/vqf.c b/libavformat/vqf.c index b9fa8be4f3..14085b9a52 100644 --- a/libavformat/vqf.c +++ b/libavformat/vqf.c @@ -201,7 +201,7 @@ static int vqf_read_header(AVFormatContext *s) return -1; } c->frame_bit_len = st->codec->bit_rate*size/st->codec->sample_rate; - avpriv_set_pts_info(st, 64, 1, st->codec->sample_rate); + avpriv_set_pts_info(st, 64, size, st->codec->sample_rate); /* put first 12 bytes of COMM chunk in extradata */ if (!(st->codec->extradata = av_malloc(12 + FF_INPUT_BUFFER_PADDING_SIZE))) @@ -225,6 +225,7 @@ static int vqf_read_packet(AVFormatContext *s, AVPacket *pkt) pkt->pos = avio_tell(s->pb); pkt->stream_index = 0; + pkt->duration = 1; pkt->data[0] = 8 - c->remaining_bits; // Number of bits to skip pkt->data[1] = c->last_frame_bits; diff --git a/tests/ref/fate/vqf-demux b/tests/ref/fate/vqf-demux index 3d4cd3dd78..3acae60f5a 100644 --- a/tests/ref/fate/vqf-demux +++ b/tests/ref/fate/vqf-demux @@ -1 +1 @@ -178a10705baabc5b82bd79240f38a700 +d72fb75fb22f4bcc94a1dc7af5356ec1