USB Sample Rate Unlocker patches supported vendor audio HAL libraries so Android can request higher USB audio sample rates from compatible external DAC hardware.
Higher USB Audio Limits
Removes a software-side ceiling where the ROM, audio HAL, USB controller, and DAC all support the requested format.
HAL Binary Patch
Replaces the supported sample-rate table in compatible libalsautils.so or libalsautilsv2.so libraries.
Selectable Ceiling
Offers conservative 192 kHz, default 384 kHz, and experimental 768 kHz profiles during installation.
Systemless Overlay
Mounts patched copies through the root framework instead of writing directly to the vendor partition.
How the Patch Works
Many Android vendor audio stacks contain a fixed table of USB sample rates in an ALSA utility library. The installer locates a supported library, replaces known byte patterns with the selected rate table, and includes the resulting binary in the module overlay.
On some older or lower-cost Tensor devices, the project also adjusts an XML limit from 96 kHz to 192 kHz. Qualcomm, MediaTek, and Tensor implementations differ, so the installer may find a different constraint—or no recognized constraint at all.
Sample-Rate Profiles
| Profile | Maximum Rate | Use Case |
|---|---|---|
| Conservative | 192 kHz | A lower ceiling for hardware or ROMs that become unstable at higher rates. |
| Default | 384 kHz | The upstream default and the practical upper limit exposed by many supported USB audio paths. |
| Maximum | 768 kHz | An experimental choice that upstream warns may produce stuttering. |
Compatibility and Verification
Upstream reports testing on LineageOS 17 through 21 and crDroid 7 through 10, corresponding to Android 10–14 generations. That history is useful but does not guarantee compatibility with every vendor library or newer ROM.
Verify the active output format with an audio diagnostic tool while playing a known sample. Some Qualcomm offload paths already permit 384 kHz, some MediaTek stacks remain near 96 kHz, and the player may resample audio independently of the USB HAL.