作者:鱼咸4406 | 来源:互联网 | 2024-11-11 13:27
在使用VideoToolbox进行视频流硬解码时,遇到了大量绿色屏幕的问题。当前,我的视频流格式为AnnexB。虽然已知需要将其转换为AVCC格式,但在实际操作中仍遇到了一些挑战。
现在,我的视频流是附件b。我知道我需要将Annex b转换为Avcc。但是,我有一些问题!
1.my帧流,每个视频流中都有多个NALU(多个切片)。我知道我需要将每个nalu的起始代码更改为nalu大小。但是如何从nalu创建块缓冲区?如何使用CMBlockBufferCreateWithMemoryBlock,我需要传递什么参数长度?
如果我通过每个nalu大小。解码后,视频工具箱无法为我提供真实的画面。如果我通过一个全帧的长度。 Videotoolbox解码后,我得到了一半的绿色屏幕和一半的图片。