从 AVCodecContext中获取sps,pps(FFmpeg)

从 AVCodecContext中获取sps,pps(FFmpeg)

从 AVCodecContext中获取sps,pps(FFmpeg)

这是之前版本ffmpeg的方法(现已弃用)

 

我一开始以为FFMPEG的这个方法会直接获取到SPS和PPS,谁知道只是替换掉开始码。

这里我们需要明白我们需要的是什么?sps,pps!(他们不包括起始符0x00 00 00 01)

// 假设extradata数据为 0x01 64 00 0A FF E1 00 19 67 64 00 00...其中67开始为SPS数据,68开始为pps数据,67或者68的前一位为他们的size,如67的前一位19,它就是SPS的size ,因为是16进制,即25.

从 AVCodecContext中获取sps,pps(FFmpeg)

获取sps,pps

此时你就可以将获取到的sps,pps拿去硬解了。