小编Jim*_*567的帖子

视频轨道背后的AVFoundation UIImage

我目前正在渲染一个小于输出尺寸的视频轨道.我想在背景中绘制UIImage,以便视频位于顶部,图像显示在视频不在的区域.我尝试过使用CoreAnimation图层以及videoCompositionCoreAnimationToolWithPostProcessingAsVideoLayer:inLayer:但是视频图层下方的图层似乎没有显示(上面的图片显示正常) - 只是黑色或我在AVMutableVideoCompositionInstruction对象上设置的任何背景颜色.我也尝试将背景颜色设置为[UIColor clearColor] .CGColor,但它只是以黑色显示.

有人做过类似的事并有建议吗?

CALayer *parentLayer = [CALayer layer];
CALayer *videoLayer = [CALayer layer];
CALayer *backgroundLayer = [CALayer layer];
backgroundLayer.frame = rect;
parentLayer.frame = rect;
videoLayer.frame = rect;
videoLayer.backgroundColor = [UIColor clearColor].CGColor;
backgroundLayer.backgroundColor = [UIColor purpleColor].CGColor;
[parentLayer addSublayer:backgroundLayer];
[parentLayer addSublayer:videoLayer];

mainCompositionInst.animationTool = [AVVideoCompositionCoreAnimationTool videoCompositionCoreAnimationToolWithPostProcessingAsVideoLayer:videoLayer inLayer:parentLayer];
Run Code Online (Sandbox Code Playgroud)

video objective-c avfoundation uiimage ios

5
推荐指数
1
解决办法
661
查看次数

标签 统计

avfoundation ×1

ios ×1

objective-c ×1

uiimage ×1

video ×1