我需要实现有选择的直播解码。我需要删除B帧解码以减少高CPU利用率。为此,我修改了ffmpeg.c文件中的“decode_video”。查看pic_type(= 3),我正在删除解码。当提供输入(.ts)文件时,此更改正常工作。但是当我使用udp://提供实时输入时,提取的(P)帧会变形。 有人对此有任何了解吗。
你不能根据 pic_type 放弃它们,所有的 pic_type 帧都可以在 HEVC 中被引用。你需要根据 NalUnitType 是非参考帧(_N 表示非参考,_R 表示参考)来放弃它们。如果你放弃了参考帧,使用该参考帧的所有帧也会变形。