In 2016, Instil was hired by Tyco to develop victor Go, a mobile companion application for its victor product line.

Challenge

victor is a market-leading suite of hardware and software products used to manage security infrastructure such as surveillance cameras and access-control devices. victor Go extends victor by providing a way to control and stream multiple CCTV camera feeds onto a mobile device.

The aim with victor Go was to provide similar functionality to an existing desktop-only web client. At a bare minimum, it had to support up to 9 concurrent high-definition CCTV camera streams, without any degradation in image quality and without killing the battery stone dead.

Porting victor to mobile was never going to be a lift and shift - existing RTP/RTSP streaming libraries were found to be highly inefficient on mobile devices, afffecting both the number of possible concurrent streams and the battery life. A radical new approach was required - one designed specifically for mobile.

Approach

victor Go was built around a new, bespoke library called Surge. Surge is a standalone C++ library that reliably and efficiently streams video content over RTP/RTSP. Its design borrows heavily from the world of high performance computing to reduce context switching and increase throughput.

The Android and iOS applications were built on top of Surge using Xamarin, a highly productive, cross-platform development framework that essentially compiles C# into native code.

Outcomes

  • Reduced the overall development effort (and cost) by reusing low-level protocol and application logic across Android and iOS.
  • Maximised video decoding efficiency by handing decoding over to the underlying hardware.
  • Simplified the code base by using one language for the app development (C#) and one language for handling the low-level streaming logic (C++).

Features

  • Stream recorded and live video with minimal lag time
  • View live events on-demand in multiple pane layouts or fixed views
  • Control PTZ cameras with intuitive actions standard to smart devices

Our Contributions

  • Product Roadmapping
  • Android and iOS Development
  • Research and Development of Surge
  • Quality Assurance

More about this client

Tyco is a global company that creates integrated systems for smart cities and communities. We continue to support their innovation ambitions.

Technologies Used

Android, iOS, Xamarin, C#, C/C++, RTSP/RTP, Calabash / Test Droid