使用 GoPro 作为网络摄像头

使用 GoPro 作为网络摄像头

我想了解:

  1. 相机设备和我的计算机之间需要什么连接?
  2. 不用其他外部设备可以做到这一点吗?
  3. 需要什么应用程序?

这里有我发现的一些参考资料,但对我来说并没有太大帮助:

  1. 如何将我的 GoPro 用作网络摄像头
  2. Elgato CamLink
  3. 使用佳能摄像机作为网络摄像机

答案1

我创建了一个脚本,使这个过程更简单一些。请参见此处:

https://github.com/jschmid1/gopro_as_webcam_on_linux

答案2

我目前正在研究/实现这个目标。以下是我迄今为止发现的内容以及我下一步将采取的步骤。

1) 您可以使用 GoPro USB 设备,但由于延迟高,因此会出现明显的滞后。因此,建议您购买 HDMI 采集卡。要回答这个问题,您需要一根 Micro HDMI 转 HDMI 电缆将 GoPro 连接到采集卡。您还需要一根 USB 3 转 mini/micro/等电缆将采集卡连接到您的计算机。

2)如上所述,它可以作为 USB 设备使用,通过使用 gopro-py-ap。但是,高延迟表明此选项并不理想。

3) 有许多不同的视频流应用程序,但主要推荐的是 OBS,因为它是为专业录制而设计的,因此得到了广泛的开发。话虽如此,像 Cheese 这样的东西也可以用来获取提要。任何会议应用程序(例如 Jitsi 或 Zoom)也可以访问这些提要。

以下是迄今为止对我有帮助的资源:

如果出现更多细节,这个答案将会更新。

希望有帮助!

答案3

这是我在 Ubuntu 18.04 上为 GoPro Hero 8 Black 所使用的。

可以从以下位置克隆和编译 v4l2loopback 模块:

https://github.com/umlaeute/v4l2loopback.git

我在 Linux 上使用它来 Zoom,并且进行了彻底的测试。

#!/bin/bash

echo
read -p "Plug in USB cable and turn on device. Press any key to continue.  " -n 1 -r
echo

echo
echo inserting module v4l2loopback
echo

modprobe v4l2loopback exclusive_caps=1 card_label="LinuxGoPro" video_nr=13

interface=`ip link | grep enp0 | cut -b 4-17`

echo
echo using interface: $interface
echo

dhclient -v ${interface}

echo
echo activating webcam
echo

curl 172.23.100.51/gp/gpWebcam/START

echo
echo running ffmpeg
echo

ffmpeg -threads 1 -i 'udp://@0.0.0.0:8554?overrun_nonfatal=1&fifo_size=50000000' -f:v mpegts -fflags nobuffer -vf format=yuv420p -f v4l2 /dev/video13

相关内容