判断ffmpeg读到的packet是否为关键帧



判断ffmpeg读到的packet是否为关键帧

av_read_frame(avFormatCtx, readPacket)

if(readpacket->flags &AV_PKT_FLAG_KEY )

{

key frame

}


//////如果是h264编码,从帧数据判断

frame =  |length|data|

length后面紧跟着的第一个byte后5位如果是01001则为关键帧

if((frame[4] & 0x1f) == 5)

        {

            NSLog(@"关键帧");

        }else{

            NSLog(@"非关键帧");

        }


猜你喜欢

转载自blog.csdn.net/dgyanyong/article/details/44872127