AVAssetReader与AVAssetWriter
所属分类:ios | 发布于 2025-04-16
AVAssetReader是AVFoundation中的一个读取器对象。
AVAssetReader类结构
AVAssetReaderOutput包含三种类型的输出
AVAssetReaderTrackOutput:用于从AVAssetReader存储中读取单个轨道的媒体对象
AVAssetReaderAudioMixOutput:用于读取音频样本
AVAssetReaderVideoCompositionOutput:用于读取一个或多个轨道中的帧合成的视频
AVAssetReader读取视频流程
从AVAssetReader存储中获取mov/mp4视频文件,将视频文件解压缩,即解码,还原成CMSampleBuffer图像数据
从CMSampleBuffer中奖图像数据读取到CVPixelBuffer视频像素缓存区
利用CVPixelBuffer像素缓存区数据和CVMetalTextureCache纹理缓存区数据创建metal纹理缓存区CVMetalTexture
将metal纹理缓存区CVMetalTexture的数据转换成metal纹理id<MTLTexture>
将metal纹理id<MTLTexture>传递到GPU中的片元着色函数