OpenWrt在接入usb camera时自动启动mjpg-streamer

OpenWrt中,可以通过mjpg-streamer+usb camera实现Webcam。

运行mjpeg-streamer的方法有多种。

一种是在OpenWrt启动时运行mjpg-streamer。可能遇到的情况是,运行mjpg-streamer时,usb camera还没有初始化完成(即,设备没有出现在/dev目录下)而导致运行失败。

一种是通过ssh登录OpenWrt,并运行mjpg-streamer。或者在OpenWrt中安装luci,然后可以通过网页启动mjpg-streamer。

本文介绍一种通过Hotplug实现在usb camera接入时自动启动mjpeg-streamer的方法。

Hotplug可以检测各种热插拔的设备的接入与移除,并且可以在设备接入和移除事件发生时运行指定的脚本。

usb camera属于Hotplug类别中的usb设备和input设备,这里是利用其input设备属性。

通过配置两个文件:/etc/hotplug2.rules和/etc/hotplug.d/input/20-mjpg-streamer,即可实现上述功能。

1)让Hotplug在检测input设备时运行/etc/hotplug.d/input目录下的脚本——更改/etc/hotplug2.rules,去掉"^input"前的"^",修改后的内容如下:

$include /etc/hotplug2-common.rules

SUBSYSTEM ~~ (^net$|input$|^button$|^usb$|^ieee1394$|^block$|^atm$|^zaptel$|^tty$) {
	exec /sbin/hotplug-call %SUBSYSTEM%
}

DEVICENAME == watchdog {
	exec /sbin/watchdog -t 5 /dev/watchdog
	next-event
}

2)编写/etchotplug.d/input/20-mjpg-streamer文件,其内容如下:

case "$ACTION" in
    add)
            # start process
        /etc/init.d/mjpg-streamer start
            ;;
    remove)
            # stop process
        /etc/init.d/mjpg-streamer stop
            ;;
esac





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值