[FFmpeg-cvslog] ffmpeg: fix assumed decoded_frame->pts timebase
Michael Niedermayer
git at videolan.org
Thu Jul 26 18:08:14 CEST 2012
ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Thu Jul 26 17:56:07 2012 +0200| [9b1fdb1c5ae3916d8796f7b96377ba20e18dbd47] | committer: Michael Niedermayer
ffmpeg: fix assumed decoded_frame->pts timebase
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9b1fdb1c5ae3916d8796f7b96377ba20e18dbd47
---
ffmpeg.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/ffmpeg.c b/ffmpeg.c
index 84efe0d..b2dc463 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -2418,9 +2418,9 @@ static int decode_audio(InputStream *ist, AVPacket *pkt, int *got_output)
/* if the decoder provides a pts, use it instead of the last packet pts.
the decoder could be delaying output by a packet or more. */
- if (decoded_frame->pts != AV_NOPTS_VALUE)
- ist->dts = ist->next_dts = ist->pts = ist->next_pts = decoded_frame->pts;
- else if (decoded_frame->pkt_pts != AV_NOPTS_VALUE) {
+ if (decoded_frame->pts != AV_NOPTS_VALUE) {
+ ist->dts = ist->next_dts = ist->pts = ist->next_pts = av_rescale_q(decoded_frame->pts, avctx->time_base, AV_TIME_BASE_Q);
+ } else if (decoded_frame->pkt_pts != AV_NOPTS_VALUE) {
decoded_frame->pts = decoded_frame->pkt_pts;
pkt->pts = AV_NOPTS_VALUE;
} else if (pkt->pts != AV_NOPTS_VALUE) {
More information about the ffmpeg-cvslog
mailing list