Kết nối nguồn đa hãng
Nhận camera ONVIF Profile T/G, RTSP, RTMP, SRT, RTP/GB28181, NVR/VMS và tệp MP4.
HTML5STREAM kết nối camera, NVR và VMS với các ứng dụng Web, Mobile, AI, IoT và SCADA. Nền tảng cung cấp live view độ trễ thấp, recording, playback, PTZ và API để rút ngắn thời gian phát triển giải pháp video.

Từ ingest, chuyển đổi và ghi hình đến playback trên trình duyệt, HTML5STREAM gom các năng lực media cốt lõi vào một dịch vụ có thể nhúng qua API.
Nhận camera ONVIF Profile T/G, RTSP, RTMP, SRT, RTP/GB28181, NVR/VMS và tệp MP4.
Demux, mux, relay, chuyển đổi giao thức, snapshot và recording trong media core C++.
Đưa video tới Chrome, Edge, Safari và Firefox bằng WebRTC, WebSocket, HLS, HTTP-FLV hoặc fMP4.
REST API, webhook và C API hỗ trợ nhúng streaming vào VMS, SOC, video wall, GIS/eMap hoặc ứng dụng riêng.
Vận hành tại edge gateway, máy chủ on-premise hoặc cụm trung tâm nhiều địa điểm.
Bật pipeline CUDA/TensorRT tùy chọn khi cần phát hiện đối tượng; AI được tách khỏi lõi streaming mặc định.
Sơ đồ dưới đây mô tả luồng từ thiết bị, qua media core, tới trình duyệt và hệ thống nghiệp vụ. Các khối được lập trình trực tiếp để luôn rõ nét trên mọi màn hình.
*Mốc dưới 400 ms là mục tiêu thiết kế cho WebRTC; kết quả thực tế phụ thuộc codec, mạng, NAT/TURN và thiết bị người xem.
Hai năng lực giải quyết hai lớp bài toán khác nhau: TURN bảo đảm đường truyền WebRTC khi kết nối trực tiếp thất bại; card PCIe chuyển mã thay đổi codec trước khi H5S phân phối video.
H5S đồng thời điều phối signaling và làm TURN relay. Trình duyệt vẫn ưu tiên đường truyền trực tiếp; chỉ khi NAT hoặc firewall chặn kết nối, media mới được chuyển tiếp qua H5S.
Trao đổi SDP, ICE candidate và thông tin thiết lập phiên giữa web client với H5S.
Chuyển tiếp media khi hai đầu không thể thiết lập đường truyền WebRTC trực tiếp.
http://47.1.1.123:9080https://47.1.1.123:9443192.168.100.123:808047.1.1.123:9080HTTP / WebRTC signaling192.168.100.123:844347.1.1.123:9443HTTPS / WSS signaling192.168.100.123:347847.1.1.123:3478TURN relayKhi relay được sử dụng, mỗi phiên xem đi qua H5S. Cần sizing đường truyền Internet, NIC và outbound của trung tâm dữ liệu theo tổng bitrate đồng thời.
TURN chuyển tiếp dữ liệu; TURN không tự động chuyển mã codec. Overhead giao thức và dự phòng vận hành chưa được tính trong ví dụ.2 Mbps × 100 người xem ≈ 200 Mbps outboundNguồn H.265 được đưa qua card PCIe chuyên dụng. Card thực hiện chuyển mã phần cứng sang AV1, sau đó H5S đóng vai trò phân phối luồng AV1 tới web client.
Thiết bị và trình duyệt đầu cuối phải hỗ trợ giải mã AV1. Cần kiểm chứng latency, chất lượng và mật độ kênh bằng đúng card, driver và profile codec dự kiến dùng.
Camera H.265 → card PCIe chuyển sang AV1 → H5S WebRTC Server → kết nối trực tiếp hoặc TURN relay → trình duyệt hỗ trợ AV1.
Ưu tiên HTTPS/WSS cho signaling và TURN qua TLS khi điều kiện mạng yêu cầu. Port forwarding TCP đơn lẻ có thể chưa đủ: cần thiết kế ICE/TURN, UDP/TCP fallback, chứng chỉ TLS, firewall và public IP nhất quán.
Bắt đầu với một gateway gần camera hoặc mở rộng thành lõi video nhiều địa điểm mà không thay đổi giao diện tích hợp.
Ingest và chuyển đổi ngay tại điểm đặt camera để giảm băng thông WAN và duy trì xem nội bộ.
Tập trung quản lý luồng, recording và quyền truy cập cho nhiều site hoặc hệ thống VMS hiện hữu.
Bổ sung GPU NVIDIA và TensorRT khi use case cần inference thời gian thực gần nguồn video.
Chọn gói phù hợp với máy chủ Linux x86_64. Các lệnh dưới đây tải trực tiếp từ GitHub Release chính thức của dự án.
curl -LO https://github.com/AQ-VISION/html5stream/releases/download/v8.1.0/SHA256SUMS
sha256sum -c SHA256SUMS --ignore-missingcurl -LO https://github.com/AQ-VISION/html5stream/releases/download/v8.1.0/html5stream_8.1.0_amd64.deb
sudo apt install ./html5stream_8.1.0_amd64.deb
sudo systemctl enable --now html5streamcurl -LO https://github.com/AQ-VISION/html5stream/releases/download/v8.1.0/html5stream-8.1.0-1.x86_64.rpm
sudo dnf install ./html5stream-8.1.0-1.x86_64.rpm
sudo systemctl enable --now html5streamcurl -LO https://github.com/AQ-VISION/html5stream/releases/download/v8.1.0/html5stream-8.1.0-Linux-x86_64.tar.gz
tar -xzf html5stream-8.1.0-Linux-x86_64.tar.gz
./usr/bin/html5stream-mediaserverGói hệ thống dùng service html5stream. Tệp cấu hình mặc định nằm tại /usr/libexec/html5stream/config.ini; hãy sao lưu trước khi đổi cổng, chứng chỉ TLS hoặc chính sách recording.
/usr/libexec/html5stream/config.inisudo systemctl status html5stream
sudo journalctl -u html5stream -f
curl -I http://127.0.0.1:8080/Sau khi service hoạt động, mở giao diện quản trị nhúng tại địa chỉ dưới đây. Thay SERVER_IP bằng IP hoặc hostname của máy chủ.
http://SERVER_IP:8080/admin/Chỉ mở những cổng thực sự được bật. Với Internet public, đặt reverse proxy/TLS phía trước HTTP API và giới hạn cổng media bằng firewall.
HTTP console / API
HTTPS console / API
RTSP
RTMP
WebRTC signaling
WebRTC media
ICE / TURN
SRT
RTP proxy
Dùng CMake để tạo bản Release tối giản. ENABLE_AI mặc định tắt nhằm giữ lõi streaming nhẹ và dễ triển khai.
git clone --recursive https://github.com/AQ-VISION/html5stream.git
cd html5stream
cmake -S . -B build \
-DCMAKE_BUILD_TYPE=Release \
-DENABLE_WEBRTC=ON \
-DENABLE_API=ON \
-DENABLE_AI=OFF \
-DENABLE_TESTS=OFF
cmake --build build -j"$(nproc)"Script build YOLO yêu cầu FFmpeg development libraries, CUDA, TensorRT và quyền truy cập CoreAI. Chỉ bật trên node đã chuẩn bị đúng GPU stack.
./scripts/build_yolov12.shSau khi cài đặt, quy trình vận hành cơ bản gồm bốn bước. Chuẩn hóa URL và thông tin xác thực camera trước khi đưa vào môi trường thật.
Thêm URL RTSP hoặc thiết bị ONVIF qua REST API / giao diện quản trị.
Xác nhận codec, trạng thái kết nối và log media server trước khi bật recording.
Ưu tiên WebRTC cho độ trễ thấp; dùng HLS hoặc fMP4 khi cần khả năng tương thích và cache.
Dùng URL phát và API của HTML5STREAM trong VMS, dashboard, GIS/eMap hoặc web app riêng.
Khai báo đúng public IP và TURN khi client không cùng mạng; kiểm tra cả UDP lẫn TCP fallback.
H.264 có độ tương thích rộng hơn. Khả năng phát H.265 phụ thuộc trình duyệt, hệ điều hành và phần cứng giải mã.
Discovery multicast có thể không đi qua VLAN; khi đó hãy thêm thiết bị bằng IP tĩnh và mở đúng policy liên mạng.
Theo dõi systemd journal, dung lượng recording, số kết nối và băng thông trước khi tăng mật độ camera.
Thông tin tổng hợp dành cho đội kỹ thuật, đơn vị tích hợp và doanh nghiệp đang đánh giá HTML5STREAM như một Video Media Server hoặc Video Data Plane.
HTML5STREAM là nền tảng Media Server giúp kết nối, chuẩn hóa và phân phối video từ camera IP, NVR, thiết bị ghi hình và VMS đến Web, Mobile hoặc phần mềm bên thứ ba qua RTSP, ONVIF, WebRTC, HLS, WebSocket và HTTP API.
Nền tảng làm lớp trung gian Camera/NVR → HTML5STREAM → Web, Mobile, AI, IoT hoặc SCADA, giúp đội phát triển không phải tự xây media server, WebRTC gateway, recording và playback từ đầu.
HTML5STREAM có live view, recording, playback, snapshot, PTZ, quản lý stream và API. Tuy nhiên, sản phẩm phù hợp nhất khi làm Video Media Server hoặc Video Data Plane cho VMS, AI Platform hay phần mềm nghiệp vụ lớn hơn.
Có. WebRTC phù hợp cho độ trễ thấp; HLS phù hợp khi ưu tiên phân phối ổn định hoặc nhiều người xem. Trình duyệt hiện đại không cần cài plugin.
Camera IP, NVR/DVR, bodycam, DriveCam/MDVR, video encoder, RTSP, RTMP, video file, ONVIF camera và một số VMS bên thứ ba. Tương thích thực tế phụ thuộc giao thức và codec của thiết bị.
Tùy phiên bản và cấu hình: RTSP, RTMP, ONVIF, WebRTC, HLS, HTTP/HTTPS, WebSocket, REST API và MQTT cho một số luồng sự kiện.
Các codec thường dùng gồm H.264, H.265/HEVC, AAC và G.711. Một số cấu hình có thể chuyển sang AV1 hoặc codec khác bằng phần cứng/phần mềm phù hợp.
Không. Có thể relay hoặc đóng gói lại nếu đầu cuối hỗ trợ codec nguồn. Transcoding cần khi H.265 không phát được, cần giảm bitrate/độ phân giải, tạo nhiều profile hoặc đồng nhất codec sang AV1/H.264.
Có. WebRTC phù hợp cho trung tâm điều hành, giao thông, bodycam, nhà máy, PTZ, theo dõi phương tiện và xác minh sự kiện AI. TURN có thể relay khi NAT/firewall chặn kết nối trực tiếp.
TURN chuyển tiếp media WebRTC khi hai đầu không thể kết nối trực tiếp. Vì toàn bộ video đi qua máy chủ, cần sizing theo bitrate, số camera và số người xem đồng thời.
Có thể ghi liên tục, theo lịch hoặc sự kiện; tìm kiếm theo thời gian, playback trên Web, xuất clip, lấy snapshot và liên kết video với sự kiện AI. Dung lượng phụ thuộc bitrate, số camera và thời gian lưu.
Có. HTML5STREAM đảm nhiệm video; AI Engine phân tích hình ảnh và trả về sự kiện như người/phương tiện, xâm nhập, khói lửa, PPE, đếm người, biển số, ùn tắc hoặc hành vi bất thường.
Có, nhưng không thay thế SCADA. PLC/cảm biến đưa dữ liệu vào SCADA, còn HTML5STREAM cung cấp video. Khi có cảnh báo, dashboard có thể tự mở camera, snapshot hoặc playback quanh thời điểm sự cố.
Có. Phù hợp với VMS, ERP, SCADA, BMS, kiểm soát ra vào, bãi xe, giao thông, logistics, quản lý đội xe, IoT và trung tâm điều hành.
API có thể thêm/xóa camera, điều khiển stream, lấy URL live, snapshot, PTZ, recording, tìm kiếm/playback, kiểm tra trạng thái server và tích hợp sự kiện. Phạm vi cụ thể phụ thuộc phiên bản và giấy phép.
Có. Có thể đặt tại nhà máy, văn phòng, data centre, trạm điện, tòa nhà, kho vận hoặc trung tâm điều hành và giữ toàn bộ dữ liệu video trong hạ tầng khách hàng.
Có. Mô hình thường gồm camera chi nhánh → HTML5STREAM Media Node → Cloud Control Platform → Web/Mobile. Cần đánh giá upload tại hiện trường và chi phí egress cloud.
Có thể đặt Media Node tại mỗi site hoặc gom về trung tâm. Media Node phân tán phù hợp khi có nhiều camera, WAN hạn chế, cần lưu tại chỗ hoặc phải tiếp tục hoạt động khi mất Internet.
Có nếu thiết bị cung cấp luồng hoặc API phù hợp. Có thể live view, recording sự kiện, liên kết GPS, hiển thị bản đồ, gửi video SOS, playback theo hành trình và trích xuất bằng chứng.
Có. HTML5STREAM chuẩn hóa nguồn Camera/NVR/VMS và cung cấp đầu ra thống nhất gồm WebRTC, HLS, RTSP, snapshot, playback và API.
Có, nhưng quy mô phụ thuộc CPU/GPU, NIC, băng thông, bitrate, độ phân giải, codec, transcoding, TURN và số stream. Cần load test trên cấu hình triển khai thực tế.
Không phải lúc nào cũng cần. GPU/card chuyên dụng hữu ích khi chuyển H.265 sang H.264/AV1, resize, tạo nhiều profile, xử lý nhiều camera hoặc chạy AI. Relay/remux thường nhẹ hơn.
Tùy mục tiêu. HTML5STREAM có recording, playback và stream management; NVR chuyên dụng vẫn phù hợp cho hệ thống độc lập, lưu cục bộ đơn giản và camera cùng hãng. HTML5STREAM mạnh hơn khi cần tích hợp phần mềm.
Đơn vị tích hợp, công ty VMS, nhà cung cấp AI Camera, IoT, SCADA/BMS, giao thông, logistics, quản lý đội xe, nhà máy và đội ngũ xây nền tảng video OEM.
Có thể xây Web/Mobile riêng trên media server phía sau và tùy chỉnh logo, màu, tên sản phẩm, dashboard, phân quyền, báo cáo, workflow cùng tích hợp AI/IoT.
Mô hình có thể phụ thuộc số camera, Media Node, phiên bản, recording, transcoding, OEM và quy mô. AQP sẽ tư vấn dựa trên số thiết bị, địa điểm và yêu cầu tích hợp.
Số lượng và model camera, codec, độ phân giải/bitrate, người xem đồng thời, thời gian lưu, yêu cầu Web/Mobile/API, on-premise hay cloud, transcoding và các tích hợp AI/SCADA/BMS.
Livestream thường phát một nội dung tới nhiều người. HTML5STREAM tập trung video giám sát: nhiều camera độc lập, độ trễ thấp, PTZ, recording, playback, snapshot, phân quyền, API, AI event và tích hợp NVR/VMS.
AQP Tech có thể hỗ trợ sizing, thiết kế luồng mạng, tích hợp VMS/NVR, WebRTC qua NAT và bổ sung Video AI theo use case.
Hãy chia sẻ nguồn dữ liệu, quy trình và mục tiêu cần ưu tiên. Đội ngũ AQP Tech sẽ cùng bạn xác định use case và kiến trúc AIIoT phù hợp.
Điền thông tin và chúng tôi sẽ phản hồi trong thời gian sớm nhất.