Метод IDXGIOutputDuplication::ReleaseFrame (dxgi1_2.h)
Указывает, что приложение завершило обработку кадра.
Синтаксис
HRESULT ReleaseFrame();
Возвращаемое значение
ReleaseFrame возвращает:
- S_OK, если она успешно завершена.
- DXGI_ERROR_INVALID_CALL, если приложение уже выпустило кадр.
- DXGI_ERROR_ACCESS_LOST, если интерфейс дублирования рабочего стола недопустим. Интерфейс дублирования рабочего стола обычно становится недопустимым при отображении на рабочем столе другого типа изображения. Примеры такой ситуации:
- Переключатель рабочего стола
- Изменение режима
- Включение, отключение DWM или другое полноэкранное приложение
- Возможно, другие коды ошибок, описанные в разделе DXGI_ERROR .
Комментарии
Приложение должно освободить кадр перед получением следующего кадра. После освобождения кадра поверхность, содержащая растровое изображение рабочего стола, становится недопустимой; Вы не сможете использовать поверхность в графической операции DirectX.
Из соображений производительности рекомендуется освободить кадр непосредственно перед вызовом метода IDXGIOutputDuplication::AcquireNextFrame для получения следующего кадра. Если клиент не владеет кадром, операционная система копирует все обновления рабочего стола на поверхность. Это может привести к впустую циклов GPU, если операционная система обновляет одну и ту же область для каждого кадра, который происходит. Когда клиент получает кадр, клиент знает только об окончательном обновлении в этом регионе; Поэтому все перекрывающиеся обновления во время предыдущих кадров будут потрачены впустую. Когда клиент получает кадр, клиент владеет поверхностью; Таким образом, операционная система может отслеживать только обновленные регионы и не может копировать обновления рабочего стола на поверхность. Из-за этого рекомендуется свести к минимуму время между вызовом освобождения текущего кадра и вызовом для получения следующего кадра.
Требования
Минимальная версия клиента | Windows 8 [только классические приложения] |
Минимальная версия сервера | Windows Server 2012 [только классические приложения] |
Целевая платформа | Windows |
Header | dxgi1_2.h |
Библиотека | Dxgi.lib |