IOS video over video 与圆形裁剪合并

标签 ios swift video-processing avvideocomposition

我正在制作一个进行基本视频处理的应用程序。 我成功地合并到视频(视频上的视频)。 enter image description here 如何将左上角的小视频裁剪成一个圆圈?

最佳答案

如果您想导出该视频,您需要:

  1. 创建 CALayer,它将成为您的视频层的父层
  2. 添加两个CALayer作为父层的子层
  3. 创建一个CAShapeLayer圆圈并 mask 你想要的视频层
  4. 创建 AVMutableVideoComopsition 并设置它(frameDurationrenderSize说明、...等)<
  5. 使用 init(postProcessingAsVideoLayers:in:) 方法创建一个 AVVideoCompositionCoreAnimationTool 实例
  6. 将其分配给 AVMutableVideoComopsitionanimationTool 属性
  7. 使用 AVAssetExportSession 导出它(将 AVMutableVideoComopsition 设置为导出 session 的属性 videoCompostion)

这仅用于后期处理,不用于预览。

对于预览您可以尝试创建两个 AVPlayerLayer 并屏蔽其中一个,如果这不起作用您可以创建一个自定义视频合成器并根据需要渲染每个帧

关于IOS video over video 与圆形裁剪合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44764782/

相关文章:

android - 如何从 Facebook 视频 URL 中提取可用的视频分辨率?

audio - 具有视觉效果的WPF视频播放器

c# - 提取视频的第 5 帧并使用 ffmpeg C# 合并到视频中

ios - 生成并签署启用 NFC 的 .pkpass 文件而不加密公钥

IOS - 在 Storyboard中连接 segue 时遇到问题

ios - 视频作为背景

uitableview - 在 Swift 中为 cellForRowAtIndexPath 调用 super

ios - NSBlock 什么时候被释放?

ios - 来自 Azure 通知中心的 Xamarin.iOS 推送通知

swift - 访问 tableView :cellForRowAtIndexPath