1

我有一个网络摄像头(Logitech Webcam Pro 9000)通过 USB 连接到网络服务器,我需要定期拍摄静态照片(严格在服务器端,不需要视频,不需要 Javascript)。到目前为止,这是通过一个名为 WebcamXP 的应用程序完成的,但这有点不稳定,有很多限制,而且完全不灵活。

相反,我可以使用 PHP - 以及一些轻量级扩展/插件 - 来完成捕获静止图像的这项工作吗?

4

3 回答 3

1

..对于那些喜欢“全方位服务”的人来说,这里是结构良好的 PHP 代码:

<?
$CaptureString='"C:\Program Files (x86)\VideoLan\VLC\vlc.exe"'.
' --dshow-vdev="Logitech Webcam Pro 9000" '.
'"dshow://" '.
':dshow-size="320x240" '.
'--run-time=1 '.
'--scene-ratio=24 '.
'--scene-path=C:\TestSite '.
'--scene-format=jpeg '.
'--scene-prefix=snap '.
'--no-audio '.
'--video-filter=scene '.
'-V dummy '. '--intf=dummy '.
'--dummy-quiet '.
'vlc://quit';
$last = exec($CaptureString, $output, $returnvar);
?>
于 2012-07-14T21:27:05.843 回答
1

扩展 Parahat 的信息。不,没有办法严格使用 PHP。但至少在大多数版本的 linux 中应该有办法做到这一点。

在此处查看可以执行此功能的终端程序的答案,安装一个(对于 apt-get 的 ubuntu)适用于您的网络摄像头(由于类似的标准,大多数程序应该适用于大多数网络摄像头),然后执行终端命令从相机中抓取静止图像。

希望这能让你走上正轨。

于 2012-07-14T19:54:05.240 回答
1

我找到了!!!使用一个名为“VLC”的非常小巧方便的软件。就我而言,CLI 字符串是

C:\Program Files (x86)\VideoLAN\VLC>vlc --dshow-vdev="Logitech Webcam Pro 9000"
"dshow://" :dshow-size="320x240" --run-time=1 --scene-ratio=24 
--scene-path=C:\TestSite --scene-format=jpeg --scene-prefix=snap 
--no-audio --video-filter=scene
-V dummy --intf=dummy --dummy-quiet

另请参阅http://forum.videolan.org/viewtopic.php?f=2&t=63313了解更多详情。

于 2012-07-14T20:49:33.320 回答