Can I (we) temporarily synchronize outputs of multiple DAC units (each of them has own independent ASIO driver) in 10 micro second (0.01 msec) precision in DSP-based multichannel audio setup? Part-2: Simplified experiments without using audio mixer
Important top message:
This post is not intending to suggest/recommend you to apply or utilize the same setup and procedures in your DSP-based audio system, but I just would like to share my curiosity and experiments relating to the above titled subject for your possible reference and interest.
Hello
@mdsimon2 and dear ASR friends,
Introduction:
This post is a follow-up of my previous post
#783 on the titled subject.
As all of you can find in the posts after
#783, we had really nice and worthwhile discussion, especially with
@mdsimon2 who kindly shared intensively his experiences and data on his audio rig consists of Mac computer and MOTU (professional) multichannel DAC together with MiniDSP.
Since I use Windows PC and I have never used Mac, I believe his intensive discussions would be highly worthwhile for Mac people who would possibly use multiple DAC units in DSP-based multichannel audio system.
Furthermore, in his post
#788, he also kindly suggested me additional simplified experiments to objectively observe/measure the relative time-domain discrepancy between two DAC units in my setup without using analog audio mixer which I was including in the recording chain throughout my experiments in my post
#783.
Even though I do believe the analog line-level mixer, EDIROL M-10E, has absolutely no effect on time-domain sequence of output signals from multiple DAC units, his suggestions are acceptable for my consideration since I too always like
as-simple-as-possible experimental setup to extract what I would like observe and measure.
During this weekend Saturday, I fortunately could spare my time for such additional experiments, as follows.
(Time now in Japan is already 20:08 Sunday evening.
)
General setups for the following Day-4 experiments
Except for otherwise specified in the descriptions on the following Day-4 experiments, all the setup have been strictly the same for those I applied in
Day-1 experiment in my post #783.
The recording of the analog output sound from the DAC units was performed again in these procedures;
1. Start recording by Adobe Audition 3.0.1 on the second PC,
2. About 5 sec later, push/start "PLAYING" the DSP EKIO,
3. About 3 sec later after 2., start "PLAY" the test track by JRiver MC.
Consequently, the total length of the recorded sound is usually somewhat longer than the test track itself, but there is no problem at all since we are only focusing on "relative" time-domain discrepancy of two DAC units.
Again, for simplicity of my writing, please let me abbreviate as follows in this entire post;
OKTO as OKTO RESEARCH DAC8PRO,
KORG as KORG DS-DAC-10,
OPPO as OPPO SONICA DAC,
ONKYO as ONKYO DAC-1000(S).
Same as in my experiments in
#783, I intentionally connect the DAC units (USB 2.0 compatible) to USB 3.0 ports (ASMedia SUB 3.0 eXtensible Host Controller - 0.96 [Microsoft]), and the USB tree configuration was confirmed by
"USB Device Tree Viewer, UsbTreeView (x64)" (now v.3.8.8.0).
No other USB device was connected to USB 3.0 port; I connected my keyboard and mouse to USB 2.0 ports.
Of course, all the PC hardware/software settings/conditions remained unchanged throughout the present 4-day experimental settings.
Hereinafter uSec is "micro second", 0.001 msec.
Day-4 Experiment: Section 1/2
In his post
#788,
@mdsimon2 first kindly suggested very clever way of measuring relative time-domain discrepancy between the two DAC units without using analog audio mixer, in this way in below
Fig.19;
I believe the above
Fig.19 would be self-explanatory enough for your understanding.
First, I prepared one 2 min 53 sec stereo 44.1 kHz 16 bit track, where the L-channel plays steady gain well-QC-ed 20 Hz to 20 kHz precision sine tone Fq sweep (which I copy-pasted from
Sony Super Audio Check CD, ref.
#651), and the R-channel is complete silence all the way through during L-channel plays the Fq tone sweep. And, very importantly, I inserted the 10 kHz width 1 msec timing markers at exactly the same time position on the
top and end in L-channel and R-channel.
In the upper diagram in
Fig.19, the L-channel will be fed into CH7 of
OKTO, the R-channel will be fed into R-Ch of
KORG, then CH7 analog output of
OKTO and R-analog-out of
KORG, respectively, will be fed into L and R analog stereo line-input of the audio interface TASCAM US-1x2HR for sound recording by ADOBE Audition 3.0.1 in the second independent PC.
In this setup,
OKTO will have workload of sine sweep, but
KORG will play only silence, while the both have exactly the same timing makers on the same time position for precise measurements of relative time-domain discrepancy.
On the other hand, in lower diagram in
Fig.19, I will easily "cross" the digital outputs of DSP EKIO into two DAC Units by crossing the selection of output destination of EKIO's output panels, so that
OKTO will play only silence, and
KORG will have workload of sine sweep.
OK, now let's see the results, as follows.
I first performed the
Fig.19's upper diagram with
no group delay setting at all in EKIO's two output channels;
Here we can clearly observe that
KORG was the slow starter, and
OKTO started 2.28 msec prior to
KORG, and the 2.28 msec startup discrepancy was kept unchanged (no drift at all) throughout the playback of the track.
I repeated the above recording ten (10) times during my 10-hour Day-4 experiment, and confirmed the result remained unchanged.
The above finding encouraged me to give 2.28 msec group delay in EKIO's output channel for
OKTO expecting the
"outputs" of the two DAC units could be fully synchronized;
Yes, the
outputs of the two DAC units were fully synchronized by the 2.28 msec group delay for
OKTO; I repeated the above
synchronized recording ten (10) times during my 10-hour Day-4 experiment, and confirmed the result remained unchanged.
Then, I proceeded into the
"crossed" input setting, as shown in this
Fig. 22;
As clearly seen in the above
Fig.22, again
KORG was the slow starter, and
OKTO started 2.28 msec prior to
KORG, and the 2.28 msec startup discrepancy was kept unchanged (no drift at all) throughout the playback of the track.
When I gave 2.28 msec group delay to EKIO's output for
OKTO, the two
outputs from the DAC units were fully synchronized as shown in this
Fig.23;
I repeated the above
synchronized recording ten (10) times during my 10-hour Day-4 experiment, and confirmed the result remained unchanged.
Day-4 Experiment: Section 2/2
In his post
#788,
@mdsimon2 also kindly suggested to give
"steady gain high Fq constant tone" in one of the stereo channels, in replacement for the sine sweep, as shown in this
Fig.24;
To prepare the 33 sec test track in above
Fig.24, I copy-pasted the well QC-ed 16 kHz constant 20 sec tone signal from "
Sony Super Audio Check CD", ref.
#651.
I first performed the
Fig.24's upper diagram with
no group delay setting at all in EKIO's two output channels, and the result is shown in this
Fig.25;
Again, we can clearly observe that
KORG was the slow starter, and
OKTO started 2.28 msec prior to
KORG, and the 2.28 msec startup discrepancy was kept unchanged (no drift at all) throughout the playback of the track.
When I gave 2.28 msec group delay to EKIO's output for
OKTO, the two
outputs from the DAC units were fully synchronized as shown in this
Fig.26;
I repeated the above
synchronized recording ten (10) times during my 10-hour Day-4 experiment, and confirmed the result remained unchanged.
Then, I proceeded into the
"crossed" input setting, as shown in this
Fig. 27;
As clearly seen in the above
Fig.27, again
KORG was the slow starter, and
OKTO started 2.28 msec prior to
KORG, and the 2.28 msec startup discrepancy was kept unchanged (no drift at all) throughout the playback of the track.
When I gave 2.28 msec group delay to EKIO's output for
OKTO, the two
outputs from the DAC units were fully synchronized as shown in this
Fig.28;
I repeated the above
synchronized recording ten (10) times during my 10-hour Day-4 experiment, and confirmed the result remained unchanged.
Discussion and conclusion
The general discussion and conclusion are almost the same as I wrote in my post
#783 based on my Day-1 through Day-3 experiments thereof.
The time-domain discrepancy between the two DAC units can be attributed to the
"startup timing lag of DAC processing" between the two units, and the
"relative discrepancy" remained unchanged (did not drifted) during the whole music track as well as during the specific audio sessions.
Consequently,
I could/can temporarily synchronize (10 uSec accuracy/precision) the "outputs" of the multiple DAC units by compensating such "startup timing lag(s)" by group delay setting(s) in upstream DSP EKIO only if the "time-domain discrepancy" would remain unchanged during the specific audio sessions.
You need to note, however, that the above conclusion in my setup would possibly
not always true for
"your" DSP-based multichannel audio setup on Windows PC. In case if you would test/try the similar multiple DAC-unit setup, you need to objectively measure/confirm precisely the
"relative time-domain discrepancy" before and after your specific audio session.
(As you may agree, I essentially have no intention of "routinely" apply this approach in my multichannel audio rig.)
In my experimental setups,
the connection of multiple DAC units to PC motherboard's USB 3.0 ports with no other USB device connected to USB 3.0 would possibly be contributing to the excellent reproducibility of the
"relative startup lags", I assume.
The
"relative startup timing lags" in my experimental setup can be summarized in this
Fig.29;
As you can see in above
Fig.29, the
"relative startup lags" remained almost unchanged
at least during the 4-day experimental sessions in my audio setup; they would possibly vary, however, depending on USB ASIO settings and/or on any of other unknown factor(s) of USB-ASIO time-domain sequences.
Focusing on the specific
"startup timing lag" between
OKTO and
KORG in my setups, during my Day-1 through Day-3 experiments in
#783, I could read/measure (by measuring on expanded x-axis time scale of Adobe Audition 3.0.1) it was 2.27 msec, while in my present Day-4 experiments on this post, it was read to be 2.28 msec.
You would please note there is essentially
no significant difference at all between these 2.27 msec (2,270 uSec) and 2.28 msec (2,280 uSec), since the absolute time resolution is 22.7 uSec in the test track of 44.1 kHz PCM; the observed/read 10 uSec difference (2.27 msec
vs. 2.28 msec) is less enough than the absolute minimum time-domain digital granularity of 22.7 uSec.
To finish this rather long post, let me repeat the top message I have written;
This post is not intending to suggest/recommend you to apply or utilize the same setup and procedures in your DSP-based audio system, but I just would like to share my curiosity and experiments relating to the above titled subject for your possible reference and interest.
I would highly appreciate if I could hear your further thoughts and discussion(s).