<< PORTFOLIO

Zumba - ZIN™ Play

Zumba® Fitness is a global lifestyle brand that fuses fitness, entertainment and culture into an exhilarating dance-party workout. Coined “fitness-parties,” Zumba classes blend upbeat world rhythms with easy-to-follow choreography, which provide effective, total-body workouts. Founded in 2001, the company is now the largest branded fitness program in the world - reporting more than 14 million weekly class participants, in over 140,000 locations, across more than 150 countries.
PARTNERSHIP
3 years 2 months

Project Overview

Zumba is at the forefront of the fitness industry. To help their instructors with preparing classes, Zumba R&D team decided to create a mobile application that will help with music playlists creation, as music is the core of Zumba classes. The apps had to be easy to access and user-friendly so that every Zumba instructor can instantaneously understand how to get the most of the application for their group needs.

Challenges & Solutions

Create a music player with features like trimming, sound effects, crossfade, breaks, and tempo changes.
Initially, we thought about manipulating audio samples and removing some of them in order to trim or mix songs. But this turned out to be problematic because we would have to download each song separately in order to analyze them, so we decided to depend on song playback. This solved issues like battery draining and higher bandwidth usage. For crossfade, we use two players and synchronize them together based on the playback. For each sound effect, we use a separate player that starts playing based on main song playback. A similar approach was taken for other features like tempo change.
Ability to play music and video both on mobile and remote devices. Additionally, a user should be able to play music from all his favorite media sources.
We integrated multiple players within the app such as Chromecast, AppleMusic, and Airplay. It required us to create a robust abstraction over all those players to seamlessly switch between all media sources.
Users should have offline access to downloaded content, in order to save as much bandwidth as possible while playing media.
To make the app work offline we had to introduce both API responses and media data caching mechanisms.

Technologies

Kotlin
RxJava
Swift
Dagger
ExoPlayer
GoogleCast

Graphic Design

Let’s Work Together!

Make the first step for a great partnership!
Share your idea with us and check what we can do for you and your company.
AppUnite Sp. z o.o.
VAT ID: PL 7831689686
Droga Dębinska 3A/3
61-555 Poznań, Poland
+48 532 568 641
office@appunite.com
AppUnite © 2019