Limitations of VirtualDub external video filters

  • All intermediate frames must be in RGB32.
    This means that filters which work in alien formats, such as YUV, must contain private code for conversion to and from RGB.

  • Future frames cannot be accessed.
    Because VirtualDub requires one frame out per each frame input, filters which would require frames ahead of the one currently being processed, such as those with bidirectional prediction, cannot properly run. Delay tricks will work, but will skew the video stream from the audio.

  • Frame count cannot change.
    Again, because of the one-out-per-one-in limitation, it is also not currently possible to create filters that alter the frame count by adding or dropping frames. This precludes making interpolation filters, such as slow-motion, and decimation filters, like telecine removers. Such filters require source-code modification to VirtualDub itself.