void av_log_default_callback(void* ptr, int level, const char* fmt, va_list vl)

{

    static int print_prefix=1;

    static int count;

    static char line[1024], prev[1024];

    static int is_atty;

    AVClass* avc= ptr ? *(AVClass**)ptr : NULL;

    if(level>av_log_level)

        return;

    line[0]=0;

#undef fprintf

    if(print_prefix && avc) {

        if (avc->parent_log_context_offset) {

            AVClass** parent= *(AVClass***)(((uint8_t*)ptr) + avc->parent_log_context_offset);

            if(parent && *parent){

                snprintf(line, sizeof(line), "[%s @ %p] ", (*parent)->item_name(parent), parent);

            }

        }

        snprintf(line + strlen(line), sizeof(line) - strlen(line), "[%s @ %p] ", avc->item_name(ptr), ptr);

    }



    vsnprintf(line + strlen(line), sizeof(line) - strlen(line), fmt, vl);



    print_prefix= line[strlen(line)-1] == '\n';



#if HAVE_ISATTY

    if(!is_atty) is_atty= isatty(2) ? 1 : -1;

#endif



    if(print_prefix && (flags & AV_LOG_SKIP_REPEATED) && !strcmp(line, prev)){

        count++;

        if(is_atty==1)

            fprintf(stderr, "    Last message repeated %d times\r", count);

        return;

    }

    if(count>0){

        fprintf(stderr, "    Last message repeated %d times\n", count);

        count=0;

    }

    colored_fputs(av_clip(level>>3, 0, 6), line);

    strcpy(prev, line);

}

void av_log_default_callback(void* ptr, int level, const char* fmt, va_list vl)

{

    static int print_prefix=1;

    static int count;

    static char line[1024], prev[1024];

    static int is_atty;

    AVClass* avc= ptr ? *(AVClass**)ptr : NULL;

    if(level>av_log_level)

        return;

    line[0]=0;

#undef fprintf

    if(print_prefix && avc) {

        if (avc->parent_log_context_offset) {

            AVClass** parent= *(AVClass***)(((uint8_t*)ptr) + avc->parent_log_context_offset);

            if(parent && *parent){

                snprintf(line, sizeof(line), "[%s @ %p] ", (*parent)->item_name(parent), parent);

            }

        }

        snprintf(line + strlen(line), sizeof(line) - strlen(line), "[%s @ %p] ", avc->item_name(ptr), ptr);

    }



    vsnprintf(line + strlen(line), sizeof(line) - strlen(line), fmt, vl);



    print_prefix= line[strlen(line)-1] == '\n';



#if HAVE_ISATTY

    if(!is_atty) is_atty= isatty(2) ? 1 : -1;

#endif



    if(print_prefix && (flags & AV_LOG_SKIP_REPEATED) && !strcmp(line, prev)){

        count++;

        if(is_atty==1)

            fprintf(stderr, "    Last message repeated %d times\r", count);

        return;

    }

    if(count>0){

        fprintf(stderr, "    Last message repeated %d times\n", count);

        count=0;

    }

    colored_fputs(av_clip(level>>3, 0, 6), line);

    strcpy(prev, line);

}

    static char line[1024], prev[1024];     if(print_prefix && (flags & AV_LOG_SKIP_REPEATED) && !strcmp(line, prev)){     strcpy(prev, line);
void FUNC_0(void* VAR_0, int VAR_1, const char* VAR_2, va_list VAR_3)

{

    static int VAR_4=1;

    static int VAR_5;

    static char VAR_6[1024], VAR_7[1024];

    static int VAR_8;

    AVClass* avc= VAR_0 ? *(AVClass**)VAR_0 : NULL;

    if(VAR_1>av_log_level)

        return;

    VAR_6[0]=0;

#undef fprintf

    if(VAR_4 && avc) {

        if (avc->parent_log_context_offset) {

            AVClass** parent= *(AVClass***)(((uint8_t*)VAR_0) + avc->parent_log_context_offset);

            if(parent && *parent){

                snprintf(VAR_6, sizeof(VAR_6), "[%s @ %p] ", (*parent)->item_name(parent), parent);

            }

        }

        snprintf(VAR_6 + strlen(VAR_6), sizeof(VAR_6) - strlen(VAR_6), "[%s @ %p] ", avc->item_name(VAR_0), VAR_0);

    }



    vsnprintf(VAR_6 + strlen(VAR_6), sizeof(VAR_6) - strlen(VAR_6), VAR_2, VAR_3);



    VAR_4= VAR_6[strlen(VAR_6)-1] == '\n';



#if HAVE_ISATTY

    if(!VAR_8) VAR_8= isatty(2) ? 1 : -1;

#endif



    if(VAR_4 && (flags & AV_LOG_SKIP_REPEATED) && !strcmp(VAR_6, VAR_7)){

        VAR_5++;

        if(VAR_8==1)

            fprintf(stderr, "    Last message repeated %d times\r", VAR_5);

        return;

    }

    if(VAR_5>0){

        fprintf(stderr, "    Last message repeated %d times\n", VAR_5);

        VAR_5=0;

    }

    colored_fputs(av_clip(VAR_1>>3, 0, 6), VAR_6);

    strcpy(VAR_7, VAR_6);

}

void FUNC_0(void* VAR_0, int VAR_1, const char* VAR_2, va_list VAR_3)
{ static int VAR_4=1; static int VAR_5; static char VAR_6[1024], VAR_7[1024]; static int VAR_8; AVClass* avc= VAR_0 ? *(AVClass**)VAR_0 : NULL; if(VAR_1>av_log_level)
return; VAR_6[0]=0; #undef fprintf
if(VAR_4 && avc) { if (avc->parent_log_context_offset) { AVClass** parent= *(AVClass***)(((uint8_t*)VAR_0) + avc->parent_log_context_offset); if(parent && *parent){ snprintf(VAR_6, sizeof(VAR_6), "[%s @ %p] ", (*parent)->item_name(parent), parent); } } snprintf(VAR_6 + strlen(VAR_6), sizeof(VAR_6) - strlen(VAR_6), "[%s @ %p] ", avc->item_name(VAR_0), VAR_0); } vsnprintf(VAR_6 + strlen(VAR_6), sizeof(VAR_6) - strlen(VAR_6), VAR_2, VAR_3); VAR_4= VAR_6[strlen(VAR_6)-1] == '\n'; #if HAVE_ISATTY
if(!VAR_8) VAR_8= isatty(2) ? 1 : -1; #endif
if(VAR_4 && (flags & AV_LOG_SKIP_REPEATED) && !strcmp(VAR_6, VAR_7)){ VAR_5++; if(VAR_8==1)
fprintf(stderr, "    Last message repeated %d times\r", VAR_5); return; } if(VAR_5>0){ fprintf(stderr, "    Last message repeated %d times\n", VAR_5); VAR_5=0; } colored_fputs(av_clip(VAR_1>>3, 0, 6), VAR_6); strcpy(VAR_7, VAR_6); }