ラズベリーパイを使用して、両親のためにオンラインウェブカメラを作成しています。写真をキャプチャして Web サーバーにアップロードし、コピーを別のサーバーにアップロードしてアーカイブしたいと考えています。スクリプト ストリーマーを使用して、ウェブカメラから静止画をスナップします。問題は、ストリーマーが時々クラッシュし、「v4l2: oops: select timeout」というエラー メッセージがループするように見えることです。これは、数ショット後、または 10 分間の操作後に発生する可能性があり、ランダムに見えます。各スナップショットの後にストリーマー プロセスを強制終了するコマンドを追加しました。これによりプログラムが少し安定しましたが、最終的にはエラー ループに陥ります。問題が何であるか、またはそれをデバッグする方法さえわかりません..どうすればよいですか?
付属のドライバーで raspbian を使用しています。WebカメラはロジクールC200です。最初に opencv を使用して静止画をキャプチャしようとしましたが、適切に動作させることができませんでした。誰かがそれを手伝うことができれば、問題が解決するかもしれません..
これはコードです、それはpythonです:
import time
import sys
from subprocess import call
import ftputil
while True:
call("streamer -q -f jpeg -s 640x480 -o ./current.jpeg", shell=True)
time.sleep(0.2);
call("killall -q streamer", shell=True)
filename = str(time.time()) + ".jpg"
host = ftputil.FTPHost(*****)
#host.remove("/domains/***/public_html/webcam.jpg")
host.upload("./current.jpeg", "/domains/***/public_html/webcam.jpg", mode='b')
host.close()
host = ftputil.FTPHost(****)
#host.remove("/domains/***/public_html/webcam.jpg")
host.upload("./current.jpeg", "/webcamarchive/"+filename, mode='b')
host.close()
time.sleep(10);