As promised on my post about transitions, here is how effects work. Effects are very similar to transitions, except that instead of having two inputs they just have one input. They take the video frames in, apply whatever effect they’re implementing on the frames and then send them to the output.

For the following diagram I created a timeline in which I dragged a single clip down and added an effect to it. For brevity I’ve removed the rest of the graph, but it just contains the source filter, video decoder, and frame rate converter that I described before. Here’s the part that deals with the effect.

 

As you can see, the video frames come in to Input 3 and they’re then sent to Output 1 which sends them to the effect code. The effect does its magic stuff on the frames and sends the results to Input 4 of the switch. These frames are then delivered to Output 0 as the output of the timeline and lo and behold you now have a video playing with an effect dynamically laid on top of it.