Merge ff_timefilter_read() and ff_timefilter_update(), this simplifies API and
avoids calling them in the wrong order. Originally committed as revision 17841 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
08ffd3708b
commit
55b5859867
@ -53,7 +53,7 @@ void ff_timefilter_reset(TimeFilter *self)
|
|||||||
self->cycle_time = 0;
|
self->cycle_time = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ff_timefilter_update(TimeFilter *self, double system_time, double period)
|
double ff_timefilter_update(TimeFilter *self, double system_time, double period)
|
||||||
{
|
{
|
||||||
if (!self->cycle_time) {
|
if (!self->cycle_time) {
|
||||||
/// init loop
|
/// init loop
|
||||||
@ -68,9 +68,5 @@ void ff_timefilter_update(TimeFilter *self, double system_time, double period)
|
|||||||
self->cycle_time += self->feedback2_factor * loop_error;
|
self->cycle_time += self->feedback2_factor * loop_error;
|
||||||
self->integrator2_state += self->feedback3_factor * loop_error / period;
|
self->integrator2_state += self->feedback3_factor * loop_error / period;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
double ff_timefilter_read(TimeFilter *self)
|
|
||||||
{
|
|
||||||
return self->cycle_time;
|
return self->cycle_time;
|
||||||
}
|
}
|
||||||
|
@ -68,22 +68,10 @@ TimeFilter * ff_timefilter_new(double feedback2_factor, double feedback3_factor)
|
|||||||
* at (or as close as possible to) the moment the device hardware interrupt
|
* at (or as close as possible to) the moment the device hardware interrupt
|
||||||
* occured (or any other event the device clock raises at the beginning of a
|
* occured (or any other event the device clock raises at the beginning of a
|
||||||
* cycle).
|
* cycle).
|
||||||
|
*
|
||||||
|
* @return the filtered time, in seconds
|
||||||
*/
|
*/
|
||||||
void ff_timefilter_update(TimeFilter *self, double system_time, double period);
|
double ff_timefilter_update(TimeFilter *self, double system_time, double period);
|
||||||
|
|
||||||
/**
|
|
||||||
* Retrieve the filtered time
|
|
||||||
*
|
|
||||||
* The returned value represents the filtered time, in seconds, of the
|
|
||||||
* beginning of the current cycle as updated by the last call to
|
|
||||||
* ff_timefilter_update()
|
|
||||||
*
|
|
||||||
* This is the value that should be used for timestamping.
|
|
||||||
*
|
|
||||||
* Warning: you must call ff_timefilter_update() before this, otherwise the
|
|
||||||
* result is undetermined.
|
|
||||||
*/
|
|
||||||
double ff_timefilter_read(TimeFilter *);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reset the filter
|
* Reset the filter
|
||||||
|
Loading…
x
Reference in New Issue
Block a user