Putting a PowerPoint and Video together
Solution 1:
I don’t know if you can do that with the presentation itself (a Keynote document being “played”) but if you can make a movie (hint: in Keynote you can record your presentation) of the slides (so they become a Quicktime movie and not a set of slideshows), you can later use any movie edition software (not iMovie) to create the desired effect.
An expensive but very powerful one is BoinxTV. It’s really powerful and easy to use, but doesn’t support using a keynote as a source, only different types of images, sound and video.
Of course Final Cut (pro and express) would be able to do that too.
As good as these solutions may seem, they are not real time, in a sense where you can be giving the presentation while you receive a live video feed of you being recorded and dynamically decide to “zoom” into the slide. That is much more complex.
Now if you can edit and post-produce the slides and you giving the presentation, those tools will probably suite you.
Solution 2:
You have several possibilities.
The easiest for you would be probably be using Screenflow. It allows you to record what happens on the screen (the presentation) AND the camera input. It also allows you to do some simple post-production, like focusing on the screen or on the camera.