Bump autos

Bump autos are a kind of floating point keyframe that differs from the rest of the floating autos, like smooth and linear, in that they have two values:

        a left edge and a right edge value.

The presence of a bump creates boundaries to regions on the timeline. The region begins at that bump, and extends to the next bump auto. If the bump span toggle is set, then adjusting the left/right edge value will raise or lower all of the auto values in the bump region. For example, if you put a speed bump in at 1.0 secs and another at 2.0 secs on the timeline, and adjust the right edge of the first auto to speed 3.0, then the first region of playback (between 0.0 and 1.0 secs) will play at normal speed, the next region (between the speed bumps) will play at 3x, and the last region (after the 2.0, which moved to 1.333 after speed up) will play at normal speed (figure 8.6).

Figure 8.6: range from left keyframe to right keyframe
Image bump-autos-04

Adjusting the bump edge values when span is on modifies all of the keyframes between edges of bumps, or to the beginning or end of media if there are no bumps to end the bump region. Turn span off if you only want to change the edge value without modifying the region values.

Technical Insight:

The bump is a kind of FloatAuto, an element in an automation list that is one of the 12 automation types of keyframe lists:

        mute, cam_x,y,z, proj_x,y,z fade, pan, mode, mask, speed

which are part of the Track. A FloatAuto is one of 4 auto value types that are stored in the auto at the keyframe position: float, mask, int, pan.

A FloatAuto stores a floating value for the automation at a position on the track. When a FloatAuto get_value is invoked at a track position, the position is used to access a previous and next auto list element values based on the current position. The returned value is generated using one of 5 modes of curve interpolation: smooth, linear, tangent, disjoint, bump.

When a FloatAuto is created, it gets a list default value. This varies by auto type speed=0, fade=100, ..., and at position 0, but this is almost always immediately changed to a value specified for the current position, a value/mode you specify in the sliders and drag values of the GUI updates.

The best way to create bump keyframes is highlight a region and then:

Keyframes Create curve type bump

Keyframes Create keyframes speed (or other)

Figure 8.7: Bump autos creation
Image bump-autos-01

However, you can also create them by clicking or double-clicking on the curve, then:

RMB bump

RMB speed (or other)

Make sure that the keyframes at the edges are bump type, span is active and that the left edge is set to the right (if we want to change the next interval). Changing the Left/Right Edge and Span options will involve all the autos of the curve. Actually the changes concern the whole curve, not the individual keyframes.

Warning: bump autos works only via slider. Dragging the keyframe with the mouse makes you lose the right/left edge and span settings and behave as normal autos (figure 8.8).

Figure 8.8: Speed autos slider
Image bump-autos-02

With using the sliders on a track, the keyframes ganged track are changed if the positions match; tracks can be excluded by switching the track gang mode off. Another way to edit all armed tracks of all types at the same time is as follows:

In the Camera and Projector tools configuration window you will find the Bump curve, Span and Rigth/Left Edge buttons. The Camera-XYZ and Projector-XYZ curves can also create and use Bump autos. (see Camera and Projector Menu)


do not confuse the autos bump span button with the keyframes span button of the plugins (on MenuBar); they are different and work differently (see Allow Keyframe Spanning). With the plugin keyframes, the update is done by first creating a textual diff on the xml values of the plugin keyframes, then applying that diff to all of the keyframes selected in the span range. The bump FloatAuto bump_update subtracts the old and new values to create a diff that is added to all of the values in the [right_edge ... auto values ... left_edge] region created by bump autos and media endpts.

The CINELERRA-GG Community, 2021