Overview¶
MediaX is a real-time video streaming library implementing industry-standard protocols for defence and industrial applications.
Architecture¶
Standards Compliance¶
MediaX implements the following standards:
| Standard | Description |
|---|---|
| RFC 4421 | RTP Payload Format for Uncompressed Video (RGB24, YUV422, Mono8/16) |
| RFC 3984 | RTP Payload Format for H.264 Video |
| RFC 7798 | RTP Payload Format for H.265/HEVC Video |
| RFC 2974 | Session Announcement Protocol (SAP) |
| RFC 4566 | Session Description Protocol (SDP) |
| AIA GigE Vision 2.x | Industrial camera discovery (GVCP) and streaming (GVSP) |
| EMVA GenICam 3.x | Camera XML device description (SFNC) |
| DEF STAN 00-082 | VIVOE — Video and Imagery over Ethernet for Defence (GVA/GSA) |
Key Components¶
RTP Payloader/Depayloader¶
Handles packetization and depacketization of video frames for network transmission.
- Supports multiple colorspaces (RGB24, YUV422, Mono8, Mono16)
- Hardware acceleration for H.264/H.265
- Configurable packet sizes and timing
SAP/SDP Announcer/Listener¶
Automatic stream discovery on the network.
- Periodic SAP announcements (1 second interval)
- SDP session descriptions with stream metadata
- Multicast group management
Video Renderer¶
Display video using various backends:
- SDL2 (recommended, cross-platform)
- GTK4 (Linux desktop)
- Frame buffer (headless systems)
Language Bindings¶
- C++17 - Native API
- Python - SWIG bindings for AI/ML integration
- Qt6 - GUI application development
Colourspace Conversion¶
Convert between pixel formats with CPU scalar, AVX2 SIMD (auto-detected), and CUDA GPU implementations:
- RGB24 ↔ YUV422, RGBA, BGRA, Mono8
- Bayer demosaic (RGGB / GRBG / GBRG / BGGR) → RGB24
- RGB24 → Bayer raw (CFA packing)
- Image scaling (bilinear)
Use Cases¶
- Defence vehicle video systems (GVA/VIVOE)
- Industrial machine vision with GigE Vision cameras
- Broadcast and surveillance
- AI/ML video processing pipelines
Support¶
- Website: https://astutesys.com/support
- Email: support@astutesys.com