WebRTC Camera. RTSP 스트림의 지연을 1초 이내(심지어 밀리초 단위까지)로 낮출 수 있으며 양방향 음성도 지원합니다.
아래는 자세한 설치 및 사용 튜토리얼입니다:
1단계: 준비 작업
- Home Assistant가 이미 설치되어 실행 중이어야 합니다.
- HACS(Home Assistant Community Store)가 설치되어 있어야 합니다.
- HACS를 설치하지 않았다면 먼저 설치해야 합니다. 서드파티 플러그인을 관리하는 필수 도구입니다.
카메라의 RTSP 주소(예: rtsp://admin:password@192.168.1.x:554/stream), 또는 HA에 이미 추가한 카메라 엔터티(Entity ID).
2단계: 통합 설치(HACS 경유)
- Home Assistant 왼쪽 메뉴의 HACS를 엽니다.
- Integrations(통합)를 클릭합니다.
- 오른쪽 아래의 Explore & Download Repositories(저장소 탐색 및 다운로드)를 클릭합니다.
- 검색창에 WebRTC를 입력합니다.
- WebRTC Camera(작성자 AlexxIT)를 찾아 클릭해 들어갑니다.
- 오른쪽 아래의 Download를 클릭해 다운로드합니다.
- 다운로드가 완료되면 반드시 Home Assistant를 재시작해야 합니다.
3단계: 통합 설정
- 재시작이 완료되면 HA 왼쪽 메뉴의 설정(Settings) -> 기기 및 서비스(Devices & Services)로 이동합니다.
- 오른쪽 아래의 통합 추가(Add Integration)를 클릭합니다.
- WebRTC Camera를 검색합니다.
- 클릭하여 추가합니다. 보통 추가 설정은 필요 없고 그대로 제출하면 됩니다. 백그라운드에서 go2rtc 서버(핵심 스트리밍 서비스입니다)를 자동으로 설치하고 실행합니다.
4단계: 대시보드에서 사용(프런트엔드 카드 설정)
가장 중요한 단계로, 카메라 화면을 Lovelace 대시보드에 추가해야 합니다.
- 대시보드 페이지로 들어가 오른쪽 위의 점 세 개 -> 대시보드 편집(Edit Dashboard)을 클릭합니다.
- 오른쪽 아래의 카드 추가(Add Card)를 클릭합니다.
- 맨 아래로 스크롤하여 수동(Manual) 카드를 선택합니다(또는 Custom: WebRTC Camera를 검색합니다).
- 코드 편집기에 다음 YAML 설정을 입력합니다.
시나리오 A: RTSP 주소를 직접 사용(권장, 지연 최소)
카메라의 RTSP 주소를 알고 있다면 그대로 입력하는 것이 가장 효과적입니다.
type: custom:webrtc-cameraurl: rtsp://admin:password@192.168.1.10:554/h264/ch1/main/av_stream
(주의: url은 본인 카메라의 실제 주소로 바꿔 주세요)
시나리오 B: 기존 HA 카메라 엔터티 사용
HA에서 Onvif 등으로 카메라를 이미 연동했다면 엔터티 ID를 바로 사용할 수 있습니다.
type: custom:webrtc-cameraentity: camera.living_room_camera
(주의: entity는 HA의 카메라 엔터티 ID로 바꿔 주세요)
시나리오 C: 고급 설정(PTZ 제어, 스타일 조정)
카메라가 팬틸트(PTZ)를 지원한다면 제어 버튼을 추가할 수 있습니다:
type: custom:webrtc-cameraurl: rtsp://admin:password@192.168.1.10:554/stream
# 开启 PTZ 控制 (需要摄像头支持 Onvif 并且 HA 已配置)
ptz:
service: onvif.ptz
data_left:
entity_id: camera.my_camera
pan: LEFT
data_right:
entity_id: camera.my_camera
pan: RIGHT
data_up:
entity_id: camera.my_camera
tilt: UP
data_down:
entity_id: camera.my_camera
tilt: DOWN
5단계: 고급 주제와 외부망 접속(중요)
LAN 내에서는 위 설정이 보통 그대로 작동합니다. 하지만 외부망(모바일 데이터나 회사 Wi-Fi)에서 집의 HA에 접속해 저지연 영상을 보려면 NAT 통과 문제가 발생합니다.
WebRTC 프로토콜은 UDP 연결에 의존하는데, 공유기는 보통 이런 연결을 차단합니다.
해결 방법: 포트 매핑 설정
이 통합은 기본적으로 8555 포트를 영상 스트림 전송에 사용합니다.
- 공유기 관리 페이지에 로그인합니다.
- 포트 포워딩(Port Forwarding) 설정을 찾습니다.
- 규칙을 하나 추가합니다:
- 외부 포트: 8555
- 내부 IP: Home Assistant의 IP 주소
- 내부 포트: 8555
- 프로토콜: TCP + UDP
Docker로 HA를 운영한다면 Docker 컨테이너 시작 시 8555 포트가 매핑되었는지 확인하세요(-p 8555:8555/tcp -p 8555:8555/udp).
자주 발생하는 문제 해결(FAQ)
1. 화면에 “WebRTC” 대신 “MSE”가 표시되고 지연도 있나요?
- WebRTC 연결이 실패해 MSE 모드로 폴백했다는 뜻입니다. 보통 네트워크 문제(외부망에서 UDP 포트가 열려 있지 않은 경우 등)나 브라우저 미지원이 원인입니다.
- H.265 인코딩 문제: WebRTC는 대부분의 브라우저(특히 Chrome/데스크톱)에서 H.265(HEVC) 인코딩을 지원하지 않습니다. 카메라 관리 설정에 들어가 영상 인코딩을 H.264로 변경하세요.
2. 휴대폰 App에서 볼 수 없나요?
- Home Assistant App이 최신 버전으로 업데이트되었는지 확인하세요.
- iOS라면 로컬 네트워크 권한이 켜져 있는지 확인하세요.
3. 양방향 음성을 활성화하려면?
- 카메라가 양방향 음성 표준을 지원해야 하고 설정도 비교적 복잡합니다(보통 go2rtc.yaml 파일을 편집해야 합니다). 화면만 보려면 기본 설정으로 충분합니다.
4. 화면이 계속 초록색이거나 깨져 보이나요?
- 90%는 카메라가 H.265 형식으로 출력하기 때문입니다. 반드시 H.264로 변경하세요.
요약
핵심 흐름은 HACS 설치 -> 재시작 -> 통합 추가 -> 대시보드에 custom:webrtc-camera 카드 추가입니다. 설정이 성공하면 화면이 거의 실시간이 되고 경험이 질적으로 크게 향상됩니다.