Skip to content

v1.3.0 — Extreme Optimization + Correctness Fixes

Latest

Choose a tag to compare

@pbtechlab pbtechlab released this 12 Jun 07:37

pbAudioStats v1.3.0 — Extreme Optimization + Correctness Fixes

CLI build for Windows x64 (requires AVX2/FMA — Intel Haswell 2013+ / AMD Excavator 2015+).

All measurements verified bit-stable against EBU Tech 3341/3342 theoretical values and cross-checked against ffmpeg ebur128. Golden comparison vs v1.2.0 passes. Built and validated on Windows x64 (AVX2) and macOS ARM64 (NEON).

Performance (vs v1.2.0, best of 3, Intel Ultra 9 185H)

Scenario Speedup
Batch analysis (80 files) 6.9×
Normalize (10-min 24-bit) 3.8×
MP3 analysis (10-min) 1.85×
In-memory analysis (total) 2.68×
└ True-peak stage 4.2×
  • True peak: streaming block-FIR with AVX2/NEON FMA kernels, rigorous L1-norm chunk pruning, end-of-stream flushing
  • Loudness/RMS fully chunk-batched; block aggregation O(1)/sample
  • Hardware FTZ/DAZ, all-core scheduling, memory-budgeted normalization, /fp:contract

Correctness fixes

  • 32-bit PCM writer no longer overflows full-scale +1.0 to INT32_MIN
  • Streaming path now computes the exact oversampled true peak (was sample peak)
  • WAVE_FORMAT_EXTENSIBLE WAV support
  • UTF-8 / Japanese filename support on Windows
  • Round-to-nearest PCM writes; robust WAV/AIFF header parsing
  • AVX2/FMA CPU capability guard (clean diagnostic instead of illegal-instruction crash)
  • MP3 output rejected instead of corrupting the input; quad/5.0/6.1/7.1 channel weights

Package contents

  • pbAudioStats.exe — CLI tool
  • pbAudioStatsLib.lib — static library
  • include/pbAudioStats.h, include/pbSimd.h — public headers
  • README.md, README_ja.md

See README for full usage.