我一直在探索iOS上的选项,以实现原始H.264流的硬件加速解码,到目前为止,我只发现唯一的选择是将H.264流写入MP4文件,然后将该文件传递给AVAssetReader的实例。尽管这种方法可以工作,但它并不特别适合实时应用程序。AVFoundation参考表明存在可以显示压缩视频帧的callayer (AVSampleBufferDisplayLayer),我相信这将是上述方法的有效替代方案。不幸的是,这个层只在OSX上可用。我想提交一个附加雷达,但在我这么做之前,我想从有这一层经验的人那里知道,如果在iOS上可用,它确实可以用来显示H.264原始数据。目前在我的应用程序中,解压的YUV帧是通过openGLES渲染的。使用这一层意味着我将不再需要使用openGLES了?
在iOS 8中AVSampleBufferDisplayLayer类现在可用了。
看一看,玩得开心