I figured it out. This'll be my last post on this topic.
For the record, OSX's aggregate devices feature sync's the clocks
perfectly.* In this one regard at least, OSX rules.
Oppo lied about the audio quality of their flagship player. It's consumer grade crap. I'm not going to bother going over the noise, crosstalk and other specs I measured in this thing (middle of the road performances BTW) - I'm just going to cover what is relevant to this topic - time synchronization.
One of the Oppo lies is in their noise performance. Instead of designing low noise circuits, they put in an "auto-mute" "feature" that you can't bypass. This mute circuit has a threshold that Oppo thinks will open with music quick enough that the user won't notice, which may be the case, but it also totally mutes and shuts off the converter circuits less than a second after playback levels drop below the threshold.
Every time the converter circuits wake up again they recalibrate to a slightly different latency. The Oppo channels all follow the same latency, but this thing is a moving target for OSX's aggregate devices clock sync - yet OSX still manages to keep up with it. But this means that you need a slightly different delay compensation for the HF in DSP Studio every single time this occurs - in other words, you can't successfully aggregate the Oppo with anything else.
This insane behavior was screwing up my earlier measurements and making it look like OSX was at fault. For example, the stepped sine sweeps have a one second gap between each frequency point, thus the Oppo was going to sleep and waking up at a slightly new latency at every single step! That's the reason for the wiggles in the phase curve that turned into wild swings at HF.
I managed to keep the Oppo awake with 5 second long continuous sweeps in a closed loop measurement feeding its digital inputs (both optical and coaxial gave identical results). In the following I show (8) consecutive measurements with no changes between measurements - I just kept hitting the measure key. I've yet to see the Oppo produce the same latency twice.
Oppo Impulse ResponsesSo how do you measure something that won't stay still between sine steps? Use another open loop calibrated stimulus, this time I chose a multitone with 50 sine tones that all occur at once, so the full passband is exercised for a couple of seconds and then it ends. This worked well and kept the Oppo from falling asleep, thus I was able to get stable phase plots that were indicative of a pure delay. These phase traces are of the Oppo in reference to the DAC2, in other words, the APx box had the output of the DAC2 going into its Ch 1 analog input and the output of the Oppo going into its Ch 2 analog input.
In the following, I again show (8) consecutive measurements and the phase plot kept moving just like the IR's did with each new measurement. I also included the frequency response of the DAC2 (blue) and Oppo (brown) in this plot.
Oppo PhaseAn amazing observation is that OSX managed to properly sync the DAC2 with sub-millisecond latency to a moving target with more than 200ms latency! Just for interest, here are (8) consecutive measurements for the DAC2. They all overlap perfectly. Everything in this thread has been at a 96kHz SR.
DAC2 Impulse Responses* Not consistently true unfortunately. Read my following posts in this thread before committing your time and money to this.