Android is an open platform.

It is a very popular platform to drive smart phones.

As this website is about file based audio, I will focus on the audio part.

USB audio

Android 4 introduced accessory mode.

USB DAC's expect a USB host hence USB audio didn't work.

Android 5 supports USB audio in host mode.

At that time only 16 bit was supported hence running a 24 bit DAC didn't work

Android 8 allowed me to send 24 bit / 96 kHz to my DAC.

It looks like Android 8 is UAC1 compatible.

More details can be found here.

Native sample rate

Most phones have a fixed native sample rate of 48 kHz.

This means all audio had to be resampled to this rate for local playback.

Note that this is a property of the phone, not a limitation inherent to Android.


Android has a native audio system called AudioFlinger.
It provides an API for playback/recording

Multiple values

Often in tags like Artist you have often more than one performer.
Once I asked the developer of UPnPlay why this was not supported in his app.
According to him the data mode of the Android Mediastore simply don’t support this.

  1. USB audio - Android Open Source Project
  2. PulseAudio vs. AudioFlinger - Arun Raghavan