v1.2.0 — accuracy + perf overhaul
Highlights
- True Peak: ITU-R BS.1770-4 / EBU Tech 3341 準拠の 4x polyphase Kaiser-windowed sinc oversampling (48-tap, ~89 dB stopband) を新規実装。これまでは sample peak をそのまま返していました
- Loudness 精度: bin 中心値補正・Neumaier 補償累積・LRA percentile を ceil ベースに・filter warmup ループで K-weighting の過渡応答を測定領域から排除・channel weight を 10^0.15 に厳密化・denormalize 閾値を 1e-15 → 1e-30
- 重大 SIMD バグ修正:
exp_smooth_batch_avx2の IIR 直列再帰違反 (AVX2 ビルドで RMS が桁違いにずれていた)、_mm256_hadd_pd4-lane 水平和の取り違え。すべての AVX2 経路をhsum_pdヘルパに統一 - パフォーマンス: normalize の load+analyze 二重ロード解消、解析を 1 パス化 (always
measure_with_rms)、WAV/AIFF writer をバッファ化、load_wav/load_aiffをWavStream/AiffStream経由のチャンク読み込みに置換 (ピークメモリ約 1/2) - bit-depth 変換 SIMD 化: i16 / i24 / i32 LE/BE → float の AVX2 経路を追加。
WavStream/AiffStream::read_framesが per-sample switch からsimd::convert_*の一括 block デコードに置換 (約 3-8× 高速化) - CLI:
-i + -norm-*の相互排他、-j<N>の例外捕捉、-norm-X:value末尾文字検証、CSV 出力に UTF-8 BOM、Ctrl+C ハンドラ、largest-first スケジューリング、normalize 並列スレッドキャップ、エラー件数表示
Asset
pbAudioStats-1.2.0-win64.zip:
pbAudioStats.exe(CLI, 64-bit Windows / MSVC, /MT)pbAudioStatsLib.lib(static library)include/pbAudioStats.h,include/pbSimd.hREADME.md,README_ja.md
Build requirements
- Windows 10/11 64-bit / MSVC 2022
- CMake 3.16+
- AVX2-capable CPU (Haswell 2013 / Zen 2018 以降) を推奨。AVX2 が無くても scalar fallback で動作します