2012-07-14 123 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); 
?> 
相關問題