MASA metadata ratio scaling issues in reading, verification, and writing
Basic info
- Fixed point (all): a8ff39cd
Bug description
MASA metadata stores ratios as uint8_t values ranging from 0...255 with float equivalence of 0...1 inclusive. The conversion is done via division and multiplication with 255. BASOP conversion is not correct for this everywhere and the most critical issue is that reading actually scales with 256 instead. There is also some skipped verification of summing to one (as 256 scale does not hit it ever) and this causes significant extra complexity.
A complete pass is required to fix the various places.