【问题标题】:Merge Video Side by Side in sequence mode在序列模式下并排合并视频
【发布时间】:2013-11-29 05:57:49
【问题描述】:

我使用AVMutableComposition以序列模式并排合并两个视频,一个接一个地播放两个视频,我可以成功地做到这一点。我的问题是,在播放第一个视频时,第二个视频屏幕将显示一个空白屏幕,直到它完成第一个视频。谁能给我一个解决方案,在播放第一个视频时显示第二个视频的缩略图?

【问题讨论】:

    标签: ios objective-c video video-streaming avmutablecomposition


    【解决方案1】:

    【讨论】:

    • 这是从视频中获取缩略图,我的任务是在序列模式下并排合并两个视频时显示缩略图,并希望在播放第一个视频时在第二个视频上显示缩略图。
    • 是的,那么从第二个视频的开头生成缩略图并将其放在第二个视频应该播放的空间上,直到第一个视频完成然后删除覆盖的缩略图有什么问题?
    • 我无法在特定时间范围内的视频上插入缩略图。当我将缩略图放在第二个视频应该作为叠加层播放的空间上时,它会隐藏第二个视频。请帮我把缩略图推到特定的时间范围内。
    • 哇,您似乎真的只花了 1 秒钟来查看文档。您生成缩略图,将其覆盖在第二个视频上。一旦播放第一个视频的 AVPlayer 通知您它已完成,您设置 mySecondOverlayImageView.hidden = YES;并告诉第二个 AVPlayer 开始播放。这就是你所要做的!
    【解决方案2】:

    我们可以使用以下代码在视频上显示缩略图。

    CALayer *firstThumbnailOverlay=[CALayer layer]; 
    CABasicAnimation *firstfadeAnimation;
    
    firstfadeAnimation=[CABasicAnimation animationWithKeyPath:@"opacity"];
    
    firstfadeAnimation.fromValue = [NSNumber numberWithFloat:1.0];
    firstfadeAnimation.toValue = [NSNumber numberWithFloat:0.0];
    firstfadeAnimation.additive = NO;
    firstfadeAnimation.removedOnCompletion = NO;
    firstfadeAnimation.beginTime = CMTimeGetSeconds(firstAsset.duration);
    firstfadeAnimation.duration = 0.0;
    firstfadeAnimation.fillMode = kCAFillModeBoth;
    [firstThumbnailOverlay addAnimation:firstfadeAnimation forKey:Nil];
    [parentLayer addSublayer:firstThumbnailOverlay];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-18
      • 2020-11-21
      • 1970-01-01
      • 2014-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-11
      相关资源
      最近更新 更多