コンテンツにスキップ

OpenClaw を使用したカメラキャプチャの実装ガイド

エージェントの開発を進める中で、デバイスのカメラから視覚情報を取得したい場面は多いですよね。しかし、プラットフォームごとに異なるパーミッション設定や、メディア処理の実装をゼロから行うのは、かなりの手間がかかります。

OpenClaw を使えば、iOS、Android、macOS のカメラ操作を共通のインターフェースで統合できます。エージェントに「目」を持たせるための最短ルートを見ていきましょう。

実装を始める前に、以下の環境が整っていることを確認してください。

  • Gateway 経由でペアリングされた iOS node
  • Gateway 経由でペアリングされた Android node
  • macOS app (Gateway 経由の node)

CLI helper を使用するのが、メディアを取得する最も簡単な方法です。以下の手順で、5分以内にキャプチャを試すことができます。

各デバイスの設定画面で、カメラへのアクセスが許可されていることを確認します。

  • iOS / Android: 設定の「Camera」タブで Allow Camera をオンにします。
  • macOS: Settings > General > Allow Camera をチェックします(デフォルトはオフです)。

CLI を使用して、特定の node から写真を撮影します。

Terminal window
# デフォルトで前面・背面の両方を撮影(iOS の場合)
openclaw nodes camera snap --node \<id\>
# 前面カメラを指定して撮影
openclaw nodes camera snap --node \<id\> --facing front

3. ビデオクリップの録画 (camera.clip)

Section titled “3. ビデオクリップの録画 (camera.clip)”

短時間のビデオ(デフォルト 3000ms)を録画します。

Terminal window
# 3秒間のビデオを録画
openclaw nodes camera clip --node \<id\> --duration 3000
# 音声なしで録画
openclaw nodes camera clip --node \<id\> --no-audio

iOS では、node.invoke を介して camera.snap や camera.clip を実行します。

  • フォアグラウンド要件: iOS node はアプリがフォアグラウンドにある時のみコマンドを受け付けます。バックグラウンド状態では NODE_BACKGROUND_UNAVAILABLE が返されます。
  • 自動リサイズ: base64 ペイロードを 5 MB 以下に抑えるため、写真は自動的に再圧縮されます。

Android も iOS と同様のコマンドを使用しますが、OS レベルの権限管理に注意が必要です。

  • ランタイム権限: CAMERA 権限と、音声付き録画の場合は RECORD_AUDIO 権限が必要です。権限がない場合は *_PERMISSION_REQUIRED エラーが発生します。
  • ペイロード制限: 写真は 5 MB 以下になるよう再圧縮されます。

macOS では、カメラだけでなく画面録画もサポートされています。

  • 遅延設定: camera.snap を実行すると、露出を安定させるためにデフォルトで 2000ms の待機時間(delayMs)が発生します。
  • 画面録画: カメラ映像ではなく、スクリーンの録画を行う場合は以下のコマンドを使用します。
Terminal window
openclaw nodes screen record --node \<id\> --duration 10s --fps 15

よくある問題と解決策をまとめました。

  • CAMERA_DISABLED エラーが返される アプリ内の設定で「Allow Camera」がオフになっていないか確認してください。
  • NODE_BACKGROUND_UNAVAILABLE が発生する iOS または Android デバイスで、アプリがフォアグラウンドで表示されている必要があります。
  • Android で撮影が失敗する Android OS の設定で、アプリにカメラとマイクの権限が与えられているか確認してください。
  • ビデオが途中で切れる ビデオクリップはペイロードサイズを抑えるため、最大 60 秒までに制限されています。
  • 写真の base64 ペイロードは、通信の安定性を保つため 5 MB 以下に制限されます。
  • ビデオクリップ(mp4)は最大 60 秒までとなります。

設定や実装で迷ったときは、AI Setup Assistant を活用してください。

  • Gateway API リファレンス
  • Node.js セットアップガイド
  • CLI コマンド一覧
  • メディア処理のベストプラクティス
OpenClaw

OpenClaw Expert

まだ解決しませんか?

このページで解決しない場合は、OpenClaw Expertに直接質問してください。