LiveCapture3 iPhone/Android版をアップデートしました
2023年6月7日
先日、LiveCapture3 iPhone/Android版をアップデートしました。
ダウンロードはこちら。
今までAndroidはカメラアクセスの処理が非常に複雑になっており、安定性に欠けているところが多くありましたので、今回はAndroid版の安定性向上をメインに修正を行いました。
今まではAndroidのCamera2 APIというカメラアクセスのライブラリを直接使用していたのですが、最近GoogleからリリースされたCameraX APIを使用して全面的にコードを書き換えました。
CameraXでも、内部的にはCamera2を使用しているのですが、直接Camera2 APIを触って実装するより比較的簡易な実装が可能になっており、コードもシンプルにすることができます。また、Android特有のデバイス間のカメラ機能の差異に関しても、ある程度の部分をCameraX内部で吸収してくれているので、今までと比べるとかなり安定性が上がったと思います。
また、実験的な機能を追加しすぎた感があったので、そのあたりの整理をしました。
具体的には以下の機能を削除しています。
- AI検知機能:独自のモデルファイルを読み込んで検知する機能
- 顔検出機能:顔を検出して検知する機能
これらの機能はAI物体検出機能と被るところがあるので、削除する代わりにAI物体検出機能の方の機能を向上させる方向で対応しました。
また、ストレージ残容量の監視と、自動削除機能なども追加しています。
今までのバージョンよりも安定性が上がっている(と思います)ので、ぜひお試しください!
ちなみに、常時稼働を行うためには、スマホ自体の設定も必要です。下記を参考にしてください。
とても多機能で便利そうなので、これからPC版をUSBカメラで使わせていただこうと思っております。PC版には、スマホ版のような「スケジュール機能」はついていないのでしょうか?
また、連続録画をしたいので、30分や1時間ごとにファイルが区切られて作成されるようにしたいと考えています。監視設定のキャプチャー間隔をその時間とし、録画時間をそれよりは少し短くしてファイル生成時間を見ておく、という設定でテストしております。動作としては、起動(監視)開始時には録画は動かず、2回目のタイマー監視開始のタイミングでキャプチャアクションの録画が働くように思えるのですが、そのような仕様なのでしょうか?(希望としては、タイマー監視初回起動でも録画は動いてほしい、のですが…。そうでないと、撮り始めたい時刻の30分や1時間前に監視開始とする必要がありそうなのですが?)
希望の録画設定ができる方法があれば、お教えください。
タイマー録画に関してですが、確かに1回目のアクションが実行されません。
これは不便だと思いますので、今後のバージョンアップで修正を検討いたします。
それまでの間のワークアラウンドとして、外部からキャプチャー実行を指示するExtCap.exeを使用する方法で回避できるかもしれません。
ExtCapの詳細は下記を参照してください。
外部コマンド連携について
手動キャプチャ設定で、タイマーキャプチャーと同じ長さの動画撮影を設定し、起動時にLiveCapture3に対してExtCapでcaptureを実行させれば実現できる気がします。
(すいません、試していないので、、、)
ただ、ExtCapはLiveCapture3が起動してコマンド受付可能な状態になってからでないと失敗しますので、バッチプログラム等で少しSleepを入れるような調整が必要かもしれません。
早速の回答ありがとうございます!回避策もご提示ありがとうございました。よく分かりましたが、挙動確認含め少し手間がありますね。
また、スマホ版にあるような、「スケジュール機能」のWin版は、やはりないでしょうか。昼間だけor夜間だけ、かつ、平日だけor休日だけ、などのパターンで常時録画を走らせる、には、スマホ版のほうが向いているのでしょうか?
スケジュール機能は、LiveCapture2の頃は実装していたのですが、Windows7より、タスクスケジューラが搭載されていますので、そちらで対応可能です。
@IT スクスケジューラで定期的な作業を自動化する
LiveCapture3自体の起動だけでなく、ExtCapの起動を記載したバッチプログラムなどをスケジューリングすることもできると思います。
ありがとうございます!タスクスケジューラ、使ったことがありませんでした…。
これで1時間ずつ録画する場合でも、録画開始したい1時間前に起動させれば簡単できることを動作確認しました。また、終了についても、コマンドプロンプトで taskkill を実行させることを入れれば終了できることを動作確認しました。