2022年4月23日土曜日

motion: 古いWebCam

ふとタイムラプス画像でもと思い、とても古いWebCamがあったので、Raspberry piに繋げてみた。


ちなみにWindows10につなげてもプロファイルが無いのかカメラとして認識せずそのままでは使えそうにありませんでした。

そんな古いWebCamはOpenWrt上でmotionを動かしていたもの。

パッケージを改めてみてみると、センサー解像度はVGA640x480とあるのですが、v4lのパラメータを見てみると640x472しか無いように見えました。

Raspberry pi で最初は使っていましたが、低レベルでエラーが出たりと結構わがままだった記憶があります。

camera.confを設定して稼働させてみると、とりあえず使えました。室内は手動フォーカスもあってそれなりに映ったのでそのまま放置して寝てみましたが、画像がとても不安定。1つのmotionで複数台のカメラ扱うと何となく不安定になった記憶が蘇ってきました。

これを回避するにはデーモンを多重化すると回避できた記憶もありますが、そもそもエラーはどうなってるのだろうかとログを見てみると、

event_ffmpeg_put: Error encoding image
ffmpeg_put_frame: Error while writing video frame

がズラリ…

あと所々に

jpgutl_error_exit: JPEG datastream contains no image
vid_mjpegtoyuv420p: Corrupt image ... continue

で、とどめは

ffmpeg_set_outputfile: Could not write ffmpeg header No space left on device
ffmpeg_open: Could not set the stream
event_ffmpeg_newfile: Error opening context for movie output.

エラーでテンポラリにゴミが残ったままになってしまった結果disk full状態に。

スクリプトで処理をゴリゴリやってるのでエラーになったときにどんな動きをするか怖かったんですが、システムダメージは無さそうでよかった。

テンポラリにある残骸ファイルをできるだけ生かすようにして窓にカメラを置いてみて撮影してみると、

画像破損が激しいのと、綺麗にデータ転送が行われてもホワイトレベルが調節できずほぼ白色の画像しか映らないという残念な結果に。


数年間屋外に置いていて使っていたのでそれなりにセンサー部やレンズが劣化して発色が悪くなっている気がしますが、いまだに映るのはすごいかも。マイクも大丈夫そうでした。

エラー原因をもう少し確認してみました。syslogを見てみると

kernel: [XXXXX.XXXXXX] Transfer to device 5 endpoint 0x3 frame 960 failed - FIQ reported NYET. Data may have been lost.

といったエラーがズラリ…

昔はこんなエラーは見たことがなかったんですが、単純にデータ転送中におかしくなってるっぽいのは感じます。

あとは

kernel: [XXXXX.XXXXXX] Transfer to device 5 endpoint 0x1 frame 333 failed - FIQ timed out. Data may have been lost.

フレーム番号は色々変わってますがタイムアウトも発生しているようで。

これらのエラーの時間間隔は10~30秒間隔で発生しているようでした。

USBを引っこ抜いたときにもログが出ていて

kernel: [65475.891358] gspca_zc3xx 1-1.3:1.0: URB error -32, resubmitting
kernel: [65475.900341] gspca_zc3xx 1-1.3:1.0: URB error -32, resubmitting
kernel: [65475.909342] gspca_zc3xx 1-1.3:1.0: URB error -32, resubmitting
kernel: [65475.918361] gspca_zc3xx 1-1.3:1.0: URB error -32, resubmitting
kernel: [65475.927464] gspca_zc3xx 1-1.3:1.0: URB error -32, resubmitting
kernel: [65475.932588] usb 1-1.3: USB disconnect, device number 5

-32っていうのは昔に見かけた記憶があります。もしかしてカメラのUSBケーブルかコネクタにダメージがあるのかな?

まぁそんな感じで、肝心のタイムラプスにこのカメラでは屋外撮影には向かなさそうなのがはっきりしたので、これの使用はとりあえずあきらめかな。

0 件のコメント:

コメントを投稿