Initially we assumed that »handling time« is largely a matter of computation. ''Time is just a value'' and can be treated with integral arithmetic, some modulus computations and pre-defined constants. This turned out to be a mistake. Anything related to time is intricate, and it is essential to distinguish different meanings of "times" - time values related to an internal computation framework have implementation-defined meaning and should be ''marked as opaque'' - temporal data can be ''mapped to a grid scale'' — an essential step for media processing, which however incurs information loss - externally relevant time specifications are represented symbolically, by translation into a ''Time Code'' Drawing from these insights, a framework for time handling has been established; building in part on the low-level function style base implementation. Exposing this base implementation as a C-library however is considered dangerous, as it may lure into ''ad hoc'' computations, which are a major source of inconsistencies and notorious defects in many media applications. |
||
|---|---|---|
| .. | ||
| common | ||
| include | ||
| lib | ||
| lumiera | ||
| plugin | ||
| stage | ||
| steam | ||
| tool | ||
| vault | ||
| .gitignore | ||
| DIR_INFO | ||
| doxygen.dox | ||
| SConscript | ||