Zbarcam-Raspberry Pi

时间:2014-11-26 07:44:40

标签: python raspberry-pi webcam qr-code zbar

我正在尝试将我的网络摄像头(连接到Pi)读取qr代码。我正在使用zbar-tools,但目前收到以下错误:

ERROR: zbar processor in zbar_processor_init():
system error : spawning input thread : invalid argument (22)

关于可能导致此错误的原因以及我如何解决此问题的任何想法?

4 个答案:

答案 0 :(得分:1)

这个在Arch

上工作

LD_PRELOAD = / usr / lib / libv4l / v4l1compat.so zbarcam --raw / dev / video0

自: https://fitzcarraldoblog.wordpress.com/2012/10/05/installing-and-using-zbar-in-linux-to-scan-bar-codes-with-your-webcam/

答案 1 :(得分:1)

对我来说,在远程连接时,添加标志--nodisplay对我有帮助: pi@raspberrypi:~ $ zbarcam /dev/video0 --nodisplay

(设备可能与您不同,请尝试pi@raspberrypi:~ $ ls /dev/video?来发现您所连接的设备是什么)

答案 2 :(得分:0)

当我使用python-zbar时,从python中得到了相同的错误消息。我知道我需要像--nodisplay标志这样的东西,但这只能在zbarcam命令行中找到。我的解决方案是查看python-zbar源代码,在那里我找到了proc.int()的第二个未记录的参数:

import zbar
proc = zbar.Processor()
device = '/dev/video0'
proc.init(device,False)

答案 3 :(得分:-1)

有同样的问题。问题是我通过SSH连接。我建议您首先使用startx启动Raspberry Pi GUI,然后从终端编辑器运行命令。您也可以选择使用zbarcam --nodisplay标志禁用显示。

如果仍然不起作用,因为它对我来说没有,我开始收到一条新的错误消息:

unsupported request: no compatible image format

我从this文章中发现,您可以使用前缀来启动zbar,我必须稍微修改为:

LD_PRELOAD=/usr/lib/arm-linux-gnueabihf/libv4l/v4l1compat.so zbarcam --raw /dev/video0

这是最终为我工作的命令。