I would like to use my GoPro 12 as a webcam in Signal. gopro-webcam seems to work and put the GoPro in webcam mode, but I cannot use the generated feed in Signal. It is not shown in the dropdown menus within Signal nor Cheese.
It shows in the terminal and on the camera display itself.
Here is what I can offer:
[ds@bluechip ~]$ sudo gopro webcam -a -r 1080 -f linear
[sudo] Passwort für ds:
Running GoPro Webcam Util for Linux [0.0.3]
Launch Options
==========================
* Non-interactive: 0
* Autostart: 1
* Preview: 0
* Resolution: 1080p
* FOV: linear
==========================
/usr/bin/gopro: Zeile 37: ufw: Kommando nicht gefunden.
Using your firewall can cause issues with ffmpeg.
v4l2loopback is not loaded!
v4l2loopback was successfully loaded.
Please plug in your GoPro and switch it on. If it booted successfully (Charger icon on screen), hit Return
Guessing the GoPro's device name...
I can only make an uneducated guess wrt the name of the interface that the GoPro exposes.
For me the name of the interface is 'enxf64854ee7472'. This script will try to discover the device
that was added *last*, as you just plugged in the camera, hence the interface added last should be the one we're looking for.
Discovered: enp0s20f0u1u2u1.
Using enp0s20f0u1u2u1 to discover the GOPRO_IP.
Found 172.27.163.54
To control the GoPro, we need to contact another interface (GOPRO_IP ending with .51).. Adapting internally..
Now using this GOPRO_IP internally: 172.27.163.51
{ "status": 2, "error": 0 }
{ "status": 2, "error": 0 }
Sucessfully started the GoPro Webcam mode. (The icon on the Camera should have changed)
Starting ffmpeg..
ffmpeg version n6.1 Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 13.2.1 (GCC) 20230801
configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libjxl --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librav1e --enable-librsvg --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpl --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg --enable-nvdec --enable-nvenc --enable-opencl --enable-opengl --enable-shared --enable-version3 --enable-vulkan
libavutil 58. 29.100 / 58. 29.100
libavcodec 60. 31.102 / 60. 31.102
libavformat 60. 16.100 / 60. 16.100
libavdevice 60. 3.100 / 60. 3.100
libavfilter 9. 12.100 / 9. 12.100
libswscale 7. 5.100 / 7. 5.100
libswresample 4. 12.100 / 4. 12.100
libpostproc 57. 3.100 / 57. 3.100
So, how do I get this thing to work with other apps?
https://github.com/NewoIsTaken/gopro_as_webcam_on_linux check the readme, you can start a preview, to make sure it really works. As far as I can tell you can reach the camera through an ip address, not sure how to connect to that with these apps.
google this v4l2loopback cheese maybe it’s a resolution problem. I think you should be able to access v4l2 devices with these apps, but I don’t really use webcams.