DAC dongle: Realtek USB 2.0 Audio (supports up to 192kHz PCM)
Roon ARC: 1.77 (build 405) earlyaccess
Description of Issue
When enabling the USB Driver beta in Roon ARC, the app fails to initialize exclusive mode with the Realtek USB DAC dongle. Instead of displaying the Android USB hardware permission pop-up, ARC falls back to standard audio routing and Android targets the default (wrong) audio profile, forcing a 192 kHz Qobuz stream to be downsampled to 48 kHz.
After reviewing phone logs withadb shell dumpsys audio_policy and audio_flinger, it appears the Android OS creates the proper high-res hardware profile thread (AudioOut_68D at 192kHz), but it sits idle. Instead, ARC registers an active track under the standard 48kHz mixer thread (SRate: 48000), which looks like a driver initialization failure and silent fallback.
After toggling on “Disable USB audio routing” in Android Developer Options, ARC does not output audio to the USB device and routes audio through the phone’s internal speakers. Switching ARC’s USB beta driver to on or off does not change this behavior.
Self Diagnostic Steps Taken:
Third-Party Drivers: installed both USB Audio Player Pro (UAPP) and HiByMusic. Both applications successfully trigger the Android OS system permission pop-up (“Allow app to access USB device?”) and can play 192 kHz audio through the USB Realtek dongle.
Background Tasks: disabled “Now Playing” lock screen, song identification, “Hey Google” voice activation, and Accessibility Services to ensure no concurrent capture streams or flag-stripping policies were active (see AudioPolicyInterfaceImpl.cpp and conditions where SYS_RESERVED_INVALID is not set/used).
Because 3rd party audio drivers from the UAPP and HiBy music players can successfully execute the USB handshake protocol on the phone while Roon ARC does not, I wonder if this is a bug report or regression. I come to this conclusion after reading:
Requesting support to review ARC’s inability to get exclusive control of the USB dongle with the beta driver. Thanks!
Thanks for writing in and for sharing your report! Sorry to hear you’re running into such playback issues here. We’re unfortunately not seeing any Arc activity tied to your Google Pixel 9 Pro, if possible, could you please reproduce the issue and share:
A more specific date and time
The specific track name you’ve attempted to play
From there, I’m hoping we’ll be able to see what might be going on behind the scenes.
Since you already have ADB ready to go, a raw logcat capture from your phone will actually give us a much better look at the underlying hardware handshake failure anyway.
Could you please replicate the issue one more time while capturing the log to a text file?
Clear your log buffer:
adb logcat -c
Start the capture:
adb logcat -v time > roon_arc_usb_bug.txt
Reproduce the bug: Tap play on your 192 kHz track, let it run for 10 seconds until the green 48 kHz fallback triggers, and then press Ctrl + C in your terminal to stop recording.
Please note the exact timestamp of when you hit play, and upload the roon_arc_usb_bug.txt file directly to our engineering link here: [url=https://workdrive.zohoexternal.com/collection/8i5239cc05950ac07456889838d9319545a82/external]Roon Support Logs Uploader[/url]
Thanks for the logs and the detailed write-up. We’ve shared them with engineering.
A note to frame expectations here: the driver is in beta because there is such broad variation in permission handling, chipset behavior, and routing across DAC manufacturers and Android builds. It’s an enormous surface area for our QA and engineering teams to cover, which is why the beta label remains for this feature even years after ARC’s launch.
That said, engineering is working through these reports, and the legwork you’ve done to pin this down will be genuinely useful. I only share this so you understand it may take some time to ship any specific fix.