Drone Control App Development

Mbicycle delivered features for a drone control application to process, view and edit media content captured with drones.

Challenge

Parrot, a recognized French manufacturer of drones and other wireless products, hired Mbicycle’s team to improve their official mobile app, FreeFlight Pro.

The client contacted Mbicycle’s consultants looking for a qualified team to develop a specific software module for their proprietary drone management app, which would process video and audio content recorded by their branded drones.

We assembled a team for video drone streaming app development, whose main task was to provide a solution with a set of features for viewing and editing media content from Parrot drones, as well as to integrate this new functionality into the client’s current application and assure its stable performance both on smartphones and tablets.

Solution

We decided to present our software solution as a Gradle library, which would be further connected to the client’s primary FreeFlight Pro application. Parrot’s team approved our drone application development approach and provided us with the source code. In our turn, we were carrying out regular build tests to assure the stable performance of the assembled solution.

According to the client’s requirements, our mobile app development team delivered a software module enabling the processing of media content recorded by drones and equipped with the following features:

  • Accessing and viewing video files saved on users’ devices
  • Choosing from predefined sounds or loading custom ones from the device memory to overlay them on the footage
  • Editing captured videos
  • Making custom clips using a user-friendly mixing console with all the recorded tracks, and cutting video parts
  • Setting up styles and themes and adding animation effects to video clips
  • Opening the video processing module directly from the FreeFlight Pro app, made possible through the module’s full integration with the application
  • Saving users’ edited footage as mp4 files

Mbicycle’s developers chose Java as the main programming language along with native Android libraries and popular third-party tools and frameworks, such as Glide and ButterKnife.

Since Parrot drones were the client’s in-house invention, our colleagues from Parrot provided us with a unique library, MVDroneComposer, which was developed by the client’s department to allow processing video and audio asynchronously.

The main bottleneck for Mbicycle’s experts was the need to develop a specific UI and touch control for the in-app mixing console, as well as its further integration with the MVDroneComposer library. The project ran steadily only on Linux, so we decided to add a set of auxiliary scripts for its stable performance on every Android smartphone and tablet.

Process

The FreeFlight Pro project team included five specialists on Mbicycle’s side:

  • 2 Android developers
  • Project manager
  • Tech lead
  • QA engineer

We chose Scrum as the drone app development methodology, so the work was broken down into two-week sprints, with the code builds sent once a week for verification. The tech lead was directly involved during the entire development process and monitored task completion regularly.

Technologies & Tools

Programming language

Java

Third-party libraries & frameworks

Android Studio, Android SDK, Android Support Libraries, ButterKnife,
MVDroneComposer, Glide, Android WaveForm library

Results

We successfully completed this project in five months, providing the client with a powerful software solution integrated into their major mobile application, allowing its users to process, view and edit media content they captured with Parrot’s branded drones.

To assure the IoT app development services delivery with better quality, the client provided our team with one of their drones. We then arranged cooperative tests to check the functionality and performance of our software solution in the real-life environment, which it passed with remarkable results.