On Mon, Sep 14, 2020 at 12:31 AM Jan Ekström <jee...@gmail.com> wrote: >
Diff between v1 and v2 follows: - Forgotten to be removed debug logs removed. - Still log debug_ts even in case of nullptr AVFrame or AV_NOPTS_VALUE. Decided against separating the logging because this way it's a self-contained package and the goto lets us do an early exit. Jan diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c index 5425ba245d..8874da9268 100644 --- a/fftools/ffmpeg.c +++ b/fftools/ffmpeg.c @@ -900,11 +900,11 @@ static int check_recording_time(OutputStream *ost) static double adjust_frame_pts_to_encoder_tb(OutputFile *of, OutputStream *ost, AVFrame *frame) { + double float_pts = AV_NOPTS_VALUE; // this is identical to frame.pts but with higher precision if (!frame || frame->pts == AV_NOPTS_VALUE || !ost->filter || !ost->filter->graph->graph) - return AV_NOPTS_VALUE; + goto early_exit; - double float_pts = AV_NOPTS_VALUE; // this is identical to frame.pts but with higher precision AVFilterContext *filter = ost->filter->filter; AVCodecContext *enc = ost->enc_ctx; @@ -914,13 +914,6 @@ static double adjust_frame_pts_to_encoder_tb(OutputFile *of, OutputStream *ost, int extra_bits = av_clip(29 - av_log2(tb.den), 0, 16); tb.den <<= extra_bits; - av_log(NULL, AV_LOG_VERBOSE, - "%s: frame pts: %"PRId64" start_time: %"PRId64", " - "filter_tb: %d/%d, tb: %d/%d\n", - __FUNCTION__, frame->pts, start_time, - filter_tb.num, filter_tb.den, - tb.num, tb.den); - float_pts = av_rescale_q(frame->pts, filter_tb, tb) - av_rescale_q(start_time, AV_TIME_BASE_Q, tb); @@ -932,15 +925,14 @@ static double adjust_frame_pts_to_encoder_tb(OutputFile *of, OutputStream *ost, av_rescale_q(frame->pts, filter_tb, enc->time_base) - av_rescale_q(start_time, AV_TIME_BASE_Q, enc->time_base); - av_log(NULL, AV_LOG_VERBOSE, - "%s: post-adjustment PTS: %"PRId64"\n", - __FUNCTION__, frame->pts); +early_exit: if (debug_ts) { av_log(NULL, AV_LOG_INFO, "filter -> pts:%s pts_time:%s exact:%f time_base:%d/%d\n", - av_ts2str(frame->pts), av_ts2timestr(frame->pts, &enc->time_base), - float_pts, - enc->time_base.num, enc->time_base.den); + frame ? av_ts2str(frame->pts) : "NULL", + frame ? av_ts2timestr(frame->pts, &enc->time_base) : "NULL", + float_pts, + enc->time_base.num, enc->time_base.den); } return float_pts; _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".