AVFoundation录制视频

1.阅读文档 objc.中国

http://objccn.io/issue-23-1/

2.两个demo地址

https://github.com/rFlex/SCRecorder

https://github.com/wangminglang/AVCaptureSession 

3.Pause Recording on iPhone 暂停、恢复录制

http://www.gdcl.co.uk/2013/02/20/iPhone-Pause.html 

分段录制也就是可以暂停之后恢复录制,并且录制结束之后是在同一个文件中。不管video还是audio都是有时间戳的frame,因为有时间戳播放器才能有序的进行播放。因此在分段录制中,只要在暂停的时候记录一下当前的一个时间戳,然后在恢复之后计算一下这之间的时间差,然后在将这个frame写入之前修改一下这个frame的时间戳就行了

4.使用AVAssetWriter


AVFoundation录制视频_第1张图片

用URL初始化AVAssetWriter

AVAssetWriter添加AVAssetWriterInput

[AVAssetWriter startWriting]

[AVAssetWriter startSessionAtSourceTime]

[AVAssetWriter finishWriting]

获取的URL即为视频连接

5.实时滤镜

0CUP占用,这其中的奥秘是 GPU 做了几乎所有的工作,直到实际渲染才会去进行计算

CMSampleBuffer -> VCPixelBuffer -> CIImage -> CIFilter添加滤镜得到CIImage -> CIContext(EAGLContext、OpenGLES2初始化)转换成CGImage展示

你可能感兴趣的:(AVFoundation录制视频)