Unity:从设备摄像头录制视频

Unity: Record video from device camera

我想要一个插件或库或一种从设备相机统一(windows 独立)录制视频(当然有声音)的方法。

目前,我可以使用此相机进行屏幕截图。有人说我可以截取许多屏幕截图并将其转换为一个视频文件。

我在 Asset store 上找到了一个名为 Camera Shoot

的插件

我想要类似的东西但是 windows。

编辑 1:

现在我正在使用一个从统一相机(统一内的虚拟相机)捕获视频的库。我正在 canvas 上预览我的相机源,但我的应用程序中没有显示它,我使用这个库来录制这个视频。

这可能解决了我的问题,但发现另一个问题,我需要录制麦克风语音才能将此音频添加到录制的视频中。

所以现在我正在从库中录制视频(没有声音),并使用另一个代码从麦克风录制语音,完成录制后,我将这两个文件合并在一起以获得我想要的文件。

又出现了新的问题。合并过程(混合和压缩)需要很长时间(超过记录时间的 10%),这会导致很多问题。

所以我需要另一种解决方案,并且更喜欢像上面那样的插件。

编辑 2:

我在编辑器和构建中都尝试了 Unity VideoCapture Example。在 unity 编辑器中,应用程序运行没有错误,但它没有进入此功能 "VideoCapture.CreateAsync()",因为他们说它不适用于编辑器。

当我尝试构建 windows 独立构建时,它给了我这个错误:"Assets/Scripts/Controllers/Other/VideoCaptureExample.cs(4,26): error CS0234: The type or namespace name 'WebCam' does not exist in the namespace 'UnityEngine.XR.WSA'. Are you missing an assembly reference?"

在搜索并解决这个问题大约 2 个月后,我发现 Capture Manager SDK

它适用于 windows,但作者有 2 个用于统一录制剧本而不是摄像头画面的演示。我问他是否可以从相机捕获视频,他做了一个 unity 示例,可以满足我的要求。

我已经测试了 unity 演示,它按预期工作。