1

我没有尝试从 Unity3D 访问虚拟 v4l2 相机。

虚拟相机是使用 gstreamer 创建的

gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw,format=YUY2,width=640,height=480 !v4l2sink device=/dev/video1 

并在使用时像

gst-launch-1.0 v4l2src device=/dev/video1 ! xvimagesink

v4l2-ctl 的输出

v4l2-ctl --list-formats-ext -d /dev/video1 
ioctl: VIDIOC_ENUM_FMT
    Index       : 0
    Type        : Video Capture
    Pixel Format: 'YUYV'
    Name        : YUYV 4:2:2
        Size: Discrete 640x480
            Interval: Discrete 0.033s (30.000 fps)

但是该应用程序 - 与 /dev/video0 上的网络摄像头本身配合得很好 - 当指向 /dev/video1 时,它什么也不显示。

在 ~/.config/unity3d 中查看 Player.log 我发现

    Camera 0: HP HD Camera (/dev/video0)

(Filename:  Line: 93)

Camera 1: Dummy video device (0x0000) (/dev/video1)

(Filename:  Line: 93)

UnityEngine.WebCamDevice[]

(Filename: /home/builduser/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

Error dequeuing image buffer: No such file or directory

(Filename:  Line: 326)

我不确定如何从这里着手修复统一应用程序和/或 gstreamer 管道中的一些错误。

4

0 回答 0