【问题标题】:IOS video over video merge with circle croppingIOS 视频 over video 与圆形裁剪合并
【发布时间】:2017-06-26 16:56:34
【问题描述】:

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

【问题讨论】:

  • stackoverflow.com/questions/28258270/… 的可能重复项这可能对您有所帮助。
  • 我在发布之前看过这个并没有向 AVMutableVideoCompositionLayerInstruction 确认我添加到 AVMutableVideoCompositionInstruction

标签: ios swift video-processing avvideocomposition


【解决方案1】:

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

  1. 创建CALayer,这将是您的视频图层的父级
  2. 添加两个CALayers作为父层的子层
  3. 创建一个CAShapeLayer 圆圈并遮盖您想要的视频图层
  4. 创建AVMutableVideoComopsition 并设置它(frameDurationrenderSizeinstructions、...等)
  5. 使用init(postProcessingAsVideoLayers:in:) 方法创建AVVideoCompositionCoreAnimationTool 实例
  6. 将其分配给AVMutableVideoComopsitionanimationTool 属性
  7. 使用AVAssetExportSession 将其导出(将AVMutableVideoComopsition 设置为导出会话的属性videoCompostion

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

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

【讨论】:

  • 我们如何将视频放在单独的层中
  • @TalhaAhmadKhan 导出时?如果是,那么您需要查看AVVideoCompositionCoreAnimationTool 文档。例如:medium.com/@dzungnguyen.hcm/…。它在Objective C中,但我认为翻译它不会有问题。
  • 在导出时是的,但是您提供的链接向我们展示了叠加图像,而不是我有兴趣将视频叠加在其他视频之上。
猜你喜欢
  • 2014-11-05
  • 1970-01-01
  • 2011-11-14
  • 2014-11-13
  • 2013-10-05
  • 2011-09-06
  • 2016-04-27
  • 2015-12-20
  • 1970-01-01
相关资源
最近更新 更多