From: Eric Broyles on
Hello,

I've built a GUI within matlab to read, parse, display imagery collected from various cameras. I have built play,rewind, controls, time overlays, etc.
I've also built a "Avi Save" function that will capture the images to an avi.
I'm doing this with the getframe,addframe functions that looks something like this:
When I use getframe on the axes handle, followed by an addframe I get the image saved to avi exactly as I want (only the contents displayed within the bounds of the axes).
frame=getframe(ax_handle);
aviobj=addframe(aviobj,frame);

However, as expected, if some other window crosses over the axes such as screen saver, the above functionallity grabs that displayed window.

In the past, I've used a straight addframe to avoid this, i.e.,
aviobj=addframe(aviobj,ax_handle);
However, in this case, the movie that is created shows the axes handle as well as all of my GUI controls outlined above (almost as if I was capturing the figure rather than the axes). Is this the expected behavior? And if it is, is there a way to circumvent this feature to be more consistent with the getframe/addframe?

Thanks,
Eric