วิธีใช้งาน go2rtc สำหรับ Home Assistant
go2rtc คือ application ที่มีความสามารถในการ streaming กล้องเกือบทุกประเภท เช่น RTSP, RTMP, WebRTC, MJPEG, FFmpeg อื่นๆ อีกมากมาย โดยความสามารถของเขา จะสามารถ restream จาก protocol: A ไปเป็น protocol: B (อ่านเพิ่มเติม)
ตัวอย่าง RTSP -> RTSP, RTSP -> MJPEG, RTSP -> WebRTC, ONVIF -> MJPEG
กล้องที่ทำการ restream ผ่านทาง go2rtc จะมีการเพิ่ม codecs เพื่อให้ support WebRTC และ MSE โดยอัตโนมัติ (อ่านเพิ่มเติม)
สำหรับวิธีติดตั้งมีหลายวิธี แต่ในบทความนี้ขอแนะนำเป็น 2 แบบ ที่ผมลองใช้งานจริง และตัวบทความเขียนตอน go2rtc version: 1.5.0
วิธีติดตั้งแบบ Home Assistant Add-on
1. Settings -> Add-ons -> Add-on Store -> repositories > Add
https://github.com/AlexxIT/hassio-addons
2. go2rtc > Install > Start
3. เข้าใช้งาน OPEN WEB UI
วิธีติดตั้งแบบ Docker
1. สร้าง docker-compose หรือ stack portainer
services:
go2rtc:
image: alexxit/go2rtc:latest
container_name: go2rtc
network_mode: host
privileged: true
environment:
- TZ=Asia/Bangkok
volumes:
- /root/go2rtc:/config # folder for go2rtc.yaml file (edit from WebUI)
restart: unless-stopped
2. เข้าใช้งาน http://{{IP_HOST}}:1984
วิธีใช้งาน go2rtc
เมื่อเราเข้าไปที่ WebUI จะมีเมนูให้เราใช้งานหลักคือ Streams กับ Config
- Streams สำหรับทดสอบ stream
- Config สำหรับแก้ไข configuration
วิธีแก้ไข Configuration
สำหรับวิธีแก้ไขตัว Configuration ให้เข้าไปที่เมนู Config จะเป็นการเขียนรูปแบบ yaml เมื่อเขียนเสร็จสามารถกดปุ่ม Save & Restart และกลับมาทดสอบที่เมนู Streams (อ่านเพิ่มเติม)
ตัวอย่าง Source: RTSP -> To: RTSP
ตัวอย่าง Source: RTSP -> To: MJPEG
ตัวอย่าง Source: ONVIF -> To: RTSP, To: MJPEG
ตัวอย่าง Source: RTSP ไม่มีเสียง OPUS, AAC
ตัวอย่าง JPEG snapshots (สามารถใช้งานได้เป็นค่าเริ่มต้น)
วิธีติดตั้ง WebRTC Camera
ผมเคยเขียนไว้ในบทความเก่าไว้แระ เป็นการติดตั้งผ่านทาง HACS ค้นหา "WebRTC Camera" แต่ขั้นตอนการ Add Integrations เข้าไปที่ Home Assistant จะเปลี่ยนแปลงไปนิดนึง ให้ทำการกรอก URL ของ go2rtc เข้าไปครับ