Just a quick heads up about a problem I found controlling the SigmaDSP volume controls from the I2C port.
If you capture what SigmaStudio does as it changes the volume settings, you can see it writing directly to the volume control memory. I used this captured procedure as the basis of my volume change routine in the micro-controller code. I sometimes got pops and bangs when I changed the volume levels with this code. I then changed the routine to use the safeload registers to do the volume change and so far all has been quite.
So it looks at though SigmaStudio is programmed to change the volume controls in an un-optimised way.