我们使用的是过时版本的AVCodec,它不包含通过AVCodecContext::refcounted_frames
实现的重新计数帧功能。基本上,我们希望阻止AVCodec重新使用缓冲区,直到我们完成它,这可能在将来的任意点(并且不一定在下一个avcodec_decode_frame2
之前)。
在每次调用解码时使用不同的AVFrame
并不起作用,因为AVCodec在内部使用相同的缓冲区(不同的AVFrames
可能指向相同的数据)。
有没有办法在不使用AVCodecContext::refcounted_frames
引入的新功能的情况下执行此操作?