aeidon.Calculator

Source: aeidon/calculator.py

Anchestors: builtins.object

class aeidon.Calculator

Time and frame calculator.

Times are handled as strings, frames as integers and seconds as floats. Only one instance of Calculator exists for a given framerate.

Methods

Calculator.__init__(framerate=None)

Initialize a Calculator instance.

framerate can be either an aeidon.framerates item (preferred to be able to reuse instances) or an exact float value.

Calculator.add(x, y)

Add position y to x.

Calculator.frame_to_seconds(frame)

Convert frame to seconds.

Calculator.frame_to_time(frame)

Convert frame to time.

Calculator.get_middle(x, y)

Return time, frame or seconds halfway between x and y.

Calculator.is_earlier(x, y)

Return True if x is earlier than y.

Calculator.is_later(x, y)

Return True if x is later than y.

Calculator.is_valid_time(time)

Return True if time is a valid time string.

Calculator.normalize_time(time)

Convert time to valid format.

>>> calc = aeidon.Calculator()
>>> calc.normalize_time("1:2:3,4")
'01:02:03.400'
Calculator.round(pos, ndigits)

Round pos to given precision in decimal digits.

ndigits may be negative. For frames zero will be used if given ndigits is greater than zero.

Calculator.seconds_to_frame(seconds)

Convert seconds to frame.

Calculator.seconds_to_time(seconds)

Convert seconds to time.

Calculator.time_to_frame(time)

Convert time to frame.

Calculator.time_to_seconds(time)

Convert time to seconds.

Calculator.to_frame(pos)

Convert pos to frame.

Calculator.to_seconds(pos)

Convert pos to seconds.

Calculator.to_time(pos)

Convert pos to time.