0

I am using "Push Source Desktop" filter for capturing screen in my application. I hide my application while recording is going on. Only a button for stopping the recording is visible on screen. The button also gets recorded by the filter. During playback of the saved recording the button is visible along with rest of the screen region.

Is there any way I can prevent the button from getting recorded ?

My aim is to record the screen without the button. I cannot hide the button as it required for stopping the recording of my application. I have tried to alter the alpha component of my button and make it semi-transparent. But still the filter captures the semi-transparent button.

How can I get the background region of the button and ignore the capturing of the button itself?

Roman R.
  • 68,205
  • 6
  • 94
  • 158
sunil_rbc
  • 772
  • 1
  • 8
  • 13

1 Answers1

0

The problem has actually nothing to do with DirectShow. Long story short, DirectShow starts when you send the image you already have using DirectShow API and form factor of your software item.

Your question is how to display something on the desktop and grab from the same desktop excluding the part you present to user. I don't think you can implement it accurately without going in too many details, but quite so often you can do a trick like this: you know the position of your UI element so you can identify what's below it in terms of window Z-order (another application window or desktop etc). You can ask this window to repaint into your DC, and then combine the parts into the video you send downstream as a DirectShow source.

Roman R.
  • 68,205
  • 6
  • 94
  • 158