Zongzi. Score. Tempo
(zongzi v0.3.0)
Copy Markdown
Entry point for duration utilities.
Summary
Types
@type physical_time() :: float()
Physical time in seconds.
@type tempo_event() :: {Zongzi.Score.Tick.numeric_tick(), Zongzi.Score.Tempo.Event.t()}
A tempo segment starting at a given tick.
@type tempo_events() :: [tempo_event()] | {[tempo_event()], last :: Zongzi.Score.Tick.t()}
Functions
@spec build_segment_from_event( module(), Zongzi.Score.Tick.t(), Zongzi.Score.Tick.t(), any() ) :: {:ok, Zongzi.Score.Tempo.Segment.segment()} | {:error, term()}
@spec duration_sec(Zongzi.Score.Tempo.Segment.segment(), pos_integer()) :: Zongzi.Score.Tempo.Segment.duration()
@spec sec_to_tick( Zongzi.Score.Tempo.Segment.segment(), physical_time(), pos_integer() ) :: Zongzi.Score.Tempo.Segment.duration()
@spec tick_to_sec( Zongzi.Score.Tempo.Segment.segment(), Zongzi.Score.Tick.t(), pos_integer() ) :: Zongzi.Score.Tempo.Segment.duration()