- Test:
- verify handling of grid aligned timecode values.
- full cycle from parsing to formatting
- mutating the components of timecode
- some formatting corner cases
- formatting in various formats
Definition at line 67 of file time-formats-test.cpp.
| void checkTimecodeUsageCycle |
( |
| ) |
|
|
inlineprivate |
- Test:
- demonstrate a full usage cycle of timecode and time values. Starting with a textual representation according to a specific timecode format, and based on the knowledge of the implicit underlying time grid (coordinate system, here with origin=0 and framerate=25fps), this timecode string may be parsed. This brings us (back) to the very origin, which is a raw TimeValue (internal time). Now, this time value might be manipulated, compared to other values etc. Anyway, at some point these time values need to be related to some time scale again, leading to quantised time values, which — finally — can be cast into a timecode format for external representation again, thus closing the circle.
Definition at line 96 of file time-formats-test.cpp.
References QuTime::accept(), Mutation::changeTime(), QuTime::formatAs(), Mutation::nudge(), Frames::parse(), Quantiser::retrieve(), and TimeFormats_test::showTimeCode().
Referenced by TimeFormats_test::run().
- Test:
- detailed coverage of SMPTE timecode representation. Using a scale grid with PAL framerate; this test doesn't cover the handling of drop-frame timecode.
- creating a timecode representation causes frame quantisation
- the components of SMPTE timecode can be accessed and manipulated
- timecode can be incremented/decremented as a whole
- we allow extension of the scale towards negative values
- for these, the representation is flipped and the negative orientation only indicated through the sign field.
Definition at line 175 of file time-formats-test.cpp.
References TCode::describe(), SmpteTC::frames, TCode::getTime(), SmpteTC::hours, SmpteTC::invertOrientation(), SmpteTC::mins, SmpteTC::rebuild(), SmpteTC::secs, Digxel< NUM, FMT >::setValueRaw(), SmpteTC::sgn, and TimeFormats_test::showTimeCode().
Referenced by TimeFormats_test::run().