aboutsummaryrefslogtreecommitdiff
path: root/ffmpeg.c
diff options
context:
space:
mode:
authorMichael Niedermayer2011-05-10 17:31:32 +0200
committerMichael Niedermayer2011-05-10 17:31:32 +0200
commiteeaba924b790808de03674a4104d34ea8af52e72 (patch)
tree36d012f86eea1da8cfa54298db62e48f3de8274d /ffmpeg.c
parent7bea13f111746eb7b34caa2cda46cc621728ee2a (diff)
ffmpeg: Fix -t with files that do not have any timestamps.
This for example fixes -t with some frext h264 reference streams. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'ffmpeg.c')
-rw-r--r--ffmpeg.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/ffmpeg.c b/ffmpeg.c
index aa3c33d709..450fc616c9 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -2700,7 +2700,11 @@ static int transcode(AVFormatContext **output_files,
/* finish if recording time exhausted */
if (recording_time != INT64_MAX &&
- av_compare_ts(pkt.pts, ist->st->time_base, recording_time + start_time, (AVRational){1, 1000000}) >= 0) {
+ (pkt.pts != AV_NOPTS_VALUE || pkt.dts != AV_NOPTS_VALUE ?
+ av_compare_ts(pkt.pts, ist->st->time_base, recording_time + start_time, (AVRational){1, 1000000})
+ :
+ av_compare_ts(ist->pts, AV_TIME_BASE_Q, recording_time + start_time, (AVRational){1, 1000000})
+ )>= 0) {
ist->is_past_recording_time = 1;
goto discard_packet;
}