Technology is our heartbeat

Case Study: Audible

  • In 2006 Futurice worked with Audible to develop a Java version of their audiobook player.

    Audible, Inc. is the leading provider of spoken entertainment and information on the internet. Audible specialises in the spoken experience, providing digital audio editions of books, newspapers and magazines, original programming and TV & radio subscriptions. Consumers can search for, purchase and download audio content from www.audible.com (United States), www.audible.co.uk (United Kingdom), www.audible.de (Germany), or www.audible.fr (France) directly onto their personal computers for their listening experience in a variety of ways. Most of Audible's customers download audio files to their computers and then transfer the audio to MP3 players, personal digital assistants (PDAs), or to smart mobile devices (SMDs) for listening on-the-go.

    The Audible audiobook player application features certain key functionality that requires device resources and processing power from the phone for a number of reasons. Firstly the duration of one book is typically several hours and thus requires continuous playback for the whole duration. Secondly, all content is DRM protected which requires processing intensive on-the-fly decrypting . Thirdly, a typical book requires tens of megabytes of storage capacity so that the user is able to download content over-the-air to their devices.

    Before its Java version, Audible had released Windows Mobile and Symbian versions of the application. Both the Windows Mobile and Symbian devices offered a much more powerful and flexible platform than mobile Java (JME) and therefore it was uncertain whether Audible's player could be ported in any way to the Java platform.

    As Java is significantly constrained in mobile devices, achieving the goal (of integrating the audiobook) required us to overcome several obstacles by inventing clever workarounds for various Java limitations. The main challenges resided in runtime memory limitations, API inconsistencies and limitations related to functionality, memory, storage and processing power.

    As the project contained several uncertainties, it was started, as we prefer in these kind of cases, with a limited proof-of-concept project during which time the main challenges were solved and it was clarified that such an application was feasible to develop . Only after this proof-of-concept phase did we proceed with the actual application development. Although the project was carried out on both sides of the Atlantic, the project was very much a seamless effort between Audible and Futurice. Now Audible can support Nokia, Motorola, and Sony-Ericsson devices as well as RIM Blackberry devices with the same core Java codebase.

    Visit the Audible website at www.audible.com.

  • Audible