Push versus Pull

The role of a source filter is to introduce data into the graph. It can follow one of two models, the push model or the pull model:

  • In the push model, the source filter creates samples on its own thread and delivers them to the downstream filter. The downstream filter processes the samples and delivers them to the next filter. Each filter repeats these steps, until the samples reach the renderer.
  • In the pull model, the filter that is immediately downstream from the source filter requests data from the source filter. The downstream filter delivers the samples to the next filter, as in the push model.

The push model is typical of live sources, such as video cameras. The pull model is typical of file readers, where the downstream filter is a file parser, such as the AVI splitter filter.

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.