ffmpeg: port loglevel selection code to new dts workaround code

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
pull/16/head
Michael Niedermayer 12 years ago
parent 30c05f6b02
commit b2a1d92b7b
  1. 5
      ffmpeg.c

@ -616,14 +616,15 @@ static void write_frame(AVFormatContext *s, AVPacket *pkt, OutputStream *ost)
ost->last_mux_dts != AV_NOPTS_VALUE) {
int64_t max = ost->last_mux_dts + !(s->oformat->flags & AVFMT_TS_NONSTRICT);
if (pkt->dts < max) {
av_log(NULL, AV_LOG_WARNING, "Non-monotonous DTS in output stream "
int loglevel = max - pkt->dts > 2 || avctx->codec_type == AVMEDIA_TYPE_VIDEO ? AV_LOG_WARNING : AV_LOG_DEBUG;
av_log(NULL, loglevel, "Non-monotonous DTS in output stream "
"%d:%d; previous: %"PRId64", current: %"PRId64"; ",
ost->file_index, ost->st->index, ost->last_mux_dts, pkt->dts);
if (exit_on_error) {
av_log(NULL, AV_LOG_FATAL, "aborting.\n");
exit(1);
}
av_log(NULL, AV_LOG_WARNING, "changing to %"PRId64". This may result "
av_log(NULL, loglevel, "changing to %"PRId64". This may result "
"in incorrect timestamps in the output file.\n",
max);
if(pkt->pts >= pkt->dts)

Loading…
Cancel
Save