我正在使用mjpg-streamer通过yun将视频流式传输到网页。流正常工作,但由于它不是录制而只是直播,我想让它不时捕捉图片(可能是3分钟的间隙),并在网页上添加一个按钮,以便在按下按钮时捕捉图片。 我决定先按下按钮,我发现的问题是,如果设备是实时流媒体,它不能同时拍照,我必须停止流以捕获图片。我发现在手动输入以下命令时我可以拍一张照片:
/etc/init.d/mjpg-streamer stop
mjpg_streamer -i "./input_uvc.so -d /dev/video0 -r 640x480 -yuv -n -f 1 -q 80" -o "./output_file.so -f ./tests/ -d 5000"
/etc/init.d/mjpg-streamer stop
/etc/init.d/mjpg-streamer start
但是当一个.cgi文件运行所有这一切时,流停止,设备继续捕获图片,直到重新启动... 我不完全清楚所有参数在这里做了什么...没有延迟(-d)云只拍一张照片或者是否真的有必要有一定的延迟值,即使我只想要一张照片? 有没有更好的方法来实现我的目标?
提前致谢!
答案 0 :(得分:1)
安装fswebcam并使用:
#!/bin/ash
echo "Content-type: text/html"
echo
echo "<html><head><meta http-equiv='refresh' content='0;URL=http://arduino/stream-url' /><title>Take Picture</title></head><body></body></html>"
/etc/init.d/mjpg-streamer stop
sleep 0.4; fswebcam /mnt/sda1/pictures/$(date +"%Y.%m.%d.%H.%M.%S").png
/etc/init.d/mjpg-streamer start
exit 0
是最好的方式:)