<!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;}</style>
</head>
<body>
<p>Hi Tristan,</p>
<p>On 2017-02-07 16:00, Tristan Matthews wrote:</p>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;color:#500050">
<pre><code> On Tue, Feb 7, 2017 at 1:15 PM, Filip Roséen <filip@atch.se> wrote:</code></pre>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;color:#500050">
<pre><code> +static mtime_t NormalizeTS( mtime_t *base, AVStream* p_stream, mtime_t
 timestamp )
 +{
 +    if( *base == VLC_TS_INVALID )
 +        *base = timestamp;
 +
 +    return ( timestamp - *base ) * p_stream->time_base.den /
 +           CLOCK_FREQ / p_stream->time_base.num;</code></pre>
</blockquote>
<pre><code> If you can avoid integer overflow, you may want to do a multiplication
 instead of a second division here:
 ( timestamp - *base ) * p_stream->time_base.den / (CLOCK_FREQ *
 p_stream->time_base.num);</code></pre>
</blockquote>
<p>I simply used the same expression as was present in the <em>translation-unit</em> prior to the proposed changes.</p>
<p>If the solution presented (as a whole) is accepted into the codebase I will keep your suggestion in mind, and polish it further!</p>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;color:#500050">
<pre><code> Disclaimer: have not tested or profiled this (hence the "may").</code></pre>
</blockquote>
<p>Thank you,<br />
Filip Roséen</p>
</body>
</html>