如何在iOS平台上实现视频硬解码?

在iOS平台上做视频的解码,一般有三种方案:

1、软解码方案:ffmpeg

缺点:消耗CPU太大,在iphone4s上一般720P 20帧以上就解不动了

2、硬解码方案1:采用私有接口VideoToolBox

优点:CPU消耗极低,解码效率极高

缺点:要使用私有接口VideoToolBox,iOS设备必须越狱

3、硬解码方案2:采用AVPlayer+httpserver+HttpLiveStream的组合方案

优点:CPU消耗极低,解码效率极高

缺点:视频有延迟,不适合实时视频通讯


这里给出硬解码方案2的流程图:

如何在iOS平台上实现视频硬解码?_第1张图片


该方案本人已源代码实现,并验证了稳定性,在iphone5上720P 25帧CPU占用率3%;

具体实现源代码暂时不开源,若需要,可联系我,QQ:349260360  Email:[email protected]


纠错:采用AVPlayer,ts流分片在切换的时候会闪屏,要实现ts流切片的无缝对接,必须采用AVQueuePlayer,这个具体方案还需完善。。。

你可能感兴趣的:(iOS)