**文章**
1. iOS动画系列之四/五:基础动画之平移篇,缩放篇&旋转篇
作者: 非典型技术宅
描述:
- 1.创建layer并添加到view
- 2.创建CABasicAnimation,并设置相关属性. 讲layer的某个属性(keyPath)从某个值(fromValue)动画到另一个值(toValue),设置动画的持续时间(duration), 速度控制(timingFunction), 动画开始/结束后处理某些操作(CAAnimationDelegate)
- 3.动画添加到layer上, 实现CAAnimationDelegate若干方法(可选)
2. 基于 GPUImage2 图像合成视频的探索
作者: Enum
描述:
- 1.GPUImage2(GPUImage 的swift版本), 原理: input --> filter --> output
- 2.图片组 -> 视频: pictureInput1 --> movieOutput
- 3.探索如何设置帧率: MovieOutput -> newFramebufferAvailable() -> FramebufferTimingStyle -> PictureInput -> Framebuffer
- 4.构造Framebuffer中的时间戳
核心代码:
let output = try! MovieOutput.init(URL: outputURL, size: size, liveVideo: true)
output.startRecording()
for path in imagePaths {
autoreleasepool(invoking: {
let img = UIImage.init(contentsOfFile: path)!
let timestamp = Timestamp.init(...)
input.imageFramebuffer.timingStyle = FramebufferTimingStyle.videoFrame(timestamp: timestamp)
let input = PictureInput.init(image: img)
input --> output
input.processImage()
input.removeAllTargets()
}
}
output.finishRecording()
查看订阅消息,请关注微信订阅号: iOS_dev_awesome
iOS_dev_awesome
网友评论