🚀 RUSEON Core v2.0.0 — The Next-Gen Era: Edge WebGPU AI, WebCodecs & Zero-Copy Engine
We are thrilled to announce the release of RUSEON Core v2.0.0 — our largest and most significant milestone to date. This landmark release introduces the brand-new Next-Gen V2 UI, browser-side edge AI inference powered by YOLOv11 and WebGPU, ultra-low-latency WebCodecs streaming, and core media engine optimizations delivering true Zero-Copy and Zero-Allocation performance.
🌟 Key Highlights & Major Features
🎨 1. Next-Gen V2 UI by Default
- Atmospheric Cyberpunk Aesthetic: Completely reimagined frontend featuring dark-cyber glassmorphism, ambient lighting, and high-contrast typography.
- Modernized Login & Brand Navigation: Seamless authentication workflow, authentic vector branding, and real-time engine telemetry badges.
- Full Multilingual Localization (i18n): Complete English (
EN) and Russian (RU) localization across all views, modals, settings, and timeline players with dynamic switching via a sleek glass segmented pill.
- Interactive Surveillance & Timeline: High-density surveillance grid, PTZ controls, clip export modal, and granular tag/folder management.
🧠 2. Client-Side Edge AI (Zero-Server-Cost WebGPU & WASM)
- Zero-Server-Cost AI Inference: Real-time object detection (persons, vehicles, security objects) executes directly in the client's browser via ONNX Runtime WebGPU/WASM, offloading 100% of video AI compute from the server CPU/GPU.
- YOLOv11-Medium Support: High-precision neural network model with tailored surveillance class filtering and confidence thresholding.
- Hardware Profiler & Adaptive Tiers: Intelligent client capability profiling with automatic model tier selection (Nano / Small / Medium) and dynamic FPS scaling.
- Singleflight CDN Download: Eliminated head-of-line blocking when multiple clients concurrently initialize and download neural network weights.
⚡ 3. WebCodecs Ultra-Low Latency Streaming
- Hardware-Accelerated Decoding: Full support for the WebCodecs API, streaming raw NALU H.264/H.265 video packets over WebSocket with sub-frame glass-to-glass latency (<50 ms).
- Per-Connection Memory Pooling: Dedicated WebSocket scratch buffers reused across frame iterations (0 memory allocations/sec during steady-state streaming).
🏎️ 4. Zero-Copy & Zero-Alloc Core Architecture (HLS Muxer)
- Atomic Reference Counting (ARC): Re-architected MPEG-TS segment delivery using atomic ref-counting, completely eliminating defensive 1 MB memory allocations (
0 B/op, 0 allocs/op).
- Zero-Alloc M3U8 Playlist Generator: Fast in-place byte buffer formatting reducing playlist generation time by 8.3x (from 795 ns down to 98 ns) and eliminating 15 heap allocations per request.
- 40.6% Memory Reduction Under Heavy Load: Heap allocation footprint dropped from 1,089 MB to 647 MB during 100-camera stress tests, with a 34% drop in segment delivery latency.
🛠️ 5. Full-Stack Load Testing Suite (cmd/loadtest)
- Comprehensive built-in stress testing tool exercising RTSP ingest, HLS fMP4 delivery, WebRTC WHEP, REST API, gRPC AI, and disk storage simultaneously.
📊 Performance Benchmarks (100 Cameras @ 30 FPS + 330 Concurrent Clients)
| Metric |
v1.4.0 (Before) |
v2.0.0 (After) |
Improvement |
| Heap Alloc (RAM Footprint) |
1089 MB |
647 MB |
🟢 -40.6% memory reduction |
| Heap In-Use |
1137 MB |
702 MB |
🟢 -435 MB saved |
| HLS Segment Latency (p50 / p95) |
34.3 ms / 77.1 ms |
25.0 ms / 51.0 ms |
⚡ ~30–34% faster delivery |
| WebRTC WHEP Handshake (p50) |
271.8 ms |
181.1 ms |
🚀 -33.4% faster connect |
| REST API Latency (p95) |
7.54 ms |
4.00 ms |
🚀 1.88x faster (-47%) |
| RingBuffer Write |
65.19 ns |
18.62 ns |
🏆 Zero-Alloc (0 B / 0 allocs) |
| AcquireSegment Throughput |
7,500 ops/s |
37,000,000 ops/s |
🏆 Zero-Copy (0 B / 0 allocs) |
| Errors & Frame Drops |
0 |
0 |
🎯 100% rock-solid stability |
📦 Getting Started & Upgrade Guide
Pull via Docker
docker pull ghcr.io/rusegal/ruseon-core:v2.0.0
docker run -d \
-p 8080:8080 \
-p 8554:8554 \
-p 8555:8555/udp \
--name ruseon-core \
ghcr.io/rusegal/ruseon-core:v2.0.0
Changelog
- 0ae7f7c Merge branch 'dev'
- 2e5632e Merge pull request #26 from RUSEGAL/dev
- 3df9e73 chore(deps): run go mod tidy to update gorilla/websocket to direct dependency
- 1547569 chore(i18n): set English (en) as default language and fallback
- 179e77c docs(bench): update load test benchmark results reflecting Zero-Copy/Zero-Alloc performance gains
- 0b5bbb1 feat(ai): add Hardware Profiler, adaptive model tier selection, and AI settings card
- eece358 feat(ai): enable default surveillance class filtering and set 65% threshold for YOLOv11-Medium
- cf8f0ca feat(ai): switch client-side browser AI detection to high-precision YOLOv11-Medium
- 1aee395 feat(i18n): connect multilingual translations to Next-Gen V2 UI components
- 397a41b feat(i18n): full multilingual localization for dashboard overview and all v2 modals
- 3f4173d feat(ui): redesign login page with Next-Gen dark-cyber glassmorphism and i18n support
- 1920252 feat(ui): relocate legacy UI switcher from top header to settings page bottom
- 7d02e7c feat(ui): set Next-Gen V2 UI as default design variant
- e9953f7 feat(ui,ai): introduce Next-Gen UI v2, WebCodecs streaming, and Browser-side WebGPU AI detection with ONNX Runtime
- cf46452 feat: add full-stack load testing suite, WebRTC engine pooling, and API response caching
- 89a8722 fix(hls): make watchdog dummy segment independent with clean buffer lifecycle
- 98fba31 fix(hls): strengthen watchdog buffer retention and unify acquire-release lifecycle
- 36d1911 fix(i18n): complete localization for all v2 views, modals, archive, timeline, and ai analytics
- 411b219 fix(lint): resolve errcheck, gosec G115, and revive unused-parameter in ws.go
- 9901650 fix(loadtest): use crypto/rand to eliminate gosec G404 warnings
- 7a28869 fix(models): add verified HuggingFace CDN sources for yolo11m and yolo11s
- a746d88 fix(web): resolve browser tab favicon serving and SVG viewport scaling
- 50d292f perf(backend): use singleflight for concurrent AI model downloads without head-of-line blocking
- 2d17c7e perf(hls, ws): implement zero-alloc playlist generator, zero-copy ARC segment serving, and WebSocket scratch buffer reuse
- 2d4816b style(ui): redesign LanguageSwitcher with next-gen dark-cyber segmented pill design
- 13671f9 style(ui): use authentic Logo component in sidebar and change label to NEXT-GEN