Maritime Surveillance, Emissions Monitoring
Case Study: Web-based GIS and video streaming application.
About our client
A consortium of internationally active companies specialised in Remotely Piloted Aircraft System (RPAS) solutions and telecommunications which provides an RPAS service for maritime surveillance and ship emissions monitoring. The service can be used by maritime and law enforcement authorities for various needs due to its flexible architecture which uses mobile GCSs (Ground Control Stations) to enable the execution of missions either from shore or from a vessel.
The challenge
A European Union agency, which chose our client’s RPAS service, requested remote web-based access to all information from live and recorded missions. This included RPAS flight information, emission measurements, video streams and information about the target and surrounding vessels from radio-transmitted AIS (Automatic Identification System) messages. Additionally, for live missions, they put forward a set of strict requirements for video stream quality, metadata, and very low end-to-end latency to ensure the suitability of the service for their ad-hoc surveillance needs.
The Solution
The technical design of the solution proved rather demanding as it included various points of low-level integration with GCS infrastructure. The solution should:
- Collect raw telemetry data from the RPAS (sent over a UDP connection) using the MAVLink protocol.
- Compile messages from an AIS receiver (sent over a TCP connection) into human-readable information.
- Receive video from the EO/IR (electro-optical/infrared) camera and transcode it to a format suitable for stable, near-zero latency streaming over 4G network connections.
- Receive SOx, COx and NOx measurements from the emissions measuring device and enrich them with location-data from the RPAS.
Kryptium implemented a network resilient 3-layer solution consisting of:
- A local “receiver” application which was installed at GCSs to collect, compile and forward all data and video streams.
- A back-end platform which enables mission management, receives and records all data and video streams, and also transcodes video streams to a web-compatible format.
- A web-based front-end “mission player” which can either “stream” live missions or “play” previously recorded missions. The player uses a single-pane-of-glass approach that combines video, map and charts for a synchronised presentation of mission information on a single screen.
Technologies used
.NET Core, ASP.NET Core, SQLite, PostgreSQL, FFmpeg tools, Wowza video server, Vue.js, Leaflet, THEOplayer, MAVLink protocol, AIS protocol