mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-27 13:10:37 +00:00
ffmpeg: Fix integer overflow with cur_dts being AV_NOPTS_VALUE
Since de0e219a8a
cur_dts is sometimes invalid
This commit is contained in:
parent
64e220beb5
commit
6770a9d689
6
ffmpeg.c
6
ffmpeg.c
@ -3382,8 +3382,12 @@ static OutputStream *choose_output(void)
|
||||
|
||||
for (i = 0; i < nb_output_streams; i++) {
|
||||
OutputStream *ost = output_streams[i];
|
||||
int64_t opts = av_rescale_q(ost->st->cur_dts, ost->st->time_base,
|
||||
int64_t opts = ost->st->cur_dts == AV_NOPTS_VALUE ? INT64_MIN :
|
||||
av_rescale_q(ost->st->cur_dts, ost->st->time_base,
|
||||
AV_TIME_BASE_Q);
|
||||
if (ost->st->cur_dts == AV_NOPTS_VALUE)
|
||||
av_log(NULL, AV_LOG_DEBUG, "cur_dts is invalid (this is harmless if it occurs once at the start per stream)\n");
|
||||
|
||||
if (!ost->finished && opts < opts_min) {
|
||||
opts_min = opts;
|
||||
ost_min = ost->unavailable ? NULL : ost;
|
||||
|
Loading…
Reference in New Issue
Block a user