如下所示代码: [crayon-69b4b2d970c25000117293/] 在使用avcodec_decode_video2函数解码时经常会遇到frameFinished == 0,也就是无法得到一帧解码后的图像。有些人可能会怀疑是哪里出错了,其实这是正常的现象,ffmpeg内部解码时做了处理。处理如下: 1)该帧为B帧,由于B帧是前后参考帧,需要结合前面的I帧或者P帧,以及后面的P帧来生成完整图像,所以该帧如果是B帧,就无法立即解码,所以返回的frameFinished为0,需要解码完后一帧后才可以解码该帧…