diff options
author | Piotr Krysik <ptrkrysik@gmail.com> | 2017-09-27 21:59:19 +0200 |
---|---|---|
committer | Piotr Krysik <ptrkrysik@gmail.com> | 2017-09-27 21:59:19 +0200 |
commit | eb62dc173536a392b2279d572486956c90d75c99 (patch) | |
tree | c105ebc250e3554a3cd47a8cf215c16592b9a8fa /python/misc_utils/fn_time.py | |
parent | d3c95c9190fad124f2e1e934303cc43c1218d177 (diff) |
Changes in fn_time
Diffstat (limited to 'python/misc_utils/fn_time.py')
-rw-r--r-- | python/misc_utils/fn_time.py | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/python/misc_utils/fn_time.py b/python/misc_utils/fn_time.py index 71e93db..f15743e 100644 --- a/python/misc_utils/fn_time.py +++ b/python/misc_utils/fn_time.py @@ -44,7 +44,14 @@ def fnmod_delta(fn1, fn2): delta = delta + __hyper_frame return delta - + +def fn_time_diff_delta(fn_x, fn_ref, time_diff_hint=0): + frames_diff = int(round(time_diff_hint/__frame_period)) + fn_ref_hint = (fn_ref + frames_diff) + fn_delta = fnmod_delta(fn_x,fn_ref_hint)+frames_diff + + return fn_delta + #fn_time_delta computes difference between reference frame number and a second frame number. It also computes timestamp of the second frame number. The full list of parameters is following: #* fn_ref - reference frame number modulo __hyper_frame #* time_ref - precise timestamp of the first sample in the frame fn_ref @@ -59,13 +66,11 @@ def fn_time_delta(fn_ref, time_ref, fn_x, time_hint=None, ts_num=None): if ts_num is None: ts_num = 0 - time_diff = time_hint-time_ref - frames_diff = int(round(time_diff/__frame_period)) - fn_ref = (fn_ref + frames_diff) - fn_delta = fnmod_delta(fn_x,fn_ref)+frames_diff - time2_precise = fn_delta*__frame_period+time_ref+ts_num*__ts_period + time_diff_hint = time_hint-time_ref + fn_delta = fn_time_diff_delta(fn_x,fn_ref, time_diff_hint) + time_x_precise = fn_delta*__frame_period+time_ref+ts_num*__ts_period - return fn_delta, time2_precise + return fn_delta, time_x_precise if __name__ == "__main__": @@ -77,8 +82,8 @@ if __name__ == "__main__": time2_err = time2+error fn_delta, time2_precise = fn_time_delta(fn1, time1, fn2, time2_err) if fn_delta != fn2-fn1: - print "dupa:", fn2, error#, 'fn_delta:'+str(fn_delta), time2, error, frames_diff_h4, (time2-time1)/(__hyper_frame*__frame_period), time_diff_h4_prev, time_diff - time_diff = time2 - time2_precise - if time_diff > 0.1: + print "dupa:", fn2, error#, 'fn_delta:'+str(fn_delta), time2, error, frames_diff_h4, (time2-time1)/(__hyper_frame*__frame_period), time_diff_hint_h4_prev, time_diff_hint + time_diff_hint = time2 - time2_precise + if time_diff_hint > 0.1: print "dupa" |