こんばんは。日曜日、自分のYシャツのアイロンをかけ終わり、翌朝の阻止馬出しのPTAの当番の為に早く寝るか。というタイミングで、長男が、金曜日に持ち帰って来ていた給食の白衣が残っている事が発覚、速攻で洗濯機を回し、アイロンをかけた@kjunichiです。
背景
だれもがターミナルにWebカメラ映像を表示を使うことができる時代なのに、Mojave以降その風景はガラリと変わってしまった。
Mojave以前
ssh越しにフツーに以下の自作アプリが使えた。
Mojave以降
カメラを利用するには許可を与えないといけない sshdに許可を与えれば解決しそうだが、これは.appに対してしか許可できなそう。
そこで、 カメラにアクセスするアプリはデスクトップ起動し、このアプリで ソケットを受け付け、接続してきたクライアントに対して撮影した画像を ソケット通信で返すという流れにすることで実現出来そう
図にすると以下のようなイメージ
やってみた
mojaveでカメラを使ってコマンドラインに表示する自作アプリがリモートから使えなくなったで、回避するべくクラサバ方式にnode.jsで実装してたのがようやく完成した。 pic.twitter.com/lBQ7NBPk8H
— kjunichi (@kjunichi) February 11, 2019
成果物
使い方
git clone https://github.com/kjunichi/camtyped cd camtyped npm i node main.js & node --experimental-modules client.mjs
関連記事
- RustでWebカメラの映像をコマンドプロンプトに出すコマンドを作った
- 久々にhomebridge-iSightを動かそうとしてmojaveにやられた
- gRPCでmojaveに勝利してリモートからWebカメラを利用した