在使用FFMPEG库的时候,如果有使用上的错误,FFMPEG 通过av_log 可以打印相应的消息到标准输出里。但有时候我们并没有标准输出,那么这个时候应该怎么处理呢?
方法:使用 av_log_set_callback 获取 av_log的打印输出。
示例如下:
void Init()
{
...
av_log_set_callback(&FFMPEG_Callback);
}
void FFMPEG_Callback(void* ptr, int level, const char* fmt, va_list vl)
{
// 可以根据level的级别选择要打印显示的内容
if (level <= AV_LOG_INFO)
{
char buffer[1024];
vsprintf(buffer, fmt, vl);
LOG_A("msg : [%d] %s", level, buffer);
}
}