Zongzi.Score.Tempo (zongzi v0.3.0)

Copy Markdown

Entry point for duration utilities.

Summary

Types

Physical time in seconds.

A tempo segment starting at a given tick.

Types

physical_time()

@type physical_time() :: float()

Physical time in seconds.

tempo_event()

A tempo segment starting at a given tick.

tempo_events()

@type tempo_events() ::
  [tempo_event()] | {[tempo_event()], last :: Zongzi.Score.Tick.t()}

Functions

build_segment_from_event(module, start_tick, end_tick, payload)

@spec build_segment_from_event(
  module(),
  Zongzi.Score.Tick.t(),
  Zongzi.Score.Tick.t(),
  any()
) ::
  {:ok, Zongzi.Score.Tempo.Segment.segment()} | {:error, term()}

duration_sec(segment, tpqn)

sec_to_tick(segment, sec, tpqn)

tick_to_sec(segment, tick, tpqn)