The function _timeline generates the multidimensional array that contains all the information about a show. Therefore, this function acts somehow as the core of the whole magic. It's called with the following code:
void function _timeline()
Subsequently, this function triggers the matching algorithms which are explained on the following pages:
void _interpolate_acts($_actual_time);
int (0...100) _choose_antagonist_protagonist(&$_actual_time,&$_actual_channel,&$_neighbour,$_master_channel);
int (0...100) _timeline_protagonist_antagonist($_fields, $_current_antagonist_protagonist);
int (0...100) _timelinescores_style($_fields, &$_neighbour, &$_actual_time);
int (0...100) _timelinescores_acts($_fields,&$_actual_time,&$_neighbour);
int (0...100) _timelinescores_microrules($_fields,&$_neighbour);
int (0...100) _timelinescores_channel($_fields,&$_actual_channel,&$_actual_time,&$_main_channel);
int (id) _timelinescore_bestmatch($_score);
int (duration) _timeline_punchholes(&$_timeline);
Timelines are a two dimensional construct, representing all informations about a show. They can be compared with a timeline view of a editing software like final cut. With the difference, that there are various medias stored on a timeline, not only video.
Timeline Structure
The channels are somewhat hierarchically organized. There's always one main channel containing the target material of the story. The others are aligned to the decision on the main timeline, but not necessarily. If the timely distance between a decision on the main channel and a side channel is too big, they remain not aligned.
The filename, the in/out-Point and the ∆t value are stored. Latter means a value, how much the materials differ. This value can be used by the playback clients to handle transitions between materials differently, e.g. fading in and out instead of cutting hard.
This example shows, that the calculation of the timeline has to take place in two dimension:
- a comparison horizontally between neigbours and general tendencies derived from the act database
- vertically between the channel and the master channel
Parameters
On the subsequent pages, the core functions are introduced. The table above shows, which values are used by the respective functions to calculate the timeline.
Downloads:

