USB SampleRate Changer Versions Save

This script changes the sample rate of the USB audio class driver on Android devices on the fly like Bluetooth LDAC or Windows mixer

v2.8.4

1 week ago
  • Changed read ahead buffer sizes from 16960 kB to 17000 kB to reduce I/O jitter
  • Adjusted NrRequests of I/O scheduling
  • Adjusted "extras/jitter-reducer.sh" for Galaxy S4 (A12)
  • Added mock equipment filters (in-DAC over-sampling filters and a mastering tool re-sampler) in "Usage Samples/Resampling"

Note: For those who are curious about in-DAC over-sampling filter distortion, try mock series shell scripts in "Usage_samples/Resampling" folder after setting the output sample rate of your USB DAC to be 353kHz (8x over-sampling) or 705 kHz (16x over-sampling).

v2.8.3

1 month ago
  • Fixed io-scheduler reverting (++io option) for Galaxy S4 (A12)
  • Fixed thermal-jitter-reducer in "extras/jitter-reducer.sh" (killing vendor.thermal-engine)
  • Fixed Pixel7's default USB sample rate limiter (96kHz -> 192kHz) for adapting to a recent change
  • Added a workaround for recent Pixel Firmwares (not to reboot when superuser resetprop'ing over props modified through system.prop of a magisk module)
  • Reorganized "Usage Samples"

v2.8.2

4 months ago
  • Fixed for Pixel 8's

Edit: Fixed Usage samples for executing on KernelSU ("exec su" to "su" for correct expansion of shell variables)

v2.8.1

7 months ago
  • Tuned "extras/jitter-reducer.sh" for reducing I/O scheduling jitter on Tensor devices
  • Fixed a bug for "--force-bluetooth-qti" option
  • Tuned "extras/jitter-reducer.sh" for reducing CFQ I/O scheduling jitter on Qcomm devices

v2.8.0

8 months ago
  • Tuned "extras/jitter-reducer.sh" for reducing I/O scheduling jitter on most devices
  • Added "Usage_Samples" to easily execute every script with its typical parameters on file explorers with some sh script execution capability like "mixplorer"

Remark: Don't forget to install "Audio jitter silencer" together!

v2.7.3

10 months ago
  • Fixed "extras/jitter-reducer.sh" to change "performance" governor of GPU without fail
  • Tuned "extras/jitter-reducer.sh" for reducing I/O scheduling jitter on Tensor devices

v2.7.2

10 months ago
  • Tuned "extras/jitter-reducer.sh" for reducing I/O scheduling jitter, especially for Tensor devices
  • Fixed a bug for Magisk 26.x

v2.7.1

11 months ago
  • Optimized "extras/jitter-reducer.sh" for reducing I/O scheduling jitter
  • "extras/jitter-reducer.sh" now confirms and sets the cpu scaling max freq to its available max (sometimes the scaling max freq has been lowered before by a controller on some devices)
  • Removed "raw" mixers from template files
  • Fixed and adjusted "extras/jitter-reducer.sh" for Tensor devices (e.g., GPU max freq and the mq-deadline scheduler)
  • Added supports to Tensor devices; Tensor specific --offload-hifi-playback mode (USB 96kHz or 192kHz fixed for non- hires. music while 48kHz did on stock ROMs) and --bypass-offload-safer mode (only 44kHz, 48kHz, 96kHz and 192kHz are available by using Tensor device's offload driver)
  • Note: Audio outputs of stock Tensor devices work by 48kHz & float mode for non-hires. music, 96kHz & 32bit for hires. one, and exceptionally 44.1kHz & 16bit for AAC music files (compressed offload feature) without third party proprietary USB drivers. Till now, the usbv2 HAL driver cannot work at all after AOC (new USB Direct Access feature) was introduced. Tensor's hardware offload driver wouldn't change its sample rate except 44.1kHz, 48kHz, 96kHz and 192kHz (float and 32bit int format).

Edit: Fixed bluetooth audio for offloading modes

v2.7.0

11 months ago
  • Added a support for "sysbta" (System Wide Bluetooth HAL) of A13 GSI's, and "bluetooth_qti" (experimental)
  • Added "extras/change-bluetooth-hal.sh" to enable "a2dp offload" bluetooth HAL of Snapdragon stock ROMs on A13 GSI's
  • Optimized "extras/jitter-reducer.sh" for reducing I/O scheduling jitter

v2.6.5

1 year ago
  • Optimized "extras/jitter-reducer.sh" for reducing I/O scheduling jitter
  • Added extras/dumpsys-bluetooth-filtered.sh command for displaying the active codec information