[wdmaudiodev] Re: Windows Clock Compensation

  • From: "Matthew van Eerde" <dmarc-noreply@xxxxxxxxxxxxx> (Redacted sender "Matthew.van.Eerde" for DMARC)
  • To: "wdmaudiodev@xxxxxxxxxxxxx" <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Wed, 18 Oct 2017 18:45:56 +0000

Several things:



  1.  Often inputs and outputs are from and to the same audio peripheral, which 
uses the same clock for render and capture. So although the clock may be off 
(e.g., 47.995 kHz instead of true 48 kHz), both the input clock and the output 
clock are off in the same direction by the same amount.
  2.  In cases like video conferencing where the input and output are on 
totally different device, skew compensation is done in software. For example, 
Windows offers the IAudioClockAdjustment interface at the WASAPI layer; if a 
VOIP app (say, Skype for Business) detects that one particular participant’s 
clock is running 0.03% slow, it can direct Windows to inject a 
micro-sample-rate-converter accordingly.
  3.  And no doubt there are situations where an app that does not do skew 
compensation tries to connect two devices that run on different clocks. In 
these cases there are inevitably pops and clicks.



________________________________
From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on 
behalf of Tim Roberts <timr@xxxxxxxxx>
Sent: Wednesday, October 18, 2017 11:40:34 AM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Windows Clock Compensation

We all know that crystals are not perfect.  Even if both ends of an
audio conversation agree to a nominal 48kHz sampling rate, with a 100ppm
crystal, the actual rate might be between 47,995 and 48,005 samples per
second.  And if the input and the output are on different boards, they
might be at opposite ends of that range.  And yet, we do not hear
complaints from users of cheap commodity hardware about periodic
glitches in their video conferences.

Why is that?  Is the Audio Engine compensating for this?  Is it
monitoring average byte-per-second rates over long periods and doing
smoothly adjusting the frames?  Or is it sheer luck that we don't get
pops and clicks?

--
Tim Roberts, timr@xxxxxxxxx
Providenza & Boekelheide, Inc.

******************

WDMAUDIODEV addresses:
Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx
Subscribe:    mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe
Unsubscribe:  mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe
Moderator:    mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx

URL to WDMAUDIODEV page:
https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.wdmaudiodev.com%2F&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7Ce04d5f462bd14496954908d51657d572%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636439488899868903&sdata=j5IUCZBBNdJG3iuJWZXY9rBS8Y837Hpgk23dLudGK1Q%3D&reserved=0

Other related posts: