[LG V20 Questions & Answers] br0adband:
OK, some reports. Variety of music in FLAC files from 16/44 through 24/192 including some Opus 128Kbps files which are 16/48 natively (from 16/44 source material originally). This again is on Oreo on the H918 using the stock LG Music Player and using USB Audio Player PRO aka UAPP (I'll just call it UAPP from now on) with the HiFi DAC enabled permanently (meaning the high impedance mode is forced into enabled state by altering a variable in the build.prop file).

When UAPP was installed and first used it detected the HiFi DAC in my V20 as expected and I used the defaults from that point on. I did experiment with the "Bit Perfect" setting and it forces everything straight to the DAC without issues, even when I was using UAPP to load a Shoutcast stream it went straight through which was impressive really.

So here goes...

1st Track

Alice In Chains - "Over Now" from their Unplugged album

Opus 128Kbps encoding 16 bit 48 kHz - renamed the file to Over Now.ogg so the LG Music Player and UAPP can "see" the file to play it, neither of them respect the .opus extension

LG Music Player

Output thread 0xf1903340, name AudioOut_1D, tid 1646, type 0 (MIXER):
I/O handle: 29
Standby: yes
Sample rate: 48000 Hz
HAL frame count: 768
HAL format: 0x1 (AUDIO_FORMAT_PCM_16_BIT)
HAL buffer size: 3072 bytes
Channel count: 2
Channel mask: 0x00000003 (front-left, front-right)
Processing format: 0x5 (AUDIO_FORMAT_PCM_FLOAT)
Processing frame size: 8 bytes
Pending config events: none
Output device: 0 (AUDIO_DEVICE_NONE)
Input device: 0 (AUDIO_DEVICE_NONE)

UAPP (default settings)

Output thread 0xf0b86000, name AudioOut_18D, tid 18928, type 1 (DIRECT):
I/O handle: 397
Standby: no
Sample rate: 48000 Hz
HAL frame count: 1920
HAL format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
HAL buffer size: 11520 bytes
Channel count: 2
Channel mask: 0x00000003 (front-left, front-right)
Processing format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
Processing frame size: 6 bytes
Pending config events: none
Output device: 0x8 (AUDIO_DEVICE_OUT_WIRED_HEADPHONE)
Input device: 0 (AUDIO_DEVICE_NONE)

2nd Track

Rush - "Ghost Rider" from Vapor Trails Remixed

FLAC 16 bit 44.1 kHz direct CD rip

LG Music Player

Output thread 0xf1903340, name AudioOut_1D, tid 1646, type 0 (MIXER):
I/O handle: 29
Standby: yes
Sample rate: 48000 Hz
HAL frame count: 768
HAL format: 0x1 (AUDIO_FORMAT_PCM_16_BIT)
HAL buffer size: 3072 bytes
Channel count: 2
Channel mask: 0x00000003 (front-left, front-right)
Processing format: 0x5 (AUDIO_FORMAT_PCM_FLOAT)
Processing frame size: 8 bytes
Pending config events: none
Output device: 0 (AUDIO_DEVICE_NONE)
Input device: 0 (AUDIO_DEVICE_NONE)

UAPP (default settings)

Output thread 0xf0b8c000, name AudioOut_195, tid 19418, type 1 (DIRECT):
I/O handle: 405
Standby: no
Sample rate: 44100 Hz
HAL frame count: 1792
HAL format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
HAL buffer size: 10752 bytes
Channel count: 2
Channel mask: 0x00000003 (front-left, front-right)
Processing format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
Processing frame size: 6 bytes
Pending config events: none
Output device: 0x8 (AUDIO_DEVICE_OUT_WIRED_HEADPHONE)
Input device: 0 (AUDIO_DEVICE_NONE)

3rd Track

Rush - "Subdivisions" from Signals

FLAC 24 bit 96 kHz (a most excellent vinyl encode done by PBTHAL)

LG Music Player

Output thread 0xf0bf6000, name AudioOut_19D, tid 19609, type 1 (DIRECT):
I/O handle: 413
Standby: no
Sample rate: 96000 Hz
HAL frame count: 3840
HAL format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
HAL buffer size: 23040 bytes
Channel count: 2
Channel mask: 0x00000003 (front-left, front-right)
Processing format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
Processing frame size: 6 bytes
Pending config events: none
Output device: 0x8 (AUDIO_DEVICE_OUT_WIRED_HEADPHONE)
Input device: 0 (AUDIO_DEVICE_NONE)

UAPP (default settings)

Output thread 0xf15fd000, name AudioOut_1B5, tid 20155, type 1 (DIRECT):
I/O handle: 437
Standby: no
Sample rate: 96000 Hz
HAL frame count: 3840
HAL format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
HAL buffer size: 23040 bytes
Channel count: 2
Channel mask: 0x00000003 (front-left, front-right)
Processing format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
Processing frame size: 6 bytes
Pending config events: none
Output device: 0x8 (AUDIO_DEVICE_OUT_WIRED_HEADPHONE)
Input device: 0 (AUDIO_DEVICE_NONE)

4th Track

Eric Johnson - "Cliffs Of Dover" from Ah Via Musicom

FLAC 24 bit 192 kHz HDTracks purchase

LG Music Player

Output thread 0xf0be3000, name AudioOut_1BD, tid 20300, type 1 (DIRECT):
I/O handle: 445
Standby: no
Sample rate: 192000 Hz
HAL frame count: 7680
HAL format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
HAL buffer size: 46080 bytes
Channel count: 2
Channel mask: 0x00000003 (front-left, front-right)
Processing format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
Processing frame size: 6 bytes
Pending config events: none
Output device: 0x8 (AUDIO_DEVICE_OUT_WIRED_HEADPHONE)
Input device: 0 (AUDIO_DEVICE_NONE)

UAPP (default settings)

Output thread 0xeec2c000, name AudioOut_1C5, tid 20521, type 1 (DIRECT):
I/O handle: 453
Standby: no
Sample rate: 192000 Hz
HAL frame count: 7680
HAL format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
HAL buffer size: 46080 bytes
Channel count: 2
Channel mask: 0x00000003 (front-left, front-right)
Processing format: 0x6 (AUDIO_FORMAT_PCM_24_BIT_PACKED)
Processing frame size: 6 bytes
Pending config events: none
Output device: 0x8 (AUDIO_DEVICE_OUT_WIRED_HEADPHONE)
Input device: 0 (AUDIO_DEVICE_NONE)

So the basic gist is that as far as the LG Music Player is concerned, any and all 44.1 kHz content like the 2nd track, a pure 16 bit 44.1 kHz data stream, is upconverted/upsampled to 48 kHz because that's what happens in the Android SRC subsystem: any 44.1 kHz content gets bumped to 48 kHz which is where most of the "purists" have the biggest issue. Track 1, the Opus file, with its native 48 kHz sampling rate, does go to the Snapdragon DAC as noted by the MIXER tag but since it's at that sample rate it goes untouched. UAPP passes basically everything to the DAC untouched then it shows DIRECT as expected as that same data is passed directly to the DAC.

If I put UAPP in "Bit Perfect" mode everything goes to the DAC untouched, even by UAPP's internal EQ (which I don't use anyway) and any other potential processing - UAPP has support for a parametric EQ (an additional $1.99 USD purchase) and something else called MorphIt which allows you to mimic the audio signature of another pair of headphones/IEMs with whatever you happen to be using as long as they're on the list of supported hardware.

I was surprised that UAPP would push the Shoutcast audio streams straight through as well but it does so that's pretty damned cool. I have no use for Tidal or Qobuz (other Hi-Res audio streaming services), but it does support Google Play Music interestingly enough and I do have a ton of 320 Kbps MP3 files stored there but I doubt I'd find it useful since I already have that content as Opus anyway (same source material, my old 2300+ CD collection). Guess some people can now listen to their favorite podcasts "bit perfect," go figure. :p

UAPP offers so much in terms of network connectivity, UPNP server ability and connections, DLNA support too, I guess it was worth the ~$3.50 I paid for it out of pocket as the rest was done with Rewards survey credits. I'll more than likely just leave it in "Bit Perfect" mode from now on since there's really no reason not to use that mode; I don't use EQ, ever, and these Monoprice 9927's are seriously awesome, really. The Head-Fi thread on them has been around since November 2011 and has a lot of great info and reviews and even a few mods - I placed a piece of Scotch tape on mine to cover the tiny port hole next to the stem and it made all the difference in the world in terms of audio quality for me. For the ~$7-8 they cost, they are worth that and a whole lot more, damned awesome kick-ass low cost IEMs, something that most of us never believed possible. :)

Anyway, hope this helps. I can't say UAPP would be worth the cost to you or anyone else, but so far considering the "Bit Perfect" mode for me and my purposes, I guess that makes it worth the cost to ensure that I'll always hear things exactly as they should sound in terms of them being untouched as a bit-stream directly to the ESS DAC.

Good luck, and happy listening... ;)