【问题标题】:How to record video with ARCore with Unity?如何使用 Unity 使用 ARCore 录制视频?
【发布时间】:2018-10-01 18:56:39
【问题描述】:

我已经被这个问题困扰了一个多月了。我只需要在人们使用 AR 应用时录制视频。

有几种选择:

1.在 Unity 中为每一帧截取屏幕截图。
我尝试了taking a screenshot 每一帧。这太慢了。 fps 仅为 5。
然后我尝试saving the texture 到一个数组,然后将它们编码为图像。
这会占用大量内存,并会导致手机显着丢帧。 fps大约在10左右。
如果有人对此方法有好的想法,请告诉我。

2。使用原生插件录制视频。
我还没有找到任何解决方案。恐怕这会和 ARCore 冲突。

我知道有一个Android solution,但理想情况下我想使用 Unity。感谢您的帮助,谢谢!

3。从 ARCore 计算机视觉示例提供的纹理读取器 api 中保存纹理。
目录中有一个计算机视觉示例。我可以直接从 GPU 的 api 获取纹理。

但是,fps 仍然很低。使用它的边缘检测器示例,fps 约为 15。我成功地将这些帧保存到另一个线程的本地目录中。但是fps仍然不能接受。底线是 30fps 时的 720p。

PS:我只需要保存帧。我可以将它们编码成视频。

PPS:仅记录摄像头馈送同时记录摄像头馈送和增强对象都可以。取得的任何一项都很棒。

【问题讨论】:

  • 问得很好。欢迎来到 StackOverflow 伙伴!
  • @RannLifshitz 感谢兄弟的编辑!

标签: unity3d arcore


【解决方案1】:

您可以使用(非常棒的)NatCorder unity asset (asset store link) 和相关的NatShare API 轻松实现视频录制和共享。我在自己的 ARCore experiment/"game 中也做过同样的事情。”

编辑:您可能必须实施this 解决方法才能获得平滑的帧速率。

【讨论】:

  • 感谢您的建议。我试过你的应用程序,录音非常好!我会尝试在我的项目中使用它。
  • 太棒了!任何支持/将我的消息标记为答案将不胜感激:)
  • 嗨 Nerk,我在自己的应用程序中实现了 NatCorder,使用虚拟 3d 对象录制时只能获得 5 fps,仅当相机视图处于活动状态时只能获得 10 fps。您究竟使用了什么解决方法来实现平滑的帧速率?我检查了您的链接,但我什至没有达到 30fps,所以我认为该解决方案对我没有帮助。
  • @ZeroLu github.com/google-ar/arcore-unity-sdk/issues/141 见 pablishos 第一条评论
  • @Soorya 这应该让你开始:medium.com/@olokobayusuf/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-12-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多