ffmpeg日志回调添加

如果想抓取ffmpeg日志相关信息并作相关处理,可以用ffmpeg日志回调

统计H264解码错误

static int ffmpeg_decoder_error = 0;
static void ffmpeg_log_callback(void *ptr, int level, const char *fmt, va_list vl)
{
    if (level > av_log_get_level())
        return;
    char temp[1024];
    vsprintf(temp, fmt, vl);
    size_t len = strlen(temp);
    if (len > 0 && len < 1024&&temp[len - 1] == '\n')
    {
        temp[len - 1] = '\0';
    }

    AVClass* avc = ptr ? *(AVClass **)ptr : NULL;
    const char *module = avc ? avc->item_name(ptr) : "NULL";

    if (strstr(module, "264"))
    {
    if (strstr(temp, "error"))
    {
      ffmpeg_decoder_error++;
    }

    }
}

av_log_set_level(AV_LOG_INFO);
av_log_set_callback(ffmpeg_log_callback);

样例
ffmpeg_decoder_error = 0;
ret = avcodec_decode_video2(c, frame, &got_picture, &pkt);
这样可以粗略计算H264解码失败个数 但是不太准确
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值