This is more of a “watch your back” notice than useful bug report, as I’ve only noticed it once. Simply put: When I put an instance of PSP Xenon in the last Track effect slot, with no additional plugs in the Master Section, and it’s dither disabled, Xenon limited the signal as set, but the signal stayed at 24 bits! This indicates WL7 was processing the signal at some stage between my last plug (PSP Xenon) and my interface (which was feeding SpectraFoo).
I tried all possible dither settings, and verified via 8 bit that Xenon was in fact working properly and dumping bits - sound turned ugly and grainy at 8, opened back up at 24. Similarly I could tell it’s auto-black worked fine, turning on/off smoothly with signal. WL7, not Xenon, was doing some post-effect math.
To verify I wasn’t going insane, or just being sloppy, I opened an older project with the identical effects routing - it dutifully played back at 16 bits, as expected. I closed that, and created a new project, with the same audio files, and identical effects routing. It too played back 16 bits when dither was engaged. Only this one odd session had the issue. Something in the montage was changing gain or diddling bits post-VST plugs. I think this also verifies the problem isn’t in the master section - if the master section were diddling the signal, all 3 projects would have shown 24 bits.
I was measuring directly from my Metric Halo ULN8 in SpectraFoo, which had no effects or gain changes (and again they’d have shown up on ALL projects, not just one) happening, and is verifiably bit-clean at all depths. I tried restarting/reloading to see if this would clear the problem and it did not.
Attached below are some screen caps that show this in action… First the problem, with routing revealed:
Then simply moving Xenon to Master section with everything else identical, I get 16 bits as expected:
Finally, another project with Xenon only in the track effects - works great:
I would never have caught this, and possibly sent out a truncated master had I blindly trusted WL7 to properly do the math without verifying it’s integrity on every single job via scope. This issue is relatively subtle, and easily missed. So Ludwig’s Dictum applies in spades: Don’t turn your back on WL7! If you must trust, always verify.