Pre-roll and post-roll

These words are familiar to folks working on sound or video editing. On a tape recorder in pause-recording mode, the pre-roll is the delay between the moment the pause button is released and the moment the recording actually starts. Similarly, the post-roll is the delay between the time the pause button is pushed and the one it actually stops recording. With automatic editing devices such as VideoDirector, these mechanical parameters may be entered in the program's settings so that the program compensates them and achieves accurate timings.


In BP2, the pre-roll of a sound-object is the delay between its first event (Csound event or MIDI message) and the beginning of its time-span interval. The first event is the one that tells the sound processor to start , whereas the beginning of the time-span interval is the moment when the listener feels it actually started .

A positive pre-roll allows some events to fall before the on-setting time of the sound-object. This is useful when the sound-object contains an initialisation sequence that should not be accounted in its time-span interval.

Fig.7 shows a sound-object labelled 'un' with 482ms of fixed pre-roll.

Fig.7 A sound-object with positive pre-roll
On the graphic (right part of Fig.7), events are shown as short vertical lines. Four events are located outside to the left of the time-span interval.


In BP2, the post-roll is the delay between the last MIDI message of a sound-object and the end of its time-span interval.

A negative post-roll allows some events to fall beyond the off-setting time of a sound-object. This may be useful if the sound-object contains a final sequence of events that should not be part of its time-span interval.

A positive post-roll is the proper way of compensating a mechanical delay in setting-off the sound device. If for instance the event sequence in the sound-object ends with a NoteOff and the device takes 50ms to react, then setting the post-roll to 50ms will append a 50ms silence after the sound-object to allow the device to finish its job. This is generally combined with a positive pre-roll compensating on-setting delays.

An important formula

Sound-object duration
= date of last event - date of first event - pre-roll + post-roll