Mercurial > libavformat.hg
changeset 4651:2f6e99161450 libavformat
Reorder operations, 20% improved performance, 1 variable less.
author | michael |
---|---|
date | Thu, 05 Mar 2009 23:57:42 +0000 |
parents | 5090afc3cd19 |
children | 28b80bbf6288 |
files | timefilter.c |
diffstat | 1 files changed, 4 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/timefilter.c Thu Mar 05 23:45:18 2009 +0000 +++ b/timefilter.c Thu Mar 05 23:57:42 2009 +0000 @@ -29,7 +29,6 @@ /// Delay Locked Loop data. These variables refer to mathematical /// concepts described in: http://www.kokkinizita.net/papers/usingdll.pdf double cycle_time; - double next_cycle_time; double feedback2_factor; double feedback3_factor; double integrator2_state; @@ -59,14 +58,14 @@ if (!self->cycle_time) { /// init loop self->cycle_time = system_time; - self->next_cycle_time = self->cycle_time + self->integrator2_state; } else { + double loop_error; + self->cycle_time+= self->integrator2_state; /// calculate loop error - double loop_error = system_time - self->next_cycle_time; + loop_error = system_time - self->cycle_time; /// update loop - self->cycle_time = self->next_cycle_time; - self->next_cycle_time += self->feedback2_factor * loop_error + self->integrator2_state; + self->cycle_time += self->feedback2_factor * loop_error; self->integrator2_state += self->feedback3_factor * loop_error; } }