Zoom Filter for VirtualDub

This filter provides a configurable perspective zoom that supports the resizing modes of VirtualDub's internal resize engine. The size of the output window can be arbitrarily specified. The focus point in the source frame can be specified. Zoom in and zoom out are supported. The starting and ending frame numbers for the zoom can be specified. When the source frame is zoomed out to a size smaller than the output frame, the resulting border is filled with a specified color. Interlaced source is supported. The filter provides two independently configurable zoom phases to allow, for example, a zoom in followed by a zoom out. Finally, filter preview and scripting are supported.

This filter is co-authored by Donald Graft and Avery Lee.

The Configuration Options

Output width and Output height  These edit boxes specify the size of the output frame.

Focus X and Focus Y  These edit boxes specify a point in the source frame that will be maintained in the center of the output frame. This allows you to create a zoom focused on any point in the source frame. Note that with some zoom settings, a focus set away from the center may result in the filter attempting to display an area outside the source frame. In such a case the filter will fill that area with a smeared copy of the nearest valid pixels.

Start percent and End percent  These edit boxes specify the beginning and ending zoom factors. The Phase 1 controls define the behavior of the first zooming phase and the Phase 2 controls define the behavior of the second zooming phase. To disable the second phase, enter the value 0 for the start percent. If the start percent is less than the end percent, that is a zoom in. If the start percent is greater than the end percent, that is a zoom out. If they are the same, why are you bothering with this filter? :-)

Start frame and End frame  These edit boxes specify the range of frames over which the zoom effect will occur. The Phase 1 controls define the behavior of the first zooming phase and the Phase 2 controls define the behavior of the second zooming phase. For frames prior to the phase 1 start frame, the specified phase 1 start percent is used. For frames after the phase 1 end frame but before the specified phase 2 start frame, the specified phase 1 end percent is used. For frames after the phase 2 end frame, the specified phase 2 end percent is used. For frames between the start and end frames (inclusive), a perspective zoom is implemented.

Fill red, Fill green, and Fill blue  These edit boxes specify the fill color to be used when the source frame is zoomed down to a size smaller than that of the output frame.

Interlaced  Check this option if your source is interlaced.

Filter mode  This drop-down list selects the resampling method.

Thanks and Credits

The original internal resampling engine which Zoom calls was created by Avery Lee, the author of VirtualDub. The performance and speed of his resampling engine are truly awesome.

Version 1.2 [Source code]

This version adds a second configurable zoom phase and corrects a bug in the scripting support.

Version 1.1 corrected a bug in interlaced mode support.

Version 1.0 was the first released version.

[up to home page]