我无法将我的数码相机(佳能ixus 160)用作网络摄像头,有没有适用的应用程序?还是只需要在设置中进行调整?
sudo modprobe v4l2loopback
并且
gphoto2 --stdout --capture-movie | ffmpeg -i - -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video1
/dev/video1
可能不是回环设备。你可以使用 v4l2-ctl --list-devices
命令来检查设备类型。 - Hubert Kariogphoto
和v4l2loopback-utils
。
sudo apt-get install gphoto2 v4l2loopback-utils
通过USB连接相机(当相机自动挂载时,请卸载它)。然后运行gphoto2 --abilities
来查看您的相机是否具备此功能。以下是连接佳能EOS 1200D时的输出结果。
然后运行sudo modprobe v4l2loopback
来激活内核模块,从您的摄像头创建一个视频设备。gphoto2 --stdout --capture-movie | gst-launch-1.0 fdsrc ! decodebin3 name=dec ! queue ! videoconvert ! v4l2sink device=/dev/video1
这将在/dev/video1
中创建一个视频设备,您现在可以在诸如VLC之类的程序中使用它。killall gvfs-gphoto2-volume-monitor
来终止gvfs-gphoto2-volume-monitor
进程。➜ ~ gphoto2 --stdout --capture-movie | gst-launch-1.0 fdsrc!decodebin3 name = dec!queue!videoconvert!v4l2sink设备= / dev / video1 将管道设置为PAUSED ... 将缩略图作为电影记录在'stdout'中。按Ctrl-C取消。 错误:管道不想暂停。 错误:来自元素/GstPipeline:pipeline0 / GstV4l2Sink:v4l2sink0的 »/dev/video1« 不是播放设备。 附加的调试信息: v4l2_calls.c(642):gst_v4l2_open():/GstPipeline:pipeline0 / GstV4l2Sink:v4l2sink0: 功能:0x5200001 将管道设置为NULL ... 释放管道 ...
- noreabuguvcview
来查看输出结果。 - Jonathanmodprobe: FATAL: Module v4l2loopback not found in directory /lib/modules/4.15.0-36-generic
的错误信息。 - virtualxtcsudo modprobe v4l2loopback
命令在/dev/video1
创建,而是在/dev/video0
创建。无论如何,非常感谢您的回答! :) - edison23gphoto2 --abilities
时,我得到的回应是 *** Fehler (-105: »Unknown Model«) ***
。我需要向gphoto开发人员报告我的相机不受支持吗?在 http://gphoto.org/proj/libgphoto2/support.php 中提到:如果它是基于USB大容量存储的相机(类似于USB存储设备或U盘),则由您的操作系统挂载,而不是由gphoto2挂载。在这种情况下,无需向我们报告。
而且我的相机确实被挂载为大容量存储设备。 - Torstensudo modprobe v4l2loopback
killall gvfs-gphoto2-volume-monitor
lsusb
gphoto2 --auto-detect
LANG=C gphoto2 --summary
LANG=C gphoto2 --list-all-config
尝试
gphoto2 --capture-image
gphoto2 --stdout --capture-movie | ffmpeg -i - -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video1
guvcview-brlin.guvcview
/dev/video1
命令。cd eos-movrec-0.3.2_beta
sudo apt install libgphoto2-dev
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make
ls /dev/video*
你会看到类似于
/dev/video0 /dev/video1 /dev/video2
最后一个将是由回环驱动程序使用的设备,在本例中是video2。gphoto2 --auto-detect
你会看到类似于:
Model Port
----------------------------------------------------------
Canon EOS 6d Mark II usb:001,013
gphoto2 --stdout --capture-movie | ffmpeg -i - -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video2