Page 1 of 16

USB DAC support on USB OTG enabled devices

Posted: Wed Mar 14, 2012 3:58 pm
by mucci
Hi, I would like to thank you for your marvellous player which is really a pleasure to listen to! Sound quality is awesome!

While I think adding more EQ bands to the equalizer would be very nice I have another feature request which would be the biggest improvement in audio quality you can think of... :D

I own a Samsung Galaxy Note which has a quite mediocre built in DAC. I listen to my music using a FiiO E7 (headphone amp with analog line-in but also a decent USB DAC) and UE TF10 inears. Using the analog line-in the quality using your player is very good, but it could be even better by connecting it directly to the USB OTG adapter which is available for many Galaxy devices (S, S2, Note,...) and other android brands. As far as I know many USB devices like USB keyboards, USB sticks, external harddrives and USB mice are already officially supported, but unfortunately no DAC (although there is a standard for these kind of devices).

To keep it short: ;)
Would it be possible (since your software is anyway native code) to also add support for USB audio out so that USB DACs are supported?

THAT WOULD BE MARVELLOUS! I would even buy such a piece of software if it would only be available in a new "Premium" version...


Thanks for any indication!

Re: USB DAC support on USB OTG enabled devices?

Posted: Wed Mar 14, 2012 4:18 pm
by dmitrykos
Unfortunately USB DACs not supported by core of Android OS. There are questions/discussions happen in developer's world (http://music.columbia.edu/pipermail/and ... 00485.html) but the short answer is: Core of Android OS must be customized to support it. So, even though Neutron is native app this is not possible at the moment. I do not know why this support was cut off from Android OS but support for external DAC would be good ...

Re: USB DAC support on USB OTG enabled devices?

Posted: Wed Mar 14, 2012 4:27 pm
by mucci
WOW, that's what I call responsive! :)

It's a pity that USB DACs are not yet supported... Okay then, we have to be patient and wait what's going on at Google. Hope that those initiatives that request USB DAC support are successful!

Anyway, great work, all the best for your further development!

Re: USB DAC support on USB OTG enabled devices?

Posted: Wed Mar 14, 2012 4:34 pm
by dmitrykos
Thank you :) I am always looking/waiting for better audio output in Android OS and once anything good appears will support it with Neutron. In general Android OS is not using audio hardware in its full potential. There were quite a lot of criticism about how audio stack of Android OS is developed but since 2.1 up to 4.0.3 nothing really changed (if not became worse in case with 4.0) but let's hope...

Re: USB DAC support on USB OTG enabled devices?

Posted: Thu Mar 15, 2012 12:23 am
by Liveinthemoment
I have an Archos 80 G9 250GB running ICS and USB DACs do work on it because Archos have added it.

I am away for a few days but I will test with my USB DAC soon and report if it works as is - no sound doesn't work, sound it works.

I guess it will because Archos have made it skip the internal DAC and sound processing - just zeroes and ones coming out the USB no matter what you play and no matter the player.

Re: USB DAC support on USB OTG enabled devices?

Posted: Fri Mar 16, 2012 4:31 pm
by dmitrykos
> Archos 80 G9 250GB running ICS and USB DACs do work on it because Archos have added it

Looks nice :) At least some producers enable it already! Good to know that in such case no additional work is needed to route audio to external USB. By the way, could you please check value of Latency in Settings -> Audio Hardware for external USB if you have it. The value is in (). For basic Android hardware it is 92ms but interesting what is shown for external USB (probably the same).

Re: USB DAC support on USB OTG enabled devices?

Posted: Fri Mar 30, 2012 11:52 pm
by Liveinthemoment
Well I finally got the OTG cable to test this. The cable works flawlessly to connect the G9 to the network and my USB DAC (Firestone Fubar) does not require any power from the G9 but still it does not work.

My experience is the same as pretty much everyone elses on the XDA forum and Archosfans forum - it doesn't work.

Testing with Neutron as well as the default music player made no difference - it is a hardware/OS problem confirmed by many.

While I am not happy I thought it best to let others know.

Re: USB DAC support on USB OTG enabled devices?

Posted: Thu May 17, 2012 2:44 pm
by DanBa
Apparently, USB audio is functional with Archos G9's Android 4.0.4:
http://forum.archosfans.com/viewtopic.p ... 8&p=396644

"Interesting, USB audio on 4.0.5 completely broken for me with the FiiO E17. I downgraded to 4.0.4 and USB audio is working well, seems Archos broke this in the 4.0.5 update..."


For the time being, the standard USB devices for USB host-capable Android devices are only USB hubs, USB mass storage devices and USB class for human interface devices (for example, mice and keyboards).

We have to lobby for imposing USB DAC as a standard Android USB device, like a standard USB device for every Mac or PC (i.e. we don’t have to request each individual PC manufacturer to add the USB audio capability).

Google should include USB host (and USB audio) on every new Google "Nexus" device, which is supposed to be a reference Android device for others.

The Google issue "Enable USB audio", requesting Google to standardize USB audio on Android smartphones/tablets, is currently ranked 11 of 22,579.
http://code.google.com/p/android/issues ... ort=-stars

Vote: Click on the star (it appears after signing in)

Re: USB DAC support on USB OTG enabled devices?

Posted: Fri May 18, 2012 9:16 am
by dmitrykos
Hi DanBa! :)

Thank you for additional info on this question.

There are still improvements besides USB DAC which need to be implemented to have Android device competing with iOS/next-gen Blackberry on QNX:
- support for 24-bit audio samples (currently it is max 16 while most audio DACs support 24 bit)
- ability to set hardware sampling rate (Galaxy S/Tab Wolfson chips could provide 96 kHz for example)
- rework of Android audio stack to allow lower latency
- implement support for real-time threading (similar to what MMCSS is doing in Windows Vista+) for audio/media apps
- additional API which would provide direct access to audio hardware when app could set any audio format supported by it (like Exclusive Mode in Windows Vista+) and have short path between audio app and hardware that would save CPU/battery and provide better bandwidth for audio data

After completing these steps Android OS would become usable in conjunction with consumer electronics and would provide best possible audio quality which can be handled by audio hardware. In general, the problem of Android OS is that initially it was not designed with with one of the goals to be a multimedia head device, like iPod/iPad/iPhone are.

Best regards,
Dmitry.

Re: USB DAC support on USB OTG enabled devices?

Posted: Fri May 18, 2012 8:51 pm
by DanBa
Hi Dmitry!

Concerning iPod/iPhone/iPad, Apple has a vested interest; iDevice USB audio interface is proprietary. Apple iDevice compliant USB DAC is not compatible with PC and Apple Mac:

. A "proprietary" USB DAC, which is compliant with iPod/iPhone/iPad, has to include an Apple authentication coprocessor.
http://www.xmos.com/products/development-kits/ipod-dock

Image

. An iDevice compliant USB DAC acts as a USB host, and an iPod/iPhone/iPad acts as a USB device.

Image

A common USB DAC compatible with PC, Apple Mac and Android devices acts as a USB device, and a PC/Mac/Android acts as a USB host.
An iPad can connect to a common USB DAC via an Apple Camera Connection Kit which switches the iPad into USB host mode.

. iPod/iPhone proprietary USB audio is limited to 16/48.
"6moons reader Robert Gaboury thinks that "Apple failed to understand the appeal of the iPod as a high-resolution machine. This is surprising from the inventors of the genre — or second proponent if we include Sony as the true mother — but perhaps they just outgrew their own personality. Judging from the sheer number of HD portable media players offered at the Hong Kong electronics show (players with FLAC support and compatible with almost any other AV format you can think of), I think the iPod will open the door to a new generation of non-Apple portable devices just as the Sony Walkman paved the way for the original iPod."
http://www.6moons.com/audioreviews/aloaudio2/2.html


There is a very well-praised 24/192 portable media player, iBasso DX100, which is powered by Android.
http://www.head-fi.org/t/592076/ibasso- ... video-pg-1

Android smartphones are more likely the predominant computers in the near future; because Android is free and mostly open source, and smartphones are (subsidized) phones.

Android relies on Linux for core system services such as driver model. The Linux kernel acts as an abstraction layer between the hardware and the rest of the software stack.

Image

Advanced Linux Sound Architecture or ALSA is a Linux kernel component.
http://thewelltemperedcomputer.com/Linu ... ecture.htm

Image

Android includes the ALSA source code which can be compliant with USB audio class 2 devices, like standard USB DAC allowing for 24 bits / 192 kHz.
http://thewelltemperedcomputer.com/HW/USB_Audio.htm
https://bitbucket.org/paulobrien/androi ... usb/card.c
android_kernel_galaxynexus / sound / usb / card.c: "USB Audio Driver for ALSA"

Some developers/hackers have enabled USB audio on the Linux-powered Squeezebox Touch which is able to interwork with asynchronous USB Audio Class 2 (UAC 2) devices
http://www.digitalaudioreview.net.au/in ... ebox-touch

"UAC 2 support
Based on Mark's feedback [using an async ARCAM DAC] I've updated the Usb Audio Output applet to version 0.6. This should now support detection and selection of dacs wanting 32bit samples. This is working for Mark with kernel #4 to support uac 2 dacs."
http://forums.slimdevices.com/showthrea ... post696152


IMHO Google has very likely no idea about high dimensions music devices, but Android will very likely have a big market share in this area thanks to the compliancy with the open standards: standard USB audio, open source Linux kernel, free Android, standard DLNA, standard Wi-Fi Direct, standard Wi-Fi Display.