<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta http-equiv="Content-Style-Type" content="text/css" />
  <meta name="generator" content="pandoc" />
  <title></title>
  <style type="text/css">
      code{white-space: pre-wrap;}
      span.smallcaps{font-variant: small-caps;}
      span.underline{text-decoration: underline;}
      div.column{display: inline-block; vertical-align: top; width: 50%;}
  </style>
</head>
<body>
<p>Hi again,</p>
<p>I just now realized that the below commit message somewhat misleadingly uses the term <em>“decoder”</em> in the below quoted section.</p>
<p>On 2018-07-16 05:19, Filip Roséen wrote:</p>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;color:#500050">
<pre><code> This works fine in cases where the PCR is updated often enough to
 almost match the track's frames, but in cases where another track is
 preventing the PCR from updating frequently enough (video track with
 long blocks of many matroska-frames), the PCR would be too far in the
 past to base the outgoing block's DTS on. As a result, the decoder
 would think the outgoing blocks were coming in too early and employ
 counter meassures to prevent unwanted drift.</code></pre>
</blockquote>
<p>It is between the actual <em>decoder</em> and the destined <em>audio output</em> this drift prevention is taking place, more specifically in <code>aout_DecSynchronize</code> invoked from <code>aout_Play</code>.</p>
<p>Attached to this message is an updated commit that instead uses <em>"the core</em>" to more accurately describe where this drift prevention is taking place, without going into extensive detail.</p>
<p>Sorry for the inconvience.</p>
<p>Best Regards,<br />
Filip</p>
</body>
</html>