
Flexible video streaming and recording platform: Architecture and features

Written by
FluendoAugust 20, 2025
The request
In the world of public safety and critical infrastructure, reliable, real-time video is non-negotiable. But what happens when standard solutions are too rigid? That was the challenge facing one of our clients, a leader in national security. They needed a video platform that was as adaptable and resilient as their mission. Our Consulting Services team delivered a flexible video streaming and recording platform as a proof of concept. The goal was to provide a GStreamer-based foundation from which the client could easily expand and adapt the solution to their needs.
The client is a company whose solutions enhance public safety and reinforce border security across multiple nations, including many NATO members. Their portfolio features numerous initiatives in border protection and safeguarding critical civil infrastructure, such as oil refineries, nuclear power stations, and gas extraction facilities.
Features
The platform was designed to deliver the following capabilities:
- JSON file configuration: All system parameters, including streaming sources, recording paths, and metadata options, are defined in a user-friendly JSON file. This allows users to easily adjust server settings, storage options, and metadata handling without modifying the codebase.
- Windows compatibility: The solution is fully compatible with Windows, ensuring broad accessibility and easy deployment.
- RTSP server example: Provides a reference implementation for streaming via RTSP.
- RTSP to WebRTC server: This service enables seamless conversion of RTSP streams to WebRTC, facilitating modern browser-based playback.
- WebRTC webSockets signalling server: This component is based on the GStreamerWebRTC signalling server and manages peer connections and signalling for WebRTC clients using WebSockets.
- WebRTC desktop client: A dedicated desktop application for consuming WebRTC streams.
- WebRTC web browser client: Enables direct playback of WebRTC streams in standard web browsers. The browser client is built on top of gstwebrtc-api.
Storage
- Automatic Stream Recording: Streams are recorded automatically based on user-defined configuration.
- Configurable Recording Path: Users can specify where recordings are stored via the JSON configuration.
Metadata
- Independent Buffers Metadata Storage: Metadata for each buffer is stored separately, allowing for granular analysis and retrieval.
- H264 SEI Unregistered User Data Injection: Custom metadata can be injected into H264 streams using SEI messages.
- Buffers Metadata Storage Example: Includes sample implementations for storing buffer metadata.
Post-Recording manipulation
- Frame Extractor: Extracts individual frames from recorded streams for analysis or export.
- Clip Generator: Allows users to generate video clips from recorded streams based on selected time ranges or events.
Project constraints
The platform was designed to be highly modular, making it straightforward to add new features with minimal impact on existing functionality. All components are easily configurable and maintainable, supporting rapid deployment and integration into the client’s workflows.
Development
Fluendo’s team adopted a modular architecture, with each feature implemented as an independent component. JSON configuration files ensure users can tailor the system to their specific requirements without modifying the core codebase.
The signalling server is containerized for easy deployment, while the streaming server is provided as a native application. The desktop and web clients provide a consistent user experience across platforms. Metadata handling and post-processing tools are built as plug-ins, allowing for future expansion.
Conclusion
Fluendo delivered a robust proof of concept for a configurable video streaming and recording platform, supporting advanced metadata handling and post-recording manipulation. The platform’s modular design and JSON-based configuration make it ideal for further development and customization, ensuring it can be easily extended to meet future requirements.
Interested in a tailored streaming solution for your organization? Contact us today and let’s build the future of video together!