[FFmpeg-cvslog] lavc: set AVSubtitle.pts if possible.

Nicolas George git at videolan.org
Sat Sep 15 16:24:46 CEST 2012


ffmpeg | branch: master | Nicolas George <nicolas.george at normalesup.org> | Sun Sep  9 16:00:06 2012 +0200| [9dd82724315d651891f2a1ed733c4de06e9cb07a] | committer: Nicolas George

lavc: set AVSubtitle.pts if possible.

If the packet has a PTS and the corresponding time base is known,
set the pts field of the decoded subtitle structure before the
call to the decoder. The decoder is still allowed to change the
PTS if necessary.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9dd82724315d651891f2a1ed733c4de06e9cb07a
---

 libavcodec/utils.c |    3 +++
 1 file changed, 3 insertions(+)

diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 99e012a..30b0d21 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -1701,6 +1701,9 @@ int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub,
     avctx->pkt = avpkt;
     *got_sub_ptr = 0;
     avcodec_get_subtitle_defaults(sub);
+    if (avctx->pkt_timebase.den && avpkt->pts != AV_NOPTS_VALUE)
+        sub->pts = av_rescale_q(avpkt->pts,
+                                avctx->pkt_timebase, AV_TIME_BASE_Q);
     ret = avctx->codec->decode(avctx, sub, got_sub_ptr, avpkt);
     if (*got_sub_ptr)
         avctx->frame_number++;



More information about the ffmpeg-cvslog mailing list