diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-06-08 19:22:34 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-06-08 20:02:22 +0200 |
commit | 2a91038e13a00897fde89ad65a36012985687793 (patch) | |
tree | 1a3391d3df3a690f12e0148d01073bd68d343ac9 | |
parent | 9e9ec5ad2ab91ca850c14b4c67f53c0d2c12fc17 (diff) | |
download | ffmpeg-2a91038e13a00897fde89ad65a36012985687793.tar.gz |
avformat/wavdec: Dont rescale timestamps but use exact comparission
Fixes integer overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavformat/wavdec.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libavformat/wavdec.c b/libavformat/wavdec.c index a94c0a9c0e..adf41ecd89 100644 --- a/libavformat/wavdec.c +++ b/libavformat/wavdec.c @@ -462,10 +462,10 @@ smv_retry: video_dts = s->streams[1]->cur_dts; if (audio_dts != AV_NOPTS_VALUE && video_dts != AV_NOPTS_VALUE) { - audio_dts = av_rescale_q(audio_dts, s->streams[0]->time_base, AV_TIME_BASE_Q); - video_dts = av_rescale_q(video_dts, s->streams[1]->time_base, AV_TIME_BASE_Q); /*We always return a video frame first to get the pixel format first*/ - wav->smv_last_stream = wav->smv_given_first ? video_dts > audio_dts : 0; + wav->smv_last_stream = wav->smv_given_first ? + av_compare_ts(video_dts, s->streams[1]->time_base, + audio_dts, s->streams[0]->time_base) > 0 : 0; wav->smv_given_first = 1; } wav->smv_last_stream = !wav->smv_last_stream; |