ChromeOS 対応 - ウェブカメラ仕様 v1.3

バージョン: 1.3.1
最終更新日: 2024-02-01

凡例

商品動詞 開発アクション
「必須」 必須のプロダクト要件
「すべきである」 推奨事項(省略可)
「MAY」 あると良い

概要

このドキュメントでは、ChromeOS 互換の外部ウェブカメラの要件について説明します。この仕様は WWCB プロダクトや、Chromebook と一緒に設計、認定されたプロダクトには適用されません。

ウェブカメラの種類

このドキュメントでは、ビデオ会議を中心に、通常の USB ウェブカメラについて説明します。

ソフトウェアの観点からは、UVC をサポートしカメラのように機能する特殊なプロダクトについては説明しません。特殊な画像処理製品の例には、次のようなものがあります。

  • IR カメラ
  • RGB カメラ
  • ドキュメント カメラ
  • HDMI キャプチャ アダプター
  • 顕微鏡

ハードウェアとパッケージング

  • カメラは USB バージョン 2.0 以降をサポートしなければなりません。
  • USB カメラは、USB 2.0 Type-A レセプタクルへの接続をサポートしなければなりません。
  • USB カメラは、USB Type-C レセプタクルへの接続をサポートしなければなりません。 根拠: すべての Chromebook に USB-C ポートが必要です。USB-A は任意です。
  • USB カメラには、取り外し可能な USB ケーブルで使用する USB Type-C レセプタクルがあるべきです。
  • USB カメラは、USB C - A ケーブルを使用して Chrome デバイスに接続すべきです。
  • USB カメラは、USB C - A アダプターを使用して Chrome デバイスに接続しても構いません。
  • USB カメラに USB ケーブルが含まれる場合、ケーブルは USB-IF 認証を取得すべきです。
  • USB カメラに USB 変換アダプターが含まれる場合、アダプターはコネクタの ChromeOS 互換仕様1 を遵守しなければなりません。
  • USB カメラが USB ケーブルを含む場合、ケーブルは USB 3 データレートをサポートしても構いません。
  • USB カメラには、カメラのアクティビティ インジケーターがあるべきです。
  • カメラ アクティビティ インジケーターを LED にすべきです。
  • カメラが ChromeOS ホストデバイスにデータを送信しているときは、カメラ アクティビティ インジケーターがアクティブな状態でなければなりません。
  • カメラが内部メモリにデータを保存している場合、カメラ アクティビティ インジケーターはアクティブな状態でなければなりません。
  • カメラがデータを保存していない場合や、ホストにデータを送信していない場合、カメラ アクティビティ インジケーターがアクティブな状態になってはなりません。
  • カメラ アクティビティ インジケーターは、カメラとは独立して制御可能であってはなりません。
  • カメラ アクティビティ インジケーターは、ソフトウェアで制御可能であってはなりません。
  • USB カメラはマイクを備えていても構いません。
  • USB カメラにはプライバシー メカニズムがあるべきです。
  • プライバシー メカニズムは、レンズをブロックする物理的なカバーを含むべきです。
  • プライバシー メカニズムは、レンズをブロックする電子シャッターを含んでも構いません。
  • プライバシー メカニズムは、プライバシーが選択されたときに閉じられる物理的なプライバシー スイッチを含まなければなりません。
  • プライバシー スイッチの状態を ChromeOS ホストデバイスに通知しなければなりません。

電源要件

  • USB カメラは、USB Type-C 仕様で規定されている優先順位の高い順に電力制限を尊重しなければなりません。
    • (可能な場合)USB3 ホストが列挙構成を超えて過電流にならないこと
    • USB2 ホストは、列挙構成を超えて過電流にならないこと
  • 一般的なガイドラインは次のとおりです。
    • USB2 デバイスの消費電流は、瞬間的または持続的に 500mA 以下とします。
    • USB3 デバイスの消費電流は、瞬間的または持続的に 900mA 以下とします。
    • USB 仕様 [^power limit] に基づき、電力制限のあるホストにさらに厳しい制限が適用される場合があります。

電気的要件

USB Type-C の要件

  • USB-C レセプタクルの設計では、CC1 と CC2 に 2 つの独立した Rd プルダウンを使用する必要があります
    • (CC1 と CC2 をショートさせることはできません)。
  • USB-C キャプティブ ケーブルの設計では、Rd プルダウンを 1 つだけ使用する必要があります
  • 仕様に準拠したスルーレートでの突入時に Vbus が過電流してはならない

OCP の保護

  • 次の理由により、Vconn または VBUS で過電流イベントを引き起こすことはできません
    • Vbus のバルク突入容量
    • Vbus のアクティベーションの突発
    • Vconn のバルク突入容量
    • Vconn の有効化の急増

USB ビデオクラス(UVC)

  • USB カメラは、UVC(USB Video Class)1.0 以降をサポートしなければなりません。
  • USB カメラは、追加のソフトウェアなしで Chromebook で動作しなければなりません。
    • ChromeOS には uvcvideo linux ドライバが含まれています。
  • USB カメラは、MJPEG 形式の 30 fps での 1,280x720 のストリーミングをサポートしなければなりません。
  • USB カメラは、自動ホワイト バランス(AWB)をサポートしなければなりません。
  • USB カメラは自動露出(AE)をサポートしなければなりません。
  • USB カメラは、50 Hz と 60 Hz の電源ライン周波数のアンチバンディングをサポートしなければなりません。
  • USB カメラは、最初のフレームのストリーミングを 2,000 ミリ秒で開始しなければなりません。
  • USB カメラは、単調なタイムスタンプをレポートしなければなりません。
  • USB カメラは、500 ミリ秒で最初のフレームのストリーミングを開始すべきです。
  • USB カメラはオートフォーカス(AF)をサポートすべきです。
  • USB カメラは、640x480 のストリーミングをサポートすべきです。
  • USB カメラは、640x360 のストリーミングをサポートすべきです。
  • USB カメラは、24 fps でのストリーミングをサポートすべきです。
  • USB カメラは、ユーザー フレンドリーな表示名をアドバタイズすべきです。
  • USB カメラは、固定フレームレート制御(V4L2_CID_EXPOSURE_AUTO_PRIORITY/UVC_CT_AE_PRIORITY_CONTROL)をサポートすべきです。
  • USB カメラは、低照度環境で 15 fps 以上のストリーミングを継続すべきです。
  • USB カメラは、パン、チルト、ズーム(PTZ)コントロールをサポートしても構いません。

    • USB カメラが PTZ コントロールをサポートしている場合、カメラはズーム比として(値 / 100)のズーム コントロール(V4L2_CID_ZOOM_ABSOLUTE)をサポートしなければなりません。
      • たとえば、コントロール値が 250 であれば、2.5x = 250% を意味し、100 はズームなしの通常の値を意味します。デフォルト値にする必要があります。
    • USB カメラが PTZ コントロールをサポートしている場合、カメラはパンとチルトのコントロールを一緒にサポートしなければなりません。
    • カメラがサポートするすべての形式と解像度について、USB カメラは V4L2_CID_ZOOM_ABSOLUTE コントロールによって公開される単一の [最小、最大] 範囲で正常に動作すべきです。
      • たとえば、720p と 1080p のストリーミングで最大ズーム倍率を同じにすべきです。
  • USB カメラが物理的なプライバシー シャッターまたはキルスイッチを含む場合、カメラは V4L2_CID_PRIVACY/UVC_CT_PRIVACY_CONTROL を実装しても構いません。

  • USB カメラが V4L2_CID_PRIVACY/UVC_CT_PRIVACY_CONTROL をサポートする場合、物理的なシャッター/スイッチに従ってプライバシー制御状態を公開しなければなりません。

  • USB カメラが V4L2_CID_PRIVACY/UVC_CT_PRIVACY_CONTROL をサポートしている場合、レンズが手やステッカーなどの他の物体で覆われていたとしても、物理的なシャッター/スイッチが使用されていないときは、プライバシー制御を「オン」として報告してはなりません。

  • USB カメラが V4L2_CID_PRIVACY/UVC_CT_PRIVACY_CONTROL をサポートしている場合、カメラがストリーミングまたはアイドル状態(streamon/streamoff)のときに、クエリして有効な値を返せる必要があります。

  • プライバシー シャッター/キルスイッチは、AP によって変更可能であってはなりません。物理的なスイッチは、物理的な操作によってのみ復元しなければなりません。

  • 物理的なプライバシー シャッターまたはキルスイッチがある場合、USB カメラはプライバシー管理をサポートすべきです。

  • USB カメラは、USB サスペンドをサポートすべきです。デバイスが USB の一時停止をサポートしている場合:

    • USB カメラが USB 一時停止をサポートしている場合、カメラは UVC_QUIRK_WAKE_AUTOSUSPEND など、システムの特別な処理(デバイス固有の回避策)なしで、有効なフレームを再開して生成できなければなりません。
  • USB カメラは、無効な MJPEG フレームを出力してはなりません。

  • 解像度を動的に切り替えるとき、USB カメラはハングしてはなりません。

音声 - マイク

このセクションの内容は、ウェブカメラにマイクが搭載されている場合にのみ適用されます。

形式

  • 再生と録画の両方
    • サポートされているサンプルレートは 16k 以上である必要があります
    • S16_LE 形式をサポートする
  • 正しいチャンネル番号と設定になっている必要があります。
  • ヘッドセットがサポートしていると宣言するサンプリング レートはすべて、正しく動作する必要があります。
    • 測定レートとサンプリング レートの偏差は 0.1% 以下である必要があります。
    • 測定されたレートの線形回帰の標準誤差は 30 未満でなければなりません。
  • ヘッドセットは、サポートするようアサートしているさまざまなサンプルレートでの再生またはキャプチャをサポートする必要があります。
    • たとえば、44.1K 未満の音声を再生し、48K 未満の音声を同時にキャプチャします。
      • それ以外の場合は、ChromeOS で特定の構成ファイルを追加して、システム側で検出されないようにする必要があります。

ミュート

  • キャプチャ パス - ミュート
    • ユーザーがオーディオ機器をミュートするためのインターフェースがある場合は、それも備える必要があります。
      • ミュート状態は、
        • デバイスの開閉。
        • 別の入力デバイスに切り替えています。
    • ヘッドセットのミュート状態を示すユーザー インターフェースが提供されている場合は、状態が変化したときにそれに応じて変更する必要があります。

ボリューム(周波数応答)

  • 出力周波数応答(MAY)
    • ユーザーがキャプチャ ゲインを手動で調整せずにヘッドセットを使用するには、周波数応答の要件が必要です。
    • BT 用、USB デバイス
    • 音声サンプルについて計算された平均 RMS dBFS レベル出力が 94 dBSPL 未満の場合、次の条件を満たす必要があります。
      • 1k のサイントーンで [-15, -5] dBFS の範囲。
        • この値は 4K と 7K のサイントーンの基準点として使用されます。
      • 4k および 7k のサイントーンで、1k レスポンスのリファレンスが ±5 dB の範囲内。
        • これは、許容できる平坦な周波数応答を確保するためです。
    • 3.5 mm デバイスでは、ユーザーがキャプチャ ゲインを手動で調整せずにヘッドセットを使用するには、周波数応答の要件が必要です。
      • 信号レベル 94 dBSPL で 1k、4k、7k のサイントーンに対して計算された平均 RMS dBFS レベル出力
      • dBSPL は 0 ~-23 dBFS の範囲にする必要があります。

音声/映像同期

  • 音声同期
    • 音声が完全に同期してから外れる時間。
    • 偏差は -95 ~ 25 ミリ秒の範囲にする必要があります。
      • 注:
        • (+)動画より音声のほうが速い
        • (-)音声が動画より低い

アプリの互換性

  • USB カメラは、ウェブ版の Google Meet で動作しなければなりません。
    • 初めて会議に参加するときに、Meet が USB カメラを認識しなければなりません。
  • USB カメラは、組み込みの ChromeOS カメラアプリで動作しなければなりません。
  • USB カメラにマイクが内蔵されている場合は、動画と音声を同期する必要があります。
  • USB カメラは、fwupd を介したファームウェア アップデートをサポートすべきです。

変更履歴

日付 バージョン メモ
2024-02-01 1.3.1 新しいプラットフォームでの共和性
2023-11-08 1.3 パートナー サイトの初回公開

  1. 利用可能になると、このページがリンクされます。