Uh... no, that shows a complete lack of understanding of how a DSP works. Firstly, the more you reduce the volume upstream, the less headroom you have to apply "lossless" modifications (EQ, crossover, loudness, compression, etc.) to the signal. So no, the only controllable volume should be the one at the end of the circuit, that is: the master volume. This doesn't prevent you from controlling the volume upstream (PC, software, TV, CD, etc.), but you should prioritize volume control at the master volume level to ensure the integrity of the signal with any modifications made to it. There's some leeway in 32-bit... but even so, this concept is fundamental.
But on the other hand, and after what I just said, it's obvious, I totally agree with that:
Fair point, my earlier diagram made visual sense for explaining the idea, but it was too loose technically.
In my custom build I have ignored Windows volume/mute writes and put the encoder/RF remote on that same host/listening volume path instead (the volume control that was always intended to be used)
So the encoder is not acting as a random upstream attenuator before the DSP processing. It is replacing Windows as the user volume control for DSPi. Loudness follows that user volume value, and Master Volume remains the final ceiling/protection limit.
So the way I understand it is more like this:
Control path:
Encoder / RF remote
↓
DSPi host/listening volume value
↓
Loudness compensation uses this value as its listening-level reference
Then in the audio path, that same host/listening volume is also used as part of the final output scaling, together with Master Volume:
Audio path:
Input
USB / S/PDIF
↓
Input gain / preamp, if needed
↓
DSP processing
PEQ / crossover / routing / loudness
↓
Output gain / channel matching
↓
Final output scaling
Host/listening volume × Master Volume
↓
Outputs
I2S / S/PDIF TX
So loudness compensation does not follow Master Volume. It follows the user/listening volume value. Master Volume is then multiplied in later as the overall ceiling.
That distinction is what I was trying to get at. I want the encoder/RF remote to be the normal day-to-day listening volume, while Master Volume remains a set-and-forget maximum limit.
This is also why the encoder makes sense to me for S/PDIF and standalone use. Windows volume is only really logical when Windows is the source. DSPi still needs its own volume reference for loudness, and the encoder/RF remote gives it that.