How it works

The Android audio path, explained

Vesqen’s Chain page follows local audio from the source file through the decoder to Android and your headphones or USB DAC. It shows what Android and the player report, where each value comes from, and what still needs external verification.

Five steps from the file to your headphones

  1. 01

    Source file

    Container, codec, sample rate, bit depth, channel count and the file’s average bit rate.

  2. 02

    Decoder

    Which decoder runs, whether it’s software-only or hardware-accelerated, the PCM format it puts out, and how long each frame takes to decode.

  3. 03

    App processing

    Whether Vesqen itself changes the sound, for example software volume, speed, pitch, silence skipping or resampling. Strict USB output requires all of these off.

  4. 04

    AudioTrack

    The PCM format handed to Android, the buffer size, how many underruns (dropouts) there have been, and how far the playback clock has drifted.

  5. 05

    Route

    Which output device Android picked, what else is connected, whether the route accepts the current format directly, and the mixer profiles a USB DAC reports.

There are also process and power figures, such as Vesqen’s CPU and memory use and the battery current.

Every value says where it came from

Each value on the Chain page shows how it was obtained, and the advanced view also shows where it came from and when it was read. Values only update while the Chain page is open.

Measured
Read directly from Android or the player. The app labels these “Measured · not verified”.
Derived
Calculated from measured values, such as the average read bit rate over a window, with the window and the method shown.
Estimated
Can’t be read directly, only estimated, such as whole-device power from battery current times voltage.
Unavailable
If a value can’t be read, it says so and gives the reason, for example the system doesn’t expose it, Android is too old, or nothing is playing yet. Nothing is filled in from elsewhere.

“Measured” describes how a value was collected. It says nothing about whether the output is bit-perfect.

Output states

SYSTEM MIXED
The audio goes through Android’s normal output, where the system may mix, resample or add effects. The phone speaker, wired headphones and Bluetooth all work this way.
BIT-PERFECT AVAILABLE
The connected USB DAC reports a bit-perfect profile that matches the current file, but strict USB output isn’t on yet.
BIT-PERFECT REQUESTED
Strict USB output is on. Vesqen is rebuilding the AudioTrack and checking the mixer setting and the actual route.
BIT-PERFECT ACTIVE
The AudioTrack, the mixer setting and the route all match the current file. This is evidence from the Android side.
BIT-PERFECT VERIFIED
There is an external verification record for your exact setup. No records exist yet.
STRICT OUTPUT STOPPED
A condition failed during strict USB output, so playback stopped and the reason is shown.

The Chain page also shows “Requested-format direct-playback capability”: Android reporting that the route accepts the current format directly. It’s listed on its own and has nothing to do with bit-perfect output.

How far Android’s evidence goes

Android can tell Vesqen what format the AudioTrack received, what the mixer is set to and which device the sound was sent to. What the DAC finally puts out can’t be seen from the phone. So ACTIVE only means the Android side matches; the final output has to be confirmed by measuring it with external equipment.

External verification records

External verification checks the DAC’s real output with measurement equipment, and the result is written up as a record signed by the maintainer. After you import a record file in Settings, Vesqen checks the signature, then whether the app version, phone and system, DAC, source format and output format all match the record. Only an exact match is used, and only then does it show VERIFIED. No records have been published yet.