ios硬编解码videotoolbox---硬编码

一、videoToolbox的基本数据

VideoToolbox视频编解码前后需要应用的数据结构进行说明。

CVPixelBuffer:编码前和解码后的图像数据结构。此内容包含一系列的CVPixelBufferPool内容

CMTime、CMClock和CMTimebase:时间戳相关。时间以64-bit/32-bit的形式出现。

pixelBufferAttributes:字典设置.可能包括Width/height、pixel format type、Compatibility (e.g., OpenGL ES, Core Animation)

CMBlockBuffer:编码后,结果图像的数据结构。

CMVideoFormatDescription:图像存储方式,编解码器等格式描述。

(CMSampleBuffer:存放编解码前后的视频图像的容器数据结构。

CMTimebase: 关于CMClock的一个控制视图,包含CMClock、时间映射(Time mapping)、速率控制(Rate control)

采集视频数据可知,我们获取到的数据 (CMSampleBufferRef)sampleBuffer为未编码的数据;


ios硬编解码videotoolbox---硬编码_第1张图片
Paste_Image.png

上图中,编码前后的视频图像都封装在 CMSampleBuffer中,编码前以 CVPixelBuffer进行存
储;编码后以 CMBlockBuffer进行存储。除此之外两者都包括 CMTime、 CMVideoFormatDesc。

二、硬编码码基本流程

你可能感兴趣的:(ios硬编解码videotoolbox---硬编码)