diff options
author | Chris Robinson <[email protected]> | 2021-04-11 17:09:52 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2021-04-11 17:09:52 -0700 |
commit | f403fbd2e949ae296897eb2d7e9984da53d2de42 (patch) | |
tree | 3706b027728b5482e50953629e72685bc0f4c634 /core/bsinc_tables.cpp | |
parent | 4af6cfac7d1dab526526684089ee3c5439874feb (diff) |
Fix UHJ encoding/decoding factors
Classic B-Format uses scaling factors W=1, X=sqrt(2), Y=sqrt(2), and Z=sqrt(2),
which is +3dB louder than FuMa. The base factors are designed assuming classic
scaling, so encoding a 0dBFS FuMa signal without accounting for this would
result in the UHJ signal peaking at about -3dBFS. Similarly, decoding UHJ to
FuMa B-Format would be +3dB louder than intended.
So encoding needs to implicitly boost the signal by +3dB, and decoding needs to
attenuate by -3dB.
Diffstat (limited to 'core/bsinc_tables.cpp')
0 files changed, 0 insertions, 0 deletions