non vorrei lavorare

ブログ名の通りです。javascript three.js mruby rust OCaml golang julialang blender

mruby-webcamをヘッドレス対応した

こんにちは、週末にじいじが来た際に、長男が、ママのスパルタ特訓の成果で、すっかり補助輪なしの自転車に 乗れるのをじいじに見せることができました。kjunichiです。

背景

CドライブのSSDが故障して週末が溶けた件のエントリーで未だにWindows 10環境の復旧をやっています。自宅を離れている間もインストール作業の様子を別のPCやMac で見たいので、WebCamで覗こうと自作のmruby-webcamを使おうとして、ハタと気づきました!

GUI前提なAPIしか用意していない!!

撮影イメージ

流行りのヘッドレスに対応

なぜかChromeのヘッドレスが近々くると

このツイートを見たり、Qiitaに関連記事が投稿されてたりで、 そんなトレンドを取り入れずべく、mruby-webcamもHeadless環境での利用可能なAPIを実装しました。

成果物

cam = Webcam.new
cam.capture {|img|
   File.open("#{Time.now.to_s.gsub!(' ','').gsub!(':','')}.jpg","wb") {
     |f| f.write img
   }
 }
cam.snap # このタイミングで撮影。

あらかじめ、Webcam#captureで撮影時にコールバックされるブロックを登録しておきます。 その後、Webcam#snapで撮影となります。

Githubリポジトリ

今後の課題

  • 指定時間後の撮影

関連記事

9年前の記事

5年前の記事