WebRTC やその他のテクノロジーを使用して、ほぼすべてのカメラ ストリームをリアルタイムで表示するためのホーム アシスタント カスタム コンポーネント。
バージョン 3 以降、ストリーミング サーバーは RTSPtoWebRTC から go2rtc に変更されました。
go2rtc
インストール
構成
カスタムカード
テンプレート
双方向オーディオ
スナップショットからテレグラムへ
ストリームをキャストまたは共有する
カメラへのストリーミング
よくある質問
デバッグ
既知の作業用カメラ
このコンポーネントは、go2rtc アプリケーションをストリーミング サーバーとして使用します。
サポートされている多くのプロトコルのストリーミング遅延を可能な限り低く抑える
RTSP、RTMP、HTTP (FLV/MJPEG/JPEG)、HomeKit カメラ、USB カメラ、その他のソースからのストリーミング
RTSP、WebRTC、MSE/MP4、または MJPEG へのストリーミング
一般的なコーデック H264/H265、AAC、PCMU/PCMA、OPUS をサポート
FFmpeg を介したサポートされていないコーデックのオンザフライ トランスコーディング
ストリーム コーデック、ブラウザ機能、ネットワーク構成に基づいてストリーミング テクノロジーを自動選択します
詳細については、go2rtc ドキュメントを参照してください。
go2rtc はいくつかの方法でインストールできます。
基本ユーザー- このコンポーネントは go2rtc の最新バージョンを自動的にダウンロードして実行します。自分で何もする必要はありません。
上級ユーザー- go2rtc または Frigate 12+ アドオンをインストールします。
Hakers - go2rtc をバイナリまたは Docker として LAN 内の任意のサーバーにインストールします。
go2rtc.yaml
ファイルを Hass 構成フォルダーに追加することで、go2rtc 設定を変更できます。
重要。 go2rtc は、パスワードなしでポート1984
で独自の Web インターフェイスを実行します。そこでは、アクティブなカメラ ストリームのリストが表示されます。 LAN 上の誰でもパスワードなしでアクセスできます。これは go2rtc 設定で無効にすることができます。
PS. go2rtc をサポートするもう 1 つの優れたカード、Frigate Lovelace カードもあります。
方法 1. HACS > 統合 > Plus > WebRTC > インストール
方法 2.最新リリースのwebrtc
フォルダーを/config/custom_components
フォルダーに手動でコピーします。
YAML モードで UI を管理している場合を除き、 custom_card
ホーム アシスタント UI に自動的に登録されます。 YAML モードで UI を管理している場合は、 custom:webrtc-camera
カードが機能するように、これを UI リソースに追加します。
URL: /webrtc/webrtc-camera.jsタイプ: モジュール
ブラウザを更新してください
[設定] > [デバイスとサービス] > [統合の追加] > [WebRTC]
統合がリストにない場合は、ブラウザのキャッシュをクリアする必要があります。
コンポーネントはデバイスとエンティティを作成しません。作成するサービスは 2 つと、lovelace カスタム カードのみです。
url
として次を使用できます。
go2rtc でサポートされている任意のプロトコル ( rtsp
、 rtmp
、 http
、 onvif
、 dvrip
、 homekit
、 roborock
など)
go2rtc 設定からのストリームname
Jinja2
テンプレート (サポートされているプロトコルまたはストリームname
をレンダリングする必要があります)
entity
として、Hass のほぼすべてのカメラを使用できます。
poster
として以下を使用できます。
http
-link (公開リンクである必要があります)
Hass のカメラentity
go2rtc 設定からのストリームname
Jinja2
テンプレート (カメラentity
またはストリームname
をレンダリングする必要があります)
最小限
タイプ: 'custom:webrtc-camera'url: 'rtsp://rtsp:[email protected]:554/av_stream/ch0'
または
type: 'custom:webrtc-camera'url: 'camera1' # go2rtc.yaml からのストリーム名
または
type: 'custom:webrtc-camera'entity: Camera.generic_stream # カメラのentity_idに変更します
または
タイプ: 'カスタム:webrtc-カメラ'ストリーム: - url: go2rtc_stream_hdname: HD # 名前はオプションですmode: webrtc # モードはオプションですmedia: video # メディアはオプションです - URL: go2rtc_stream_sdname: SDmode: msemedia: オーディオ
PS. mode
ラベルをクリックすると、アクティブなストリームを変更できます。または、 ui: true
が有効になっているストリームname
をクリックします。
満杯
すべての設定はオプションです。必要な設定は、 url
、 entity
、またはstreams
のみです。
type: 'custom:webrtc-camera'url: 'rtsp://rtsp:[email protected]:554/av_stream/ch0'entity: Camera.generic_streammode: webrtc,webrtc/tcp,mse,hls,mjpeg # ストリーム テクノロジー、デフォルトはすべてmedia: video,audio # ビデオまたはオーディオトラックのみを選択、デフォルトBothserver: http://192.168.1.123:1984/ # カスタム go2rtc サーバー アドレス、デフォルト emptyui: true # カスタム ビデオ コントロール、デフォルト falsedigital_ptz: # マウス/タッチによるデジタル ズームとパン、デフォルト: マウスドラッグパン: true マウスホイールズーム: true マウスダブルクリックズーム: true touch_drag_pan: true touch_pinch_zoom: true touch_tap_drag_zoom: true persist: true # ズーム倍率とビューポートの位置はページのリロードを維持します# digital_ptz: false # すべてのマウス/タッチデジタル ズームとパンタイトルを無効にします: 私のスーパー カメラ # オプションのカード titleposter: https://home-assistant.io/images/cast/ Splash.png # ストリーム読み込み中の静止画muted: true # 初期ミュート切り替え状態、デフォルトは false (ミュート解除)intersection: 0.75 # ビデオ要素が 75% 未満の場合、ストリームを自動停止は画面内にあります、デフォルトで 50%background: true # 表示されていないときにストリームを実行します (例: ビデオのクイック読み込み用)、デフォルト falseshortcuts: # カスタム ショートカット、デフォルトではなし- name: Record アイコン: mdi:レコードサークルアウトライン サービス: switch.toggle service_data:entity_id: switch.camera_record
パン、チルト、ズーム コントロール: PTZ 構成の例。
デフォルトで一時停止
type:custom:webrtc-cameraposter:dahua1-snap # go2rtc.yaml からのストリーム名 (http-snapshot)streams: - url: '' # 空の URL なので、ポスターのみが表示されます - url: dahua1 # go2rtc.yaml からのストリーム名 (rtsp-stream)
ビデオのアスペクト比の問題
スタイル: "ビデオ {アスペクト比: 16/9; オブジェクトフィット: フィル;}"
ビデオの回転
クライアント上 (空き CPU):
スタイル: 'ビデオ {変換: 回転(90度);アスペクト比: 1}'
サーバー上 - FFmpeg トランスコーディング (CPU コストが高い)
モードラベルを非表示にする
スタイル: '.mode {表示: なし}'
全画面ボタンを非表示にする
スタイル: '.fullscreen {表示: なし}'
スクリーンショットボタンを隠す
スタイル: '.スクリーンショット {表示: なし}'
PIP ボタンを非表示にする
スタイル: '.pictureinpicture {表示: なし}'
ショートカットの位置
スタイル: ".shortcuts {左: 未設定; 上: 25 ピクセル; 右: 5 ピクセル; 表示: フレックス; フレックス方向: 列}"
PTZ 位置
スタイル: ".ptz {右: 未設定; 左: 10px}"
モードラベルの位置
スタイル: '.header {bottom: 6px} .mode {position: 絶対;下: 0px}'
ヘッダー行の位置
スタイル: '.header {トップ: 未設定;下: 6px}'
v3.6.0 の新機能。
カード オプションのshortcuts
、 style
、 ptz
JavaScript テンプレートをサポートします
shortcuts
とstyle
では、 states
関連のテンプレートを使用できます
ptz
では、 streamName
/ streamID
関連のテンプレートを使用できます (複数のテンプレートを含むカードに便利です)
ショートカット: - 名前: Barn Lighticon: ${ states['light.yeelight_lamp'].state === 'on' ? 'mdi:outdoor-lamp':'mdi:lamp' }サービス: light.toggleservice_data:entity_id: light.yeelight_lamp
ptz:サービス:notify.persistent_notification data_left:message: ${ this.streamName } の左側をクリックしました data_right:message: ${ this.streamID } の権利がクリックされました
v3.4.0 の新機能。
go2rtc でサポートされているソースのみ
HTTPS アクセスによる Hass の場合のみ、この制限はブラウザーによるものです
WebRTCモードのみ
HTTPS は Hass モバイル アプリにとっても重要です。
media
パラメータにmicrophone
追加する必要があります。 2 つのストリームを使用できます。1 つはマイクあり、もう 1 つはマイクなしです。
タイプ: 'カスタム:webrtc-カメラ'ストリーム: - URL: go2rtc_stream - URL: go2rtc_streammode: webrtcmedia: ビデオ、オーディオ、マイク
PS. Hass モバイル アプリの場合は、内蔵アシストでマイクを使用できることを確認してください。
続きを読む
コンポーネントは、Google Cast Chromecast デバイス (Android TV および Google Smart Screen を含む) へのストリーミングをサポートします。詳細については wiki をご覧ください。
また、コンポーネントは、ホーム アシスタントへのアクセスを共有せずに、ストリームへの一時的または永続的なリンクの作成をサポートします。詳細については wiki をご覧ください。
v3.1.0 の新機能。
go2rtc サポートは、双方向音声サポートを備えたカメラでオーディオ ファイル (例: 音楽や TTS) とライブ ストリーム (例: ラジオ) を再生します。必要がある:
カメラが双方向オーディオソースをサポートしているかどうかを確認してください
go2rtc.yaml 構成でカメラ ストリームをセットアップする
カメラがサポートしているオーディオ コーデックを確認してください
configuration.yaml
でカメラの仮想メディア プレーヤーを作成します。
メディアプレーヤー: - プラットフォーム: webrtcname: Dahua カメラストリーム: dahuaaudio: pcmu/48000 - プラットフォーム: webrtcname: Tapo カメラストリーム: taboaudio: PCMA
Q. WebRTC による外部アクセスが機能しません
A. もっと読んで、新しい問題を作成しないでください。
Q. オーディオが機能しない
A. カメラが出力するオーディオ コーデックを確認してください。また、ビデオを見るためにどのようなテクノロジーを使用していますか。テクノロジーが異なれば、サポートされるコーデックも異なります。
configuration.yaml
に以下を追加します。
ロガー: デフォルト: 警告 ログ:custom_components.webrtc: デバッグ
ブランド | モデル | コメント |
---|---|---|
アクティブカム | AC-D2121IR3 | |
アクティブカム | AC-D7121IR1W | 応援音 |
アンドロイド | IPウェブカメラプロ | サポートサウンド、 rtsp://192.168.1.123:8080/h264_ulaw.sdp |
C-トロニクス | CTIPC-690C | サポートサウンド、メイン: rtsp://username:[email protected]:554/11 またはonvif://username:[email protected]:8080?subtype=MainStreamProfileToken |
ダーファ | DH-IPC-HDPW1431FP-AS-0280B、VTO2211G-P | 応援音 |
ダーファ | VTO2202F-P-S2 | 続きを読む |
イージーヴィズ | C3S | rtsp://admin:[email protected]:554/h264/ch01/main/av_stream および/h264/ch01/sub/av_stream |
イージーヴィズ | C3W、C3WN、C6CN、C6T | rtsp://admin:[email protected]:554/h264_stream |
イージーヴィズ | C8C | rtsp://admin:[email protected]:554/channel80 |
フォスカム | C1 | rtsp://user:[email protected]:554/videoMain |
フォスカム | C2M、R2M | rtsp://user:[email protected]:88/videoMain |
GWセキュリティ | GW5088IP | rtsp://192.168.1.123:554/mpeg4cif?username=admin&password=123456 |
GWセキュリティ | GW5078IP | rtsp://192.168.1.123:554/stream0?username=admin&password=123456 |
GWセキュリティ | GW5071IP | まだ機能していませんrtsp://admin:[email protected]:554/live/main またはrtsp://192.168.0.207:554/live/main?username=admin&password=123456 のようなものです。 |
ハイクビジョン | DS-2CD2T47G1-L、DS-2CD1321-I、DS-2CD2143G0-IS | rtsp://user:[email protected]:554/ISAPI/Streaming/Channels/102 |
ハイクビジョン | IPC-HDW3849H-AS-PV、IPC-EW5531-AS | カスタム コンポーネントを使用して nvr DHI-NVR2108HS-8P-I に接続 |
イモウ | IPC-F42-B2E3 (Bullet 2C 4MP) | rtsp://admin:[email protected]:554/cam/realmonitor?channel=1&subtype=0 |
QNAP | QUSBCam2 | rtsp://username:[email protected]:554/channel1 ドキュメント |
ラズベリーパイ | PiCam | 続きを読む |
レオリンク | RLC-410、RLC-410W、RLC-510WA、E1 プロ、E1 ズーム、4505MP | RLC-510WAサポート音、E1 Zoomサポート音、PTZおよびズーム |
レオリンク | E1 | rtsp://admin:[email protected]:554/h264Preview_01_main |
ソノフ | GK-200MP2-B | サウンドと PTZ をサポート、 rtsp://rtsp:[email protected]:554/av_stream/ch0 および/av_stream/ch1 |
スリホーム | SH035 | rtsp://192.168.xxx.xxx:8554/profile0 、 /profile1 、 /profile2 |
トプヴィコ | rtsp://192.168.1.123:8554/stream0 またはrtsp://192.168.1.123:554/ch0_0.264 | |
TPリンク | タポ C100/C200/C210/C220/C310 | rtsp://user:[email protected]:554/stream1 および/stream2 |
TVT/セキュテック | NVR-0808B2-8P | rtsp://user:[email protected]:554/chID=1&streamType=main およびchID=2&streamType=main |
TVT/セキュテック | IPC5-DF28SN | rtsp://user:[email protected]:554/profile1 および/profile2 |
ユニフィ | G4 ドーム、G4 ドアベル、G3 ブレット、G3 フレックス | Unifi Protect のカメラの設定から rtsps リンクをコピーしますが、リンクをrstp:// (デフォルトは rstps://) に変更し、ポートを7447 に変更し、クエリ パラメータを削除します。 |
ワイズ | カム v2/v3、カム パン v1/v2 | 応援音 |
シャオミ | 大芳 | ハックあり、 rtsp://192.168.1.123:8554/unicast ビデオ: H264、サイズ: 1920x1080、ビットレート: 1000、フォーマット: VBR、フレームレート: 10 オーディオ: PCMU、レート入力: 8000、レート出力: 44100 |
エール大学 | SV-4CFDVR-2 | rtsp://admin:[email protected]/cam/realmonitor?channel=1&subtype=0 |
イー | Hi3518e チップセット | ハック付き |
イー | MStar Infinity チップセット | ハック付き |