【问题标题】:Detect if video is boomerang video检测视频是否为回旋镖视频
【发布时间】:2018-10-02 09:04:28
【问题描述】:

我正在处理一个项目,我想知道是否可以确定视频是否是回旋镖视频。 Boomerang 视频通常长约 4 秒或略短。

到目前为止,我想做的是过滤从用户相机胶卷收到的数组,只显示 4 秒的视频,但有更好的方法吗?

任何指针或建议将不胜感激。

【问题讨论】:

    标签: ios swift video


    【解决方案1】:

    这不是一个确切的答案,而是如何解决这个问题的一种观点。

    据我了解,Boomerang 的工作原理是拍摄超短、超快的连拍照片,并将它们拼接成一个可以向前和向后以及向前和向后播放的迷你视频。这意味着视频的第一帧有机会再次出现。所以我建议将视频的每一帧转换为 UIImages 数组。然后获取该数组的第一张图像,并找出该图像是否存在于数组的其余部分中。

    要将视频制作成图像数组,您可以参考此答案的 Update for Swift 4.2 部分:- https://stackoverflow.com/a/45153948/4637057

    从中您将获得 frames,它是一组 UIImages。现在通过使用frames.remove(at: 0) 从该数组中取出第一个图像来创建另一个数组。但在此之前创建 image1,即frames[0]。然后循环遍历这个新数组,将每个图像视为 image2 并应用此逻辑来确定第一帧是否重复:- https://stackoverflow.com/a/6488838/4637057

    【讨论】:

    • 感谢您的回复,问题是我不是要创建回旋镖视频。我目前正在做的是搜索用户的相机胶卷,过滤以便只有视频被带回给我,接下来我要做的是检测视频是回旋镖还是 4 秒视频。
    • 我认为您需要分析每个视频(使用我的流程或其他流程)。因为回旋镖视频也在 iPhone 中保存为 .mp4 格式。如果不分析内容,我认为您无法通过仅过滤 4 秒视频来准确确定这是否是回旋镖。
    • 我明白了!实际上,我之前曾与某人交谈过,他说回旋镖的文件格式是 .mp4。您知道 .mp4 格式是否很少见且仅在这种情况下使用?
    • 不,这并不罕见。我们在 iPhone 上拍摄的视频以及来自 instagram、whatsapp 等流行应用程序的视频都是 .mp4 格式。因此,用户图库中将充满大量 .mp4 格式的视频。
    【解决方案2】:

    如果您使用的是 Photos.framework,我可以在这里给您的唯一帮助是引用 playbackStylePHAsset 对象。更多信息请参见 PhotoKit 文档here

    【讨论】:

    • loopingVideo 可能是您正在寻找的值。您可以使用谓词过滤PHAssets。我在文档中找不到bounceVideo
    • 所以如果我在数组中的资产上使用 loopingVideo,它只会显示它认为循环的视频?
    • @FuadAdetoro 文档说明了以下内容:PHAsset.PlaybackStyle.videoLooping - An enumeration indicating that the asset should be displayed as a looping video.。因此,循环视频的答案是肯定的。但问题是,Boomerang 并不是一个循环播放的视频。这是“弹跳”视频。我不确定,如果你能准确地检测到回旋镖。但是我会从loopingVideo的角度开始挖掘
    • 很遗憾没用,不过还是感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-03
    • 1970-01-01
    • 1970-01-01
    • 2022-06-28
    • 1970-01-01
    相关资源
    最近更新 更多