佳能DSLR视频循环使用v4l2loopback和EDSDK Liveview?

时间:2012-09-05 09:50:01

标签: linux-device-driver v4l2 edsdk canon-sdk

我想使用我的数码单反相机作为视频输入,以便在Linux和Android下使用Skype / Google聊天。

是否可以使用v4l2loopback和Canon EDSDK创建视频循环?如何将实时视图缓冲区从摄像机传输回视频循环?

由于

4 个答案:

答案 0 :(得分:3)

根据我的理解,佳能的EDSDK仍然只能根据Windows和OSX平台(C和Objective-C)的要求提供。在linux上,您可能想尝试在Wine下安装SDK,或者使用更通用的gPhoto。现在,“LiveView”或“EvF”图像是单独的JPG。或者,您可能希望通过HDMI输出端口(在2013年春季将在EOS 5D Mark III上完全重置)捕获此信息。

答案 1 :(得分:1)

你需要一个“生产者”应用程序,它将帧写入环回设备(以前通过canon esdk获取这些帧)

v4l2loopback已经附带了一些简单的生成器示例,您可以查看已经具有本机v4l2loopback输出支持的其他应用程序,例如: Gemlivesgmerlingstreamer

答案 2 :(得分:1)

您可以使用以下命令轻松完成此操作:

modprobe v4l2loopback

然后发出这个:

gphoto2 --stdout --capture-movie | gst-launch-0.10 fdsrc ! decodebin2 name=dec ! queue ! ffmpegcolorspace ! v4l2sink device=/dev/video0

正确更改视频设备。

答案 3 :(得分:1)

截至2017年10月, GStreamer 已更新至1.0,而 v4l2loopback 也已收到一些更新。

因此,@ Reinaert Albrecht发布的旧命令不再起作用了,现在有效的新命令是:

gphoto2 --stdout --capture-movie | gst-launch-1.0 fdsrc fd=0 ! decodebin name=dec ! queue ! videoconvert ! tee ! v4l2sink device=/dev/video0