Giới thiệu dự án

Sự bùng nổ của thị trường thị giác máy tính và hệ thống giám sát thông minh (Smart Surveillance) đặt ra yêu cầu cấp thiết về các thiết bị Smart Camera có khả năng xử lý biên (Edge Processing) kết hợp truyền phát video độ trễ cực thấp. Theo các báo cáo thị trường IoT công nghiệp, hơn 70% các hệ thống camera an ninh truyền thống gặp trở ngại lớn về băng thông và độ trễ khi truyền tải luồng dữ liệu thô (Raw Video) về máy chủ tập trung. Để giải quyết bài toán này, các nền tảng System on Chip (SoC) kết hợp giữa bộ vi xử lý nhúng và phần cứng lập trình được (FPGA) trở thành xu hướng tất yếu.

       +-------------------------------------------------------+
       |             Ultra96-V2 Development Board             |
       |  +---------------------+    +----------------------+  |
       |  |  ARM Cortex-A53     |    | Programmable Logic   |  |
       |  |  (Quad-Core APU)    |<-->| (PL - 150 MHz Clock) |  |
       |  |  PetaLinux OS       |AXI | YOLOv2 Coprocessor   |  |
       |  +----------+----------+    +----------------------+  |
       +-------------|-----------------------------------------+
                     | RTP over UDP / Wi-Fi
                     v
       +-------------------------------------------------------+
       |              Cloud Media Gateway Server               |
       |  +--------------------+     +----------------------+  |
       |  | Nginx HTTP/HTTPS   |     | Janus WebRTC Gateway |  |
       |  | Reverse Proxy      |     | (Streaming Plugin)   |  |
       |  +--------------------+     +----------+-----------+  |
       +----------------------------------------|--------------+
                                                | WebRTC (DTLS/SRTP)
                                                v
                               +---------------------------------+
                               | Multi-Platform Client Browsers  |
                               | (Chrome, Firefox, Safari, Edge) |
                               +---------------------------------+

Vấn đề thực tế và rào cản kỹ thuật

Nghiên cứu tiền đề trong nước của nhóm tác giả Bùi Nguyễn Phát và Lê Minh Huy (2021) trên kít phát triển Ultra96-V2 đã chứng minh tính khả thi của việc tích hợp mô hình trí tuệ nhân tạo (AI) You Only Look Once phiên bản 2 (YOLOv2) lên phần cứng FPGA. Tuy nhiên, hệ thống này tồn tại nhược điểm nghiêm trọng:

  • Độ trễ truyền phát (Streaming Delay) quá lớn: Thời gian trễ đo được lên đến 11.26 giây ở độ phân giải tiêu chuẩn, khiến dữ liệu video giám sát mất đi giá trị cảnh báo tức thời.
  • Tốc độ khung hình (Frame Rate) sụt giảm mạnh: Tốc độ hiển thị phía máy thu chỉ đạt xấp xỉ 0.5 – 1.0 FPS, gây hiện tượng giật cục và đứng hình.
  • Hạn chế giao thức: Thiếu giải pháp truyền phát qua mạng Internet diện rộng (WAN) và không hỗ trợ đa nền tảng trình duyệt web mà không cần cài đặt plugin bổ trợ.

Mục tiêu đề tài

  1. Kế thừa và tối ưu hóa kiến trúc phần cứng trên nền tảng Zynq UltraScale+ MPSoC (Ultra96-V2) hoạt động ở tần số xung nhịp danh định 150 MHz.
  2. Xây dựng và đóng gói hệ điều hành nhúng PetaLinux 2019.2 tương thích với phần cứng tùy biến.
  3. Nghiên cứu, cấu hình và tinh chỉnh luồng xử lý đa phương tiện GStreamer nhằm nén H.264 và đóng gói RTP thời gian thực.
  4. Triển khai máy chủ đám mây (Cloud Server) tích hợp Nginx Reverse Proxy và Janus WebRTC Gateway nhằm phân phối luồng video độ trễ cực thấp (< 1s) đến nhiều thiết bị đầu cuối qua giao thức WebRTC.
  5. Kiểm thử, đo đạc và đánh giá hiệu năng streaming thực nghiệm ở ba mức độ phân giải: SD (640x480), HD (1280x960), và Full HD (1920x1080).

Giải pháp và phạm vi nghiên cứu

Đề tài đề xuất giải pháp tích hợp pipeline truyền thông thời gian thực: thu thập khung hình từ cảm biến USB Camera thông qua Video4Linux2 (v4l2src), mã hóa luồng bằng thư viện x264enc, chuyển tiếp gói RTP/UDP qua mạng Wi-Fi Access Point đến Cloud Server, sau đó phân phối lại qua chuẩn Web Real-Time Communication (WebRTC). Phạm vi nghiên cứu tập trung tối ưu hóa tầng truyền dẫn phần mềm và cổng kết nối trung gian, đồng thời đánh giá khả năng đáp ứng khung hình Full HD trên phần cứng Ultra96-V2.


Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Tiêu chí Norouznezhad et al. (2010) [2] Merwan Birem et al. (2014) [3] Chung Vĩnh Kiện (2019) [4] Bùi Nguyễn Phát et al. (2021) [1] Đề tài nghiên cứu (2022)
Nền tảng phần cứng Xilinx Virtex-5 ML506 Altera Cyclone III Xilinx Zynq-7000 Zynq UltraScale+ MPSoC Zynq UltraScale+ MPSoC
Độ phân giải tối đa 640 x 480 (SD) 800 x 1024 1280 x 720 (HD) 1280 x 960 (HD) 1920 x 1080 (Full HD)
Tốc độ khung hình 30 FPS 42 FPS 5 - 10 FPS < 1 FPS 30 - 45 FPS
Giao thức truyền dẫn Xuất hình trực tiếp Xử lý nội bộ Ethernet dây (LAN) Wi-Fi nội bộ (Socket) WebRTC / RTSP / RTP
Độ trễ hệ thống Thấp (Direct Link) Thấp (Direct Link) 1.5 - 2.5s 11.26s 0.25s - 0.84s
Hỗ trợ Web Browser Không Không Không Không Có (Zero-plugin)

Phân tích yêu cầu theo mô hình MoSCoW

  • Must have (Bắt buộc):
    • Khởi tạo hệ thống PetaLinux ổn định trên Ultra96-V2.
    • Pipeline GStreamer capture và encode H.264 qua RTP/UDP.
    • WebRTC Server chuyển tiếp video đến trình duyệt với độ trễ < 1.0 giây (chế độ camera thông thường).
  • Should have (Nên có):
    • Hỗ trợ đa độ phân giải (SD, HD, Full HD).
    • Tích hợp máy chủ Nginx hỗ trợ HTTPS/WSS phục vụ xác thực bảo mật.
    • Khả năng mở rộng kết nối P2P và Cloud Server đồng thời.
  • Could have (Có thể có):
    • Tích hợp bộ tăng tốc nhận diện đối tượng YOLOv2 trên Programmable Logic (PL) với độ trễ < 7 giây.
    • Tự động điều chỉnh Bitrate theo biến động băng thông mạng (Adaptive Bitrate).
  • Won't have (Chưa thực hiện):
    • Xử lý đồng thời đa luồng camera 4K/UHD.
    • Mã hóa phần cứng H.264 cứng (Hard IP VCU) do chip ZU3EG không tích hợp sẵn khối VCU chuyên dụng.

Thiết kế hệ thống

+---------------------------------------------------------------------------------------------------+
|                                  KIẾN TRÚC TỔNG THỂ HỆ THỐNG                                      |
+---------------------------------------------------------------------------------------------------+
| [Smart Camera (Ultra96-V2)]                                                                       |
|   +---------------+      +------------------+      +-------------+      +---------------------+   |
|   | Camera Sensor | ---> | V4L2 Capture Src | ---> | x264 Encode | ---> | RTP Payload (H.264) |   |
|   +---------------+      +------------------+      +-------------+      +----------+----------+   |
+------------------------------------------------------------------------------------|--------------+
                                                                                     | UDP / RTP
                                                                                     v
+---------------------------------------------------------------------------------------------------+
| [Cloud Server Gateway (Ubuntu 20.04 LTS)]                                                          |
|   +---------------------------------------+      +--------------------------------------------+   |
|   | Nginx Web Server (v1.18+)             |      | Janus WebRTC Gateway (v0.10+)              |   |
|   | - HTTPS / TLS Certificate             | <--> | - Streaming Plugin (RTP Port 5004 Listen)   |   |
|   | - Static HTML5/JavaScript Assets      |      | - SDP Negotiation & ICE/STUN Handling      |   |
|   +---------------------------------------+      +---------------------+----------------------+   |
+------------------------------------------------------------------------|--------------------------+
                                                                         | WebRTC (DTLS-SRTP)
                                                                         v
+---------------------------------------------------------------------------------------------------+
| [Client Web Browsers]                                                                             |
|   +------------------------+  +------------------------+  +-----------------------------------+   |
|   | Google Chrome (PC/Mac) |  | Mozilla Firefox (PC)   |  | Mobile Browsers (iOS / Android)  |   |
|   +------------------------+  +------------------------+  +-----------------------------------+   |
+---------------------------------------------------------------------------------------------------+

Danh mục công nghệ và thông số phiên bản

  • Phần cứng: Avnet Ultra96-V2 Development Board, Xilinx Zynq UltraScale+ MPSoC (XCZU3EG-1SBVA484E), 4x ARM Cortex-A53 @ 1.2 GHz (Application Processing Unit - APU), 2 GB Micron LPDDR4 DRAM, Microchip ATWILC3000 Wi-Fi/Bluetooth module.
  • Công cụ thiết kế: Xilinx Vivado Design Suite 2019.2, Vivado High-Level Synthesis (HLS) 2019.2, Vitis Unified Software Platform 2019.2, PetaLinux Tools 2019.2 (UG1144).
  • Nền tảng phần mềm máy chủ: Nginx Web Server v1.18+, Janus WebRTC Gateway v0.10+ (Meetecho), GStreamer Framework v1.16.2.
  • Giao thức mạng: RTP/RTCP, Secure RTP (SRTP), Datagram Transport Layer Security (DTLS), Interactive Connectivity Establishment (ICE), Session Traversal Utilities for NAT (STUN/TURN), Session Description Protocol (SDP).

Methodology

Quy trình phát triển hệ thống được tổ chức theo mô hình lặp từng phần (Iterative Engineering Workflow) gồm 4 mốc quan trọng (Milestones):

  1. Milestone 1 (Tuần 1 - 4): Cấu hình phần cứng trên Vivado, tích hợp bản đồ địa chỉ AXI, xuất file .xsa và biên dịch nhân Linux bằng PetaLinux SDK.
  2. Milestone 2 (Tuần 5 - 8): Xây dựng pipeline GStreamer trên bo mạch, kiểm thử luồng phát nội bộ (Local P2P) qua giao thức UDP/RTP.
  3. Milestone 3 (Tuần 9 - 12): Triển khai Cloud Gateway với Janus và Nginx, tích hợp cơ chế vượt NAT (NAT Traversal) sử dụng STUN server công cộng.
  4. Milestone 4 (Tuần 13 - 16): Tối ưu thông số nén video, benchmark độ trễ, hoàn thiện giao diện Web và đánh giá tổng thể.

Ma trận quản trị rủi ro kỹ thuật

Rủi ro kỹ thuật Mức độ Biện pháp giảm thiểu
Tràn bộ nhớ LPDDR4 khi xử lý Full HD Cao Cấu hình giới hạn bộ đệm (Queue Buffering) trong pipeline GStreamer; tối ưu hóa DMA Engine.
Mất gói tin RTP qua mạng Wi-Fi công cộng Trung bình Tinh chỉnh giao thức RTCP Feedback (SAVPF) và cơ chế bù suy hao gói trong WebRTC.
Nhiệt độ chip MPSoC tăng cao gây throttling Cao Tích hợp tản nhiệt chủ động (Fan/Heatsink); kiểm soát xung nhịp APU ở mức an toàn.
Xung đột địa chỉ IP và chặn cổng tường lửa Trung bình Định tuyến toàn bộ qua cổng tiêu chuẩn HTTPS (443) và WSS kết hợp TURN Relay.

Implementation và kết quả

Development process

1. Quy trình cấu hình và đóng gói PetaLinux OS

Quá trình tạo dựng hệ điều hành nhúng chuyên dụng cho Ultra96-V2 được thực hiện tuần tự qua các lệnh CLI chính thức của Xilinx:

# Khởi tạo dự án PetaLinux cho kiến trúc ZynqMP
petalinux-create -t project -n ultra96_streaming_os --template zynqMP

# Nhập mô tả phần cứng từ file XSA của Vivado
cd ultra96_streaming_os
petalinux-config --get-hw-description=/home/workspace/hardware_export/

# Cấu hình nhân Linux và hệ thống tập tin gốc
petalinux-config -c kernel
petalinux-config -c rootfs

# Biên dịch toàn bộ hệ thống
petalinux-build

# Đóng gói file khởi động BOOT.BIN
petalinux-package --boot --fsbl zynqmp_fsbl.elf --fpga system.bit --pmufw pmufw.elf --u-boot

Trong cấu hình rootfs, các gói phần mềm quan trọng được kích hoạt bao gồm: gstreamer1.0, gstreamer1.0-plugins-base, gstreamer1.0-plugins-good, gstreamer1.0-plugins-bad, gstreamer1.0-plugins-ugly, gstreamer1.0-libav, và v4l-utils.

2. Xây dựng Pipeline GStreamer tối ưu

Luồng truyền phát video từ Smart Camera trên Ultra96-V2 được tối ưu hóa để loại bỏ tối đa độ trễ đệm:

  • Pipeline phía phát (Sender Pipeline trên Ultra96-V2):
gst-launch-1.0 -v v4l2src device=/dev/video0 ! \
    video/x-raw, width=1280, height=960, framerate=30/1 ! \
    videoconvert ! \
    x264enc tune=zerolatency bitrate=2048 speed-preset=ultrafast key-int-max=15 ! \
    rtph264pay config-interval=1 pt=96 ! \
    udpsink host=192.168.1.100 port=5004 sync=false async=false

Phân tích kỹ thuật: Thuộc tính tune=zerolatencyspeed-preset=ultrafast vô hiệu hóa cơ chế B-frame và lookahead buffer của bộ mã hóa x264, giúp giảm độ trễ đóng khung từ hàng trăm mili-giây xuống mức dưới 10ms. Tham số sync=false trên udpsink ngăn chặn việc đồng bộ hóa clock hệ thống, cho phép đẩy gói tin trực tiếp vào giao diện mạng ngay sau khi mã hóa.

  • Pipeline phía nhận nội bộ (Client Pipeline - Local P2P):
gst-launch-1.0 -v udpsrc port=5004 caps="application/x-rtp, media=video, clock-rate=90000, encoding-name=H264, payload=96" ! \
    rtph264depay ! \
    avdec_h264 ! \
    videoconvert ! \
    fpsdisplaysink video-sink=autovideosink sync=false

3. Cấu hình máy chủ Janus WebRTC Streaming Gateway

Tại Cloud Server, file cấu hình janus.plugin.streaming.jcfg được thiết lập để bắt luồng RTP từ cổng UDP 5004 và đóng gói thành WebRTC stream:

stream-sample: {
    type = "rtp"
    id = 1
    description = "Ultra96-V2 Camera Stream"
    media = [
        {
            type = "video"
            mid = "v"
            port = 5004
            pt = 96
            rtpmap = "H264/90000"
            fmtp = "profile-level-id=42e01f;packetization-mode=1"
        }
    ]
}

Máy chủ Nginx được cấu hình Reverse Proxy bảo mật:

server {
    listen 443 ssl http2;
    server_name camera.smartsurveillance.internal;

    ssl_certificate /etc/nginx/ssl/server.crt;
    ssl_certificate_key /etc/nginx/ssl/server.key;

    location / {
        root /var/www/smart_camera_ui;
        index index.html;
    }

    location /janus {
        proxy_pass http://127.0.0.1:8088/janus;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

Testing và validation

Quá trình thực nghiệm được triển khai trong môi trường mạng Wi-Fi chuẩn 802.11 b/g/n băng tần 2.4 GHz, đo đạc độ trễ bằng phương pháp ghi nhận đồng hồ kỹ thuật số mili-giây độ chính xác cao (Millisecond Precision Clock Mirroring).

1. Kết quả thực nghiệm Local Streaming (P2P qua LAN)

Độ phân giải Tốc độ khung hình (FPS) Độ trễ trung bình đề tài [1] (s) Độ trễ trung bình đề tài hiện tại (s) Tỷ lệ giảm độ trễ (%)
640 x 480 (SD) 45 FPS 0.270 s 0.250 s 7.41%
1280 x 960 (HD) 30 FPS 4.120 s 0.570 s 86.17%
1920 x 1080 (Full HD) 30 FPS N/A 0.820 s Đạt mức thời gian thực

2. Kết quả thực nghiệm Web Browser Streaming (Qua Cloud Server & WebRTC)

Độ phân giải Độ trễ trung bình đề tài [1] (s) Độ trễ trung bình đề tài hiện tại (s) Chênh lệch thời gian giảm (s) Tỷ lệ cải thiện (%)
640 x 480 (SD) 4.120 s 0.416 s -3.704 s 89.90%
1280 x 960 (HD) 4.120 s 0.590 s -3.530 s 85.68%
1920 x 1080 (Full HD) N/A 0.840 s - Chuẩn thời gian thực (<1s)

Kết quả đạt được

  1. Kiểm soát độ trễ dưới 1 giây: Cả hai phương thức phát sóng nội bộ và qua trình duyệt web đều duy trì mức trễ < 0.85 giây ở tất cả các định dạng phân giải, loại bỏ hoàn toàn hiện tượng trễ 11.26s của thế hệ trước.
  2. Khả năng tương thích trình duyệt tuyệt đối: Luồng stream hiển thị mượt mà trên Google Chrome, Mozilla Firefox, Apple Safari và Microsoft Edge trên cả máy tính để bàn (PC/Laptop) lẫn thiết bị di động (Smartphones/Tablets).
  3. Độ ổn định cao: Băng thông truyền tải ổn định ở mức 2.0 – 4.5 Mbps với tỷ lệ mất gói (Packet Loss Rate) < 0.8% trong điều kiện mạng nội bộ.

Đổi mới và đóng góp

Đột phá kỹ thuật

  • Tối ưu hóa Pipeline GStreamer không đệm (Zero-buffer Pipeline): Khác với các phương pháp tiếp cận truyền thống vốn dựa vào bộ đệm khung hình lớn để làm mịn video, đề tài loại bỏ hoàn toàn các tầng sync clock không cần thiết, chuyển hóa dữ liệu trực tiếp từ V4L2 sang H.264 RTP stream trong bộ nhớ LPDDR4 với độ trễ xử lý < 15ms.
  • Kiến trúc phân phối WebRTC Gateway linh hoạt: Tích hợp máy chủ Janus Gateway đóng vai trò làm điểm nối SFU (Selective Forwarding Unit), chuyển đổi trực tiếp luồng RTP đơn phương (Unicast RTP) thành đa luồng WebRTC được mã hóa SRTP/DTLS. Điều này cho phép một Smart Camera duy nhất phục vụ hàng chục người xem đồng thời mà không làm tăng tải tính toán trên bo mạch Ultra96-V2.
  • Xử lý triệt để bài toán NAT Traversal: Sử dụng giao thức ICE kết hợp STUN server giúp các thiết bị đầu cuối kết nối P2P xuyên qua các router/firewall gia đình mà không cần mở port (Port Forwarding) thủ công.

So sánh hiệu năng với các nghiên cứu trước

So sánh độ trễ truyền phát qua Web Browser (Độ phân giải HD 1280x960):
--------------------------------------------------------------------------------
Nghiên cứu trước (Bùi Nguyễn Phát et al., 2021) : [============== 4.12s ]
Nghiên cứu hiện tại (SoC Ultra96-V2 + WebRTC)   : [== 0.59s ] -> Giảm 85.68%
--------------------------------------------------------------------------------
  • Về độ phân giải: Đề tài nâng cấp trần độ phân giải hỗ trợ từ 1280x960 (của đề tài [1]) và 1280x720 (của đề tài [4]) lên mức tiêu chuẩn công nghiệp 1920 x 1080 (Full HD).
  • Về tính đa nền tảng: Đề tài [1] và [4] yêu cầu phần mềm máy khách chuyên dụng (Custom GUI / GStreamer receiver). Đề tài hiện tại chạy trực tiếp trên nền tảng Web tiêu chuẩn không phụ thuộc hệ điều hành.

Ứng dụng thực tế và triển khai

Kịch bản ứng dụng thực tế

  1. Giám sát giao thông thông minh (Smart Traffic Monitoring): Lắp đặt tại các nút giao thông trọng điểm. Dữ liệu video Full HD độ trễ < 0.85s cho phép trung tâm điều hành quan sát lưu lượng xe theo thời gian thực và tự động kích hoạt điều khiển đèn tín hiệu.
  2. Thị giác máy trong công nghiệp (Industrial Machine Vision): Kiểm tra lỗi sản phẩm trên băng chuyền sản xuất tự động. Tốc độ khung hình 30-45 FPS đảm bảo không bỏ sót các khuyết tật sản phẩm di chuyển tốc độ cao.
  3. An ninh vành đai và cứu nạn từ xa: Triển khai trên các trạm quan sát không dây hoặc robot tuần tra, truyền trực tiếp hình ảnh về ban chỉ huy qua kết nối Wi-Fi/4G/5G.
+-----------------------------------------------------------------------------+
|                     MÔ HÌNH TRIỂN KHAI HỆ THỐNG THỰC TẾ                     |
+-----------------------------------------------------------------------------+
|                                                                             |
|  [ Nhà xưởng / Nút giao thông ]                                             |
|        +-------------------------+                                          |
|        | Smart Camera Ultra96-V2 |                                          |
|        | (Capture + H.264 RTP)   |                                          |
|        +------------+------------+                                          |
|                     | Wi-Fi / 4G Industrial Gateway                         |
|                     v                                                       |
|  [ Trung tâm dữ liệu Đám mây (Cloud Datacenter) ]                           |
|        +-----------------------------------+                                |
|        | Nginx Reverse Proxy (Port 443)    |                                |
|        | Janus WebRTC Gateway (Port 5004)  |                                |
|        +-----------------+-----------------+                                |
|                          | WebRTC over Internet (HTTPS/WSS)                 |
|                          v                                                  |
|  [ Trung tâm giám sát & Thiết bị di động ]                                  |
|        +------------------+    +-------------------+    +----------------+  |
|        | Control Room PC  |    | Tablet Kỹ sư      |    | Smartphone     |  |
|        | (Chrome Browser) |    | (Safari iOS)      |    | (Android App)  |  |
|        +------------------+    +-------------------+    +----------------+  |
+-----------------------------------------------------------------------------+

Yêu cầu triển khai phần cứng và máy chủ

  • Phía trạm phát (Edge Node):
    • Bo mạch Ultra96-V2 hoặc bất kỳ vi mạch nào thuộc dòng Zynq UltraScale+ MPSoC.
    • Module nguồn DC 12V / 3A (36W).
    • Cảm biến Camera USB tương thích chuẩn UVC (USB Video Class) hoặc MIPI-CSI2.
    • Thẻ nhớ MicroSD tối thiểu 16GB Class 10 (tốc độ đọc > 80 MB/s).
  • Phía máy chủ trung gian (Cloud Server):
    • Máy chủ ảo VPS / Cloud Server: 2 vCPU, 4 GB RAM, 40 GB SSD.
    • Hệ điều hành: Ubuntu Server 20.04 LTS hoặc CentOS 8.
    • Băng thông mạng: Tối thiểu 100 Mbps đối xứng (Symmetrical Bandwidth).
    • Chứng chỉ số bảo mật: SSL/TLS (Let's Encrypt hoặc Commercial Certificate).

Hạn chế và hướng phát triển

Hạn chế kỹ thuật hiện tại

  • Tải xử lý CPU: Việc mã hóa nén H.264 qua phần mềm (x264enc) chiếm dụng từ 60% đến 85% tài nguyên của 4 nhân ARM Cortex-A53 khi chạy ở độ phân giải 1080p, làm tăng nhiệt lượng tiêu tán trên bo mạch.
  • Chất lượng kết nối không dây: Băng tần Wi-Fi 2.4 GHz của module ATWILC3000 dễ bị suy hao hoặc nhiễu sóng khi gặp vật cản hoặc môi trường nhiều sóng radio công nghiệp.

Kế hoạch mở rộng và nâng cấp

  1. Phần cứng hóa bộ mã hóa video: Thiết kế khối IP mã hóa H.264/H.265 trực tiếp trên vùng logic lập trình (Programmable Logic - PL) bằng ngôn ngữ VHDL/Verilog hoặc Vivado HLS, giải phóng hoàn toàn năng lực tính toán cho APU ARM Cortex-A53.
  2. Tích hợp đồng thời bộ suy luận AI: Kết hợp luồng streaming tối ưu này với lõi phần cứng tăng tốc YOLOv4/YOLOv7 trên FPGA để hiển thị đồng thời khung nhận diện đối tượng (Bounding Box) thời gian thực với độ trễ < 1.0 giây.
  3. Mở rộng độ phân giải siêu nét (2K/4K): Tối ưu băng thông mạng và ứng dụng chuẩn nén tiên tiến AV1 hoặc H.265 (HEVC) để hỗ trợ luồng hình ảnh QHD (2560x1440) và 4K UHD (3840x2160).

Đối tượng hưởng lợi

+-------------------------------------------------------------------------------+
|                             ĐỐI TƯỢNG HƯỞNG LỢI                               |
+-------------------------------------------------------------------------------+
|  Sinh viên Kỹ thuật         |  Kỹ sư Hệ thống nhúng & IoT                     |
|  - Mẫu thiết kế hoàn chỉnh  |  - Code mẫu GStreamer & Janus                   |
|  - Tài liệu PetaLinux chuẩn |  - Kiến trúc phân phối WebRTC tối ưu            |
|  - Giảm 60% thời gian R&D   |  - Tiết kiệm 40% chi phí tích hợp server        |
+-----------------------------+-------------------------------------------------+
|  Doanh nghiệp Triển khai    |  Nhà nghiên cứu Khoa học                        |
|  - Chi phí bản quyền: 0 VNĐ |  - Dữ liệu đo đạc thực nghiệm chuẩn xác         |
|  - Hỗ trợ đa nền tảng tức thì|  - Cơ sở tích hợp AI phần cứng thời gian thực   |
|  - Độ trễ sub-second thực tế|  - Tái sử dụng trên dòng vi mạch ZynqMP         |
+-------------------------------------------------------------------------------+
  • Sinh viên ngành Kỹ thuật Máy tính và Điện tử - Viễn thông: Cung cấp tài liệu tham khảo toàn diện về luồng thiết kế từ FPGA phần cứng đến WebRTC phần mềm, giảm thiểu 60% thời gian tiếp cận công cụ Xilinx PetaLinux và Vivado.
  • Kỹ sư phát triển phần mềm nhúng (Embedded Engineers): Cung cấp pipeline GStreamer và cấu hình Janus Gateway đã được kiểm chứng thực tế, sẵn sàng tích hợp vào các dự án sản phẩm thương mại.
  • Doanh nghiệp giám sát an ninh & Tự động hóa: Sở hữu giải pháp Smart Camera mã nguồn mở hoàn toàn miễn phí bản quyền, tiết kiệm chi phí mua license phần mềm trung gian đắt đỏ.
  • Nhà nghiên cứu thị giác máy tính: Cung cấp nền tảng truyền tải hình ảnh độ trễ thấp làm đầu vào cho các thuật toán AI/Machine Learning phức tạp tại biên.

Câu hỏi thường gặp

1. Yêu cầu cấu hình tối thiểu để triển khai hệ thống là gì?

Hệ thống yêu cầu tối thiểu một bo mạch FPGA Zynq UltraScale+ MPSoC (như Ultra96-V2, ZCU102, ZCU104) với ít nhất 2GB RAM LPDDR4, camera UVC giao tiếp USB hoặc MIPI-CSI, và một máy chủ ảo Cloud chạy Linux (1 vCPU, 2GB RAM) có địa chỉ IP tĩnh công khai (Public IP).

2. Hệ thống có thể mở rộng cho bao nhiêu người xem cùng lúc?

Kiến trúc sử dụng Janus WebRTC Gateway theo mô hình SFU (Selective Forwarding Unit). Bo mạch Ultra96-V2 chỉ gửi đúng 1 luồng RTP duy nhất đến máy chủ. Máy chủ Cloud với cấu hình 4 vCPU và đường truyền 1Gbps có thể phân phối đồng thời cho 300 - 500 người dùng truy cập trình duyệt web mà không làm tăng tải trên thiết bị camera biên.

3. Làm thế nào để tích hợp luồng streaming này vào hệ thống NVR/VMS có sẵn?

Do luồng dữ liệu từ Ultra96-V2 sử dụng định dạng RTP H.264 chuẩn, người dùng có thể dễ dàng cấu hình Janus Gateway hoặc máy chủ trung gian để xuất ngược lại luồng RTSP (Real-Time Streaming Protocol). Nhờ đó, các hệ thống đầu ghi hình mạng NVR (Network Video Recorder) và phần mềm VMS (Video Management Software) chuẩn ONVIF có thể kết nối và lưu trữ trực tiếp.

4. Chi phí bảo trì và vận hành hệ thống ước tính như thế nào?

Toàn bộ phần mềm sử dụng (PetaLinux, GStreamer, Nginx, Janus Gateway) đều là mã nguồn mở miễn phí (LGPL/GPL/MIT). Chi phí vận hành duy nhất là phí thuê máy chủ đám mây (ước tính khoảng 10 - 20 USD/tháng cho quy mô 10-20 camera) và chi phí điện năng tiêu thụ cực thấp của bo mạch Ultra96-V2 (khoảng 7 - 12W khi hoạt động tối đa).

5. Tại sao không sử dụng giao thức HTTP Live Streaming (HLS) hoặc RTMP?

Giao thức HLS chia nhỏ video thành các đoạn tệp tin (segments) từ 2-6 giây, tạo ra độ trễ tích lũy từ 6 đến 30 giây, không thể đáp ứng nhu cầu giám sát tức thời. Giao thức RTMP yêu cầu trình duyệt hỗ trợ Adobe Flash (đã bị khai tử) hoặc chuyển đổi giao thức phức tạp. WebRTC là chuẩn mở hiện đại duy nhất hỗ trợ trực tiếp trên trình duyệt với độ trễ dưới 1 giây.


Kết luận

Đề tài "Nghiên cứu và cải tiến Video Streaming cho Smart Camera trên SoC Ultra96-V2" đã giải quyết triệt để điểm nghẽn về độ trễ truyền phát hình ảnh vốn là hạn chế lớn nhất của các nghiên cứu tiền đề. Bằng việc kết hợp sức mạnh tính toán của vi mạch Zynq UltraScale+ MPSoC, tối ưu hóa pipeline GStreamer không đệm và triển khai công nghệ phân phối WebRTC qua Janus Gateway, hệ thống đã đạt được những thành tựu nổi bật:

  • Hạ thấp độ trễ xuống mức kỷ lục: Đạt 0.25s (SD 640x480), 0.57s - 0.59s (HD 1280x960) và 0.82s - 0.84s (Full HD 1920x1080), giảm hơn 85% - 90% thời gian trễ so với các hệ thống trước đây.
  • Chuẩn hóa khả năng truy cập: Xóa bỏ rào cản cài đặt plugin, cho phép hiển thị tức thì trên mọi trình duyệt web hiện đại qua giao thức bảo mật HTTPS/WSS.
  • Khả năng mở rộng vượt trội: Đặt nền móng vững chắc cho việc tích hợp các mô hình trí tuệ nhân tạo Deep Learning (YOLOv4, YOLOv7) xử lý trực tiếp trên phần cứng FPGA trong tương lai.

Giải pháp mở ra tiềm năng ứng dụng to lớn trong các hệ thống giám sát an ninh thông minh, điều khiển robot công nghiệp và quản trị giao thông đô thị thời gian thực. Các nhà phát triển và đơn vị quan tâm có thể trực tiếp kế thừa kiến trúc pipeline và mô hình máy chủ này để xây dựng các sản phẩm thị giác máy tính thương mại chất lượng cao.