Skip to content

test: meaningful upmix test (decode + assert surround energy) - #5

Merged
strepto42 merged 1 commit into
mainfrom
test/meaningful-upmix
Jun 8, 2026
Merged

test: meaningful upmix test (decode + assert surround energy)#5
strepto42 merged 1 commit into
mainfrom
test/meaningful-upmix

Conversation

@strepto42

Copy link
Copy Markdown
Owner

Replaces the tautological config-default test and the weak burst-existence test with a behavioral one: decode the AC3 output and assert upmix=surround puts energy in the surround channels (on=0.147 vs off=7e-7 RMS). Removed test-theatre per directive.

- Remove test_config.cpp (Config{}.upmix=="surround" was a literal==literal
  tautology) and the weak "upmix yields bursts" case (only proved no-crash).
- Add test_upmix.cpp: encode anti-phase stereo, DECODE the AC3 back via the
  spdif demuxer + AC3 decoder, and assert the surround channels carry real
  energy with upmix=surround (~0.147 RMS) but are silent with upmix=off (~7e-7).
  Self-validating: fails if the upmix is a no-op.

Note: writing this caught a real test bug (decoding the primed-silence frame),
which a tautological test would have hidden.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@strepto42
strepto42 merged commit 3be5ba8 into main Jun 8, 2026
1 check passed
@strepto42
strepto42 deleted the test/meaningful-upmix branch June 8, 2026 08:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant