2012-07-14 120 views
1

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

相反,我可以使用PHP - 以及一些轻量级的扩展/插件 - 来完成捕获剧照的这件事吗?

+2

这就是答案http://stackoverflow.com/questions/ 11380423 /使用-php-to-interpret-message-from-parallel-port/11380534#11380534 – 2012-07-14 19:43:49

回答

1

展开Parahat的信息。不,没有办法严格使用PHP。但至少在大多数的linux系统中,应该有一种方法来实现它。

看看answer here可以做到这一功能的终端程序,安装一个适用于你的网络摄像头的(适用于Ubuntu的apt-get)(大多数程序应该适用于大多数摄像头,因为类似标准),然后execute the terminal command从相机中取出静物。

希望能让你走上正轨。

+0

谢谢 - 这确实让我走上了正确的轨道。不过,我应该提到我在Windows上。您是否知道任何具有此功能并在Windows上运行的CLI软件? – aag 2012-07-14 19:58:43

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了解更多详情。

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); 
?> 
相关问题