2016-09-07 55 views
0

我正在使用「Push Source Desktop」過濾器來捕獲我的應用程序中的屏幕。 在錄製過程中我隱藏了我的應用程序。屏幕上僅顯示一個用於停止錄製的按鈕。 該按鈕也被過濾器記錄下來。在播放保存的錄像時,該按鈕與屏幕區域的其餘部分一起可見。如何忽略使用DirectShow API捕獲按鈕/區域?

有沒有什麼辦法可以防止按鈕被錄製?

我的目的是記錄沒有按鈕的屏幕。我無法隱藏按鈕,因爲它需要停止記錄我的應用程序。 我試圖改變我的按鈕的alpha組件,並使其半透明。但是過濾器仍然捕獲半透明按鈕。

如何獲取按鈕的背景區域並忽略按鈕本身的捕獲?

回答

0

這個問題實際上與DirectShow無關。長話短說,DirectShow在您發送已使用DirectShow API的圖像和軟件項目的形狀因子時開始。

你的問題是如何在桌面上顯示某些東西,並從相同的桌面上抓取,除了你呈現給用戶的部分。我不認爲你可以在沒有太多細節的情況下準確地實現它,但很多時候你可以這樣做:你知道你的UI元素的位置,這樣你就可以根據窗口Z-訂單(另一個應用程序窗口或桌面等)。您可以要求此窗口重新繪製到您的DC中,然後將這些部分合併到您作爲DirectShow源發送到下游的視頻中。