From 6202e2fede75df92cbc374a3f7d6893d0c5ac721 Mon Sep 17 00:00:00 2001 From: Vittorio Giovara Date: Sat, 19 Mar 2016 17:07:37 -0400 Subject: indeo4: Rework stream analysis report * Change log level from error to debug * Print report after the first decoded frame, not at the end of decoding * Drop macro guard and use a context variable instead Signed-off-by: Vittorio Giovara --- libavcodec/ivi.c | 33 ++++++++++++++++----------------- 1 file changed, 16 insertions(+), 17 deletions(-) (limited to 'libavcodec/ivi.c') diff --git a/libavcodec/ivi.c b/libavcodec/ivi.c index 9762eeba90..caa3fe6c8a 100644 --- a/libavcodec/ivi.c +++ b/libavcodec/ivi.c @@ -1133,6 +1133,22 @@ int ff_ivi_decode_frame(AVCodecContext *avctx, void *data, int *got_frame, } } + if (ctx->show_indeo4_info) { + if (ctx->is_scalable) + av_log(avctx, AV_LOG_DEBUG, "This video uses scalability mode\n"); + if (ctx->uses_tiling) + av_log(avctx, AV_LOG_DEBUG, "This video uses local decoding\n"); + if (ctx->has_b_frames) + av_log(avctx, AV_LOG_DEBUG, "This video contains B-frames\n"); + if (ctx->has_transp) + av_log(avctx, AV_LOG_DEBUG, "Transparency mode is enabled\n"); + if (ctx->uses_haar) + av_log(avctx, AV_LOG_DEBUG, "This video uses Haar transform\n"); + if (ctx->uses_fullpel) + av_log(avctx, AV_LOG_DEBUG, "This video uses fullpel motion vectors\n"); + ctx->show_indeo4_info = 0; + } + return buf_size; } @@ -1148,23 +1164,6 @@ av_cold int ff_ivi_decode_close(AVCodecContext *avctx) if (ctx->mb_vlc.cust_tab.table) ff_free_vlc(&ctx->mb_vlc.cust_tab); -#if IVI4_STREAM_ANALYSER - if (ctx->is_indeo4) { - if (ctx->is_scalable) - av_log(avctx, AV_LOG_ERROR, "This video uses scalability mode!\n"); - if (ctx->uses_tiling) - av_log(avctx, AV_LOG_ERROR, "This video uses local decoding!\n"); - if (ctx->has_b_frames) - av_log(avctx, AV_LOG_ERROR, "This video contains B-frames!\n"); - if (ctx->has_transp) - av_log(avctx, AV_LOG_ERROR, "Transparency mode is enabled!\n"); - if (ctx->uses_haar) - av_log(avctx, AV_LOG_ERROR, "This video uses Haar transform!\n"); - if (ctx->uses_fullpel) - av_log(avctx, AV_LOG_ERROR, "This video uses fullpel motion vectors!\n"); - } -#endif - av_frame_free(&ctx->p_frame); return 0; -- cgit v1.2.3