aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2010-03-05 03:54:39 +0000
committerMichael Niedermayer <michaelni@gmx.at>2010-03-05 03:54:39 +0000
commit3966a5746440205388770076914bdb3d6ce8add4 (patch)
treef49843c4de993cd497d6a507512d57f754c98e77
parentfca6259942b1c7c22f23d315db5caa414f9fdd06 (diff)
downloadffmpeg-3966a5746440205388770076914bdb3d6ce8add4.tar.gz
10l fix timestamps (lavfi update broke them)
Originally committed as revision 22218 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--ffplay.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/ffplay.c b/ffplay.c
index 424b550788..ce1d5a2cb9 100644
--- a/ffplay.c
+++ b/ffplay.c
@@ -1457,7 +1457,7 @@ static int output_picture2(VideoState *is, AVFrame *src_frame, double pts1, int6
return queue_picture(is, src_frame, pts, pos);
}
-static int get_video_frame(VideoState *is, AVFrame *frame, uint64_t *pts, AVPacket *pkt)
+static int get_video_frame(VideoState *is, AVFrame *frame, int64_t *pts, AVPacket *pkt)
{
int len1, got_picture, i;
@@ -1519,9 +1519,6 @@ static int get_video_frame(VideoState *is, AVFrame *frame, uint64_t *pts, AVPack
else
*pts= 0;
- /* put pts into units of 1/AV_TIME_BASE */
- *pts = av_rescale_q(pts,is->video_st->time_base, AV_TIME_BASE_Q);
-
// if (len1 < 0)
// break;
if (got_picture)
@@ -1556,7 +1553,7 @@ static int input_request_frame(AVFilterLink *link)
{
FilterPriv *priv = link->src->priv;
AVFilterPicRef *picref;
- uint64_t pts = 0;
+ int64_t pts = 0;
AVPacket pkt;
int ret;
@@ -1636,7 +1633,7 @@ static int output_query_formats(AVFilterContext *ctx)
}
static int get_filtered_video_frame(AVFilterContext *ctx, AVFrame *frame,
- uint64_t *pts)
+ int64_t *pts)
{
AVFilterPicRef *pic;
@@ -1674,7 +1671,7 @@ static int video_thread(void *arg)
{
VideoState *is = arg;
AVFrame *frame= avcodec_alloc_frame();
- uint64_t pts_int;
+ int64_t pts_int;
double pts;
int ret;
@@ -1737,8 +1734,7 @@ static int video_thread(void *arg)
if (!ret)
continue;
- pts = pts_int;
- pts /= AV_TIME_BASE;
+ pts = pts_int*av_q2d(is->video_st->time_base);
#if CONFIG_AVFILTER
ret = output_picture2(is, frame, pts, -1); /* fixme: unknown pos */