diff --git a/vp8/vp8_cx_iface.c b/vp8/vp8_cx_iface.c index b4bb679b5bb41dbe63459e4a72fefcc3b749a70f..8e50b7f1b0d75075e1c808dd7c7e0fca3d711a39 100644 --- a/vp8/vp8_cx_iface.c +++ b/vp8/vp8_cx_iface.c @@ -763,12 +763,13 @@ static vpx_codec_err_t vp8e_encode(vpx_codec_alg_priv_t *ctx, { pkt.data.frame.flags |= VPX_FRAME_IS_INVISIBLE; - // TODO: ideally this timestamp should be as close as - // possible to the prior PTS so that if a decoder uses - // pts to schedule when to do this, we start right after - // last frame was decoded. Maybe should be set to - // last time stamp. Invisible frames have no duration.. - pkt.data.frame.pts --; + // This timestamp should be as close as possible to the + // prior PTS so that if a decoder uses pts to schedule when + // to do this, we start right after last frame was decoded. + // Invisible frames have no duration. + pkt.data.frame.pts = ((cpi->last_time_stamp_seen + * ctx->cfg.g_timebase.den + round) + / ctx->cfg.g_timebase.num / 10000000) + 1; pkt.data.frame.duration = 0; }