QC

Every known rejection reason.Caught before you upload.

UTUVO QC is an offline delivery checker for Atmos ADM BWF masters. It reads the metadata, measures loudness on a 7.1.4 render, and reports every check as Pass, Warn, Fail or Skip against the spec the platform actually publishes.

Twenty-two checks across Apple Music, Amazon, TIDAL, UMG, Sony. Read the rejection cause before the rejection letter arrives.

macOS 13.0 or later · Apple Silicon only · Developer ID signed · Apple notarized · 30-day trial

UTUVO QC report viewUTUVO QC report view
Twenty-two checks, one verdict per row.UTUVO QC report view: every check lands as Pass, Warn, Fail or Skip with the cause named

Product demo

See QC find the problem before delivery.

Twenty-two delivery checks, one clear verdict per row, with the reason behind every warning or failure.

63 seconds · English narration · 1920×1080 · QC 0.4.1 beta

A fast tour of the real QC workflow.Download video

The rejection reasons are public. Nobody checks them all at once before you upload.

Platforms publish the rules. They rarely tell you which one you broke. Below are eight rejection causes the delivery specs name, each paired with the QC check that catches it, and the full table of all twenty-two checks against the threshold and confidence that drives the verdict.

UTUVO QC checks gridUTUVO QC checks grid
A real checks grid: every row carries the rejection cause, the threshold, and a Pass, Warn or Fail verdict.

Eight rejection causes. One named check each.

  • Sample rate not 48 kHz. Caught by: Sample rate check.
  • Bit depth under 24-bit. Caught by: Bit depth check.
  • ADM metadata missing chna or axml. Caught by: ADM metadata check.
  • No bed at all in the file. Caught by: Bed layout check.
  • LFE missing, doubled, or full-band. Caught by: LFE channel check + LFE band-limit check.
  • True peak above −1 dBTP. Caught by: True peak check (4x oversampling, BS.1770-4).
  • Timeline offset left in the export. Caught by: Programme start check.
  • Timecode frame rate not 24 fps. Caught by: Timecode frame rate check (Apple / UMG / Sony: Confirmed MUST).

These checks target the rejection reasons the specs actually name. Passing every one is not a promise the file will be accepted; the honest scope is that the known rejection causes have been checked.

All twenty-two checks, with thresholds and confidence.

Confirmed is a hard must against the spec the platform publishes. Advisory is a recommendation; the platform may still accept, but the engineer should know.

CheckThresholdConfidence
Sample rate48 kHzConfirmed
Bit depth≥ 24-bitConfirmed
ADM metadatachna + axml presentConfirmed
Bed layout7.1.2 baselineAdvisory
LFE channelexactly oneConfirmed
LFE band-limitLF only (HF ratio)Advisory
Object count≤ 118Confirmed
Object positions±1.0, finite, every dynamic keyframeConfirmed
Programme start00:00:00.00000Advisory
Binaural metadatanot all OffAdvisory
Channel count≤ 128Advisory
Silent objectsnone silentAdvisory
Height contentreal height presentAdvisory
True peak≤ −1 dBTP (BS.1770-4, 4x oversampling)Confirmed
Integrated loudness−20 to −18 LUFS (Apple window)Advisory
Stereo alignment≤ 50 msAdvisory
Duration match≤ 41.7 msAdvisory
Dialnormpresent and consistentConfirmed
Spatialization authenticitynative vs upmix scoreAdvisory
File namingplatform naming rulesAdvisory
DAMF package.atmos attached at 96 kHzConfirmed
Timecode frame rate24 fpsConfirmed

Your rejection letter is hidden in metadata. QC pulls the whole dbmd apart and lays it out.

The Dolby metadata chunk (dbmd) carries dialnorm, downmix coefficients, per-layout monitoring trims and the timecode frame rate. Most rejection letters never mention it, because most readers never open it. QC parses dbmd and the .atmos companion so the engineer sees what the delivery spec actually asks for.

UTUVO QC dbmd parseUTUVO QC dbmd parse
A real dbmd parse: dialnorm, downmix coefficients, per-layout trims and the 24 fps chip, all in one window.

dialnorm, downmix, and the per-layout trims.

  • Dialnorm and downmix levels: parsed from the dbmd chunk (EBU Tech 3285 section 6), shown alongside the spec the platform expects.
  • Per-layout monitoring trims: the Dolby-private dbmd seg10 holds the trim for each monitoring layout, either a Manual number or the marker automatic when the renderer computes it on the fly.
  • Timecode frame rate: read from both dbmd and the .atmos companion file. Apple Music, UMG and Sony all mark 24 fps as Confirmed MUST.

Others give you one number. We tell you how far that number is from Dolby Renderer, and why.

UTUVO QC measures integrated loudness on a 7.1.4 render of the ADM (ITU-R BS.1770-4). On three real masters used as ground truth, it reads consistently +0.10 to +0.45 LU louder than a real Dolby Renderer. That gap is known, documented, and deliberately not corrected.

UTUVO QC loudness cardUTUVO QC loudness card
A real loudness card with the Apple Music target window, the measured LUFS, and the documented offset to Dolby Renderer.

Honest by construction.

  • Measurement-only 7.1.4 render. QC does not produce a delivery render or an encode, and never modifies your master.
  • No Dolby SDK, no licence. QC reads ADM metadata directly and measures loudness from the PCM.
  • Fully offline. No telemetry, no upload, no cloud. Masters and reports stay on your machine.

BS.1770-4 only defines surround weighting for 5.1 (±110°). The three published treatments of 7.1.x back-surround weighting disagree with each other, so until the coefficients are available, correcting would mean guessing. Treat the QC figure as accurate to roughly half a LU against a real Dolby Renderer, not to a tenth of a LU.

Fake Atmos can be heard. Now it can be seen.

Spatialization authenticity scores how likely a master is a native discrete Atmos mix rather than a stereo-to-Atmos upmix. ObjectMap adds a top-down view and a Height view, and draws each dynamic object’s trajectory as a flight trace through the room.

UTUVO QC ObjectMap viewUTUVO QC ObjectMap view
A real ObjectMap frame: top-down view, Height view, and four object flight traces from a real Atmos master.

Authenticity: experimental, advisory, opt-in.

  • Spatialization authenticity is experimental, advisory, and opt-in. It can only ever return Warn. It is never a verdict.
  • ObjectMap shows top-down and Height views with dynamic flight traces per object, read from the ADM at every dynamic keyframe.
  • Object motion summary: static, horizontal or with-height, read from the metadata.

Upmixing a stereo catalogue to Atmos is a legitimate practice; upmixed masters routinely pass platform QC and ship. This check answers "native discrete or upmixed?", not "valid or invalid?".

A folder at a time. Same engine in GUI and CLI.

UTUVO QC batch viewUTUVO QC batch view
A real batch view: one row per master, the worst verdict at the top, and the matching exit code for the whole folder.

Per-file reports, worst-case exit code.

Drop a folder, get one HTML report per master, and the batch ends with exit 0 (all pass), 1 (any warn) or 2 (any fail). GUI and CLI run the same Rust engine, so a delivery script on the studio NAS and a drag-and-drop session in the GUI share the same verdict.

  • HTML report output, self-contained, prints to PDF without external services.
  • Same engine in CLI and GUI. Ship one verdict, in a script or a window.
  • Three-language manual bundled: English, Traditional Chinese, Simplified Chinese.
UTUVO QC MP4 stampUTUVO QC MP4 stamp
A real Atmos MP4 with the red "Not a Deliverable Master" stamp, so the engineer sees the honest scope before upload.

MP4: container-level checks, no faking.

Atmos MP4 (DD+ JOC) gets format and channel info read from the container. That is the honest scope: container-level checks only, not a full Atmos MP4 QC. When the input is an MP4, the report shows the red "Not a Deliverable Master" stamp so the engineer is never misled about what was checked.

Requirements

macOS 13.0 or later · Apple silicon

Status: Beta. Download the signed beta above.

Specs and download

Version0.4.1
RequirementsmacOS 13.0 or later · Apple Silicon only
Size13,073,752 bytes
SHA-256412880e414bb3e9c56906cb585ff398ab2c4ce818e98a1e8add4c3fda7025734
SigningDeveloper ID signed · Apple notarized
Trial30 days, then a licence key

Asked often enough.

Does it render or encode my master?

No. Checks are offline and metadata-plus-PCM only: it reads ADM metadata and measures loudness from the PCM. It never renders or encodes, and needs no Dolby SDK.

Can I put it in a delivery script?

Yes. CLI with automation exit codes (0/1/2; batch takes the worst result), plus folder batch checking and a self-contained HTML report you can print to PDF.

Does anything leave my machine?

No. Fully offline, zero telemetry. Masters and reports stay local.