Android phones and USB DACs
Dec 27, 2016 at 12:18 AM Post #8,626 of 9,526
Can anyone compare the various Geek Out V2 versions in regards to how they work with Android (and SQ)? Is the V2 Infinity that much better? BTW, I drive all full size headphones and a lot of planars.

Also, has anyone used an LG Stylo 2 as a dac? I just got my gf a new phone, and she's giving me her old one as a music player (replaceable battery and microSD card compatability).

Thanks!


If you want there is a Geek Out V2+ Infinity in the FS section. Great price. Link: http://www.head-fi.org/t/825052/fs-geek-out-v2-infinity-portable-usb-dac-amplifier

What is great with this is that it has batteries. It will not drain your smartphone. Others prefer this than Chord Mojo.
 
Dec 29, 2016 at 4:02 PM Post #8,627 of 9,526
Not sure if anyone's posted this, but I've found a way to set the resampling rate.  By default, my Dragonfly was mixing everything up to 96khz but I found a way to set the final sampling rate to 44.1khz as recommended in the Dragonfly Black's manual.
You'll need root for this.  Standard "if you screw it up it's not my problem" disclaimer.
Find the file /system/etc/audio_policy.conf.  Back it up.  After you have a backup off your phone, edit the file.  It should be JSON.  Scroll down to find this section near the bottom:
 
audio_hw_modules {
  ...
  usb {
    outputs {
      ...
      usb_device {
        sampling_rates dynamic
        ...
      }
    }
  ...
  }
}
 
sampling_rates was set to "dynamic" for my HTC One M9, but it may be different for your phone.  This is likely why the phone sets the sampling rate to 96khz by default, it automatically detects that as the highest sampling rate.  Regardless, I overwrote this to 44100.  That section now looks like:
 
audio_hw_modules {
  ...
  usb {
    outputs {
      ...
      usb_device {
        sampling_rates 44100
        ...
      }
    }
  ...
  }
}
 
If you use multiple DACs over OTG, you can list multiple sampling rates separated by a '|'.  For example, you could set it to "sampling_rates 44100|88200" and it'll default to the highest rate the DAC supports.
Save the file and reboot.  The next time you start playing music (Spotify in my case), the audio will be output at 44.1khz as indicated by the green light on my DragonFly.
 
Personal sidenote: I have no idea if it's better to run it at 96khz or 44.1khz, but as most Spotify music is run at 44.1 I think it'd probably be best if the signal didn't have to be resampled.  Cheers!
 
Dec 29, 2016 at 8:41 PM Post #8,628 of 9,526
Not sure if anyone's posted this, but I've found a way to set the resampling rate.  By default, my Dragonfly was mixing everything up to 96khz but I found a way to set the final sampling rate to 44.1khz as recommended in the Dragonfly Black's manual.
You'll need root for this.  Standard "if you screw it up it's not my problem" disclaimer.
Find the file /system/etc/audio_policy.conf.  Back it up.  After you have a backup off your phone, edit the file.  It should be JSON.  Scroll down to find this section near the bottom:

audio_hw_modules {
  ...
  usb {
    outputs {
      ...
      usb_device {
        sampling_rates dynamic
        ...
      }
    }
  ...
  }
}

sampling_rates was set to "dynamic" for my HTC One M9, but it may be different for your phone.  This is likely why the phone sets the sampling rate to 96khz by default, it automatically detects that as the highest sampling rate.  Regardless, I overwrote this to 44100.  That section now looks like:

audio_hw_modules {
  ...
  usb {
    outputs {
      ...
      usb_device {
        sampling_rates 44100
        ...
      }
    }
  ...
  }
}

If you use multiple DACs over OTG, you can list multiple sampling rates separated by a '|'.  For example, you could set it to "sampling_rates 44100|88200" and it'll default to the highest rate the DAC supports.
Save the file and reboot.  The next time you start playing music (Spotify in my case), the audio will be output at 44.1khz as indicated by the green light on my DragonFly.

Personal sidenote: I have no idea if it's better to run it at 96khz or 44.1khz, but as most Spotify music is run at 44.1 I think it'd probably be best if the signal didn't have to be resampled.  Cheers!


Don't forget you have the Android media layer in between Spotify and the DAC, so anything coming out will be at 16/44.1

That being said I prefer the sound of over sampled vs bit perfect when it comes to 44.1. Either 88.2 or 176.4 work best for me. I get more of a sparkle due to over sampling. But I'm pretty sure that's due to player over sample and not DAC over sample.
 
Dec 29, 2016 at 11:58 PM Post #8,629 of 9,526
Don't forget you have the Android media layer in between Spotify and the DAC, so anything coming out will be at 16/44.1

That being said I prefer the sound of over sampled vs bit perfect when it comes to 44.1. Either 88.2 or 176.4 work best for me. I get more of a sparkle due to over sampling. But I'm pretty sure that's due to player over sample and not DAC over sample.

I thought that changing the audio_policy.conf actually changed the defaults in the Android Audioflinger to avoid the resampling. Also the 16/44 was the standard resample rate but I'm sure a lot of newer devices sample to a higher rate by default as they have internal DACs that are capable of more than 16/44. The S7 for example seems to upsample everything to 24/96 possibly even 24/192.
 
Whatever is happening it is still true that unless you use something like UAPP all of the audio will be going through the Android audio system rather than direct to the DAC in bit perfect format.
 
Dec 30, 2016 at 1:17 AM Post #8,630 of 9,526
I thought that changing the audio_policy.conf actually changed the defaults in the Android Audioflinger to avoid the resampling. Also the 16/44 was the standard resample rate but I'm sure a lot of newer devices sample to a higher rate by default as they have internal DACs that are capable of more than 16/44. The S7 for example seems to upsample everything to 24/96 possibly even 24/192.

Whatever is happening it is still true that unless you use something like UAPP all of the audio will be going through the Android audio system rather than direct to the DAC in bit perfect format.


Have you played audio through the Android Layer with hibymusic when your sampling rate was set to dynamic.
 
Jan 2, 2017 at 11:46 PM Post #8,631 of 9,526
Have you played audio through the Android Layer with hibymusic when your sampling rate was set to dynamic.


HibyMusic talks directly with the USB DAC when given permission to do so, in which case audio data does not go through the Android Layer at all on its way to the USB DAC. :p

In this case you control the output sample rate using Settings->Advanced->SRC, where Off attempts output via original sample rate while On outputs resampled to the rate selected in the list below.
 
HiBy Stay updated on HiBy at their facebook, website or email (icons below). Stay updated on HiBy at their sponsor profile on Head-Fi.
 
https://www.facebook.com/hibycom https://store.hiby.com/ service@hiby.com
Jan 2, 2017 at 11:51 PM Post #8,632 of 9,526
HibyMusic talks directly with the USB DAC when given permission to do so, in which case audio data does not go through the Android Layer at all on its way to the USB DAC. :p

In this case you control the output sample rate using Settings->Advanced->SRC, where Off attempts output via original sample rate while On outputs resampled to the rate selected in the list below.


Did you guys ever figure out how to recognize USB DACs in Android 7.1? Do you have a list of DACs that can connect successfully in Android 7.1?
 
Jan 3, 2017 at 11:29 AM Post #8,633 of 9,526
In the chance that this is helpful to anyone here or finding this thread through Google, I thought I would post my experience trying to get Android USB audio to work with a home dac.
 
I had a pre-existing setup including a DAC (Audio-gd NFB-28) and a USB to SPDIF converter (PCM2704-based Trends UD-10.1) that I was trying to get to work with my Sony Xperia XZ phone running Android 7.0 (which has a USB type-c port).  The Audio-gd DAC was not recognized by Android and the phone was not able to power the Trends converter by itself.  I got it working using the following:
 
an AQVOX power supply: http://www.aqvox.de/usb-power_en.html
a Belkin USB 3.0 Type C to A adapter: https://www.amazon.com/Belkin-USB-IF-Certified-Type-Adapter/dp/B00WJSPWRM/ref=sr_1_1?ie=UTF8&qid=1483460302&sr=8-1&keywords=belkin+usb+c+adapter
 
The AQVOX power supply connects in-line to the USB-B type port on the Trends converter, replacing the USB power provided from my phone with power straight from a wall-plugged power adapter.  The supplied power is supposed to be lower noise than typical USB but I can't verify that and don't really care too much anyway.  I just needed USB power, which my phone could not provide.
 
I plugged in the AQVOX into the wall, connected a standard USB A to B cable to the AQVOX adapter, then plugged it in the Trends converter.  I connected the USB A end to the Belkin adapter, and plugged that into my phone.  The SPDIF output from the converter goes into the Audio-gd DAC.
 
For the USB converter to be recognized by USB Audio Player Pro, either reboot once it is connected to the phone in the manner described above, or go to general Android Settings>Device Connection>USB Connectivity>Detect USB device.  On this phone at least, once you select the Detect USB device setting, the converter is detected and USB Audio Player Pro can see it and play to it, reporting bit perfect output.  If you don't reboot or hit detect, USB Audio Player Pro doesn't see the converter at all.
 
I have not yet been able to get audio out of any other app.  I will report back if I am successful doing that.
 
Jan 3, 2017 at 7:01 PM Post #8,634 of 9,526
HibyMusic talks directly with the USB DAC when given permission to do so, in which case audio data does not go through the Android Layer at all on its way to the USB DAC. :p

In this case you control the output sample rate using Settings->Advanced->SRC, where Off attempts output via original sample rate while On outputs resampled to the rate selected in the list below.


Did you guys ever figure out how to recognize USB DACs in Android 7.1? Do you have a list of DACs that can connect successfully in Android 7.1?


Unfortunately not yet
 
HiBy Stay updated on HiBy at their facebook, website or email (icons below). Stay updated on HiBy at their sponsor profile on Head-Fi.
 
https://www.facebook.com/hibycom https://store.hiby.com/ service@hiby.com
Jan 4, 2017 at 8:48 AM Post #8,636 of 9,526
  https://www.aliexpress.com/item/Breeze-audio-SU1-AK4495-XMOS-U8-MUSES8820-ADUM-High-Speed-Digital-isolation-Asynchronous-USB-DAC-decoder/32733084800.html?spm=2114.13010208.99999999.426.CiQSKG
 
 
Any thoughts on wheather this would be a good DAC or not?

No idea, but this one is https://emotiva.com/products/dacs/dacs/little-ego
 
Jan 10, 2017 at 4:00 PM Post #8,637 of 9,526
Hope they disable native upsampling in Nougat!  I use UAPP + Chord Mojo right now on my S7E, I can get bitperfect data from UAPP but not bandcamp or any other apps.   
 
Jan 10, 2017 at 10:20 PM Post #8,638 of 9,526
Hope they disable native upsampling in Nougat!  I use UAPP + Chord Mojo right now on my S7E, I can get bitperfect data from UAPP but not bandcamp or any other apps.   


You probably will only get one rate if it's using the Android Media Layer, either the maximum rate of the DAC or 16/44.1 or whatever rate is set in the config file posted above.
 
Jan 10, 2017 at 11:05 PM Post #8,639 of 9,526
Hope they disable native upsampling in Nougat!  I use UAPP + Chord Mojo right now on my S7E, I can get bitperfect data from UAPP but not bandcamp or any other apps.   


Well there is one reason why all audio data are resampled to a common rate for output on all common OSes, it's so that you don't get cutouts while switching from one hardware rate to another when the music format changes, say from the end of one album to the start of another coded at a different rate. In common usage you may even have multiple concurrent audio streams that need to be output at the same time (say multiple sound samples from a game, a notification sound, and background music all at the same time), and this can only work if all tracks are at a common rate, or resampled to a common rate if they aren't. :)
 
HiBy Stay updated on HiBy at their facebook, website or email (icons below). Stay updated on HiBy at their sponsor profile on Head-Fi.
 
https://www.facebook.com/hibycom https://store.hiby.com/ service@hiby.com

Users who are viewing this thread

Back
Top