window顯示驅動開發—為頭裝載和專用監視器生成自定義合成器應用(二)

顯示相關的 API 的比較

API用途和目標受眾
DisplayInformation用于檢索 CoreWindow 的呈現和布局屬性。
HdmiDisplayInformation用于枚舉和設置受限模式集的僅限 Xbox 的 API。 高度專用于 Xbox 媒體應用方案。
DisplayMonitor用于查詢物理監視器設備的屬性。 不公開有關操作系統配置或當前使用監視器的方式的任何運行時信息。
EnumDisplayDevices、?EnumDisplayMonitors、?EnumDisplaySettingsEx用于查詢 HMONITOR、GDI 設備和物理監視器映射的舊 Win32 API。 此處返回的信息經過高度虛擬化和維護,以實現應用程序兼容性。
Direct3D用于將像素內容呈現到 GPU 圖面,并在 GPU 上執行計算。
DXGI?交換鏈用于窗口化和無邊框的全屏演示文稿。 應用交換鏈內容流經系統合成器 DWM。
DXGI?輸出枚舉提供 HMONITOR 周圍的 DXGI 包裝器。
QueryDisplayConfig、SetDisplayConfig、DisplayConfigGetDeviceInfo、DisplayConfigSetDeviceInfo用于配置顯示拓撲的 Win32 API。 不提供枚舉多個模式的機制,但提供了有關當前配置和設置的豐富信息集。 但是,并非所有較新的模式屬性都由這些 API 公開。
Windows.Devices.Display.Core?(本文檔)用于枚舉目標、枚舉模式、配置模式、分配用于演示的 GPU 圖面以及顯示要顯示的內容。

顯示配置概述

物理硬件枚舉
Windows.Devices.Display.Core API 具有各種對象來表示物理硬件對象。 DisplayAdapter 通常是物理硬件設備,例如 PCI Express 連接的 GPU 或 CPU 上的集成 GPU。 DisplayTarget 對象表示可從 GPU 連接到的物理連接器(例如 HDMI、VGA、DisplayPort 等)。 這可能包括具有內部監視器(筆記本電腦、平板電腦等)的設備的內部非用戶可見連接。 軟件中可能 有更多的 DisplayTarget 對象,而用戶一次可以物理連接。 例如,由于 DisplayPort 連接標準允許菊花鏈接,因此 GPU 驅動程序通常會為每個物理端口枚舉多個 DisplayPort 目標,以便考慮鏈接的監視器。

用于設置模式的對象

對于枚舉 DisplayTarget 對象、設置和查詢模式等,使用 DisplayPath 對象表示與 DisplayTarget 對象的連接。 顯示相同內容(克隆組)的路徑組由 DisplayView 表示,這些路徑聚合為 DisplayState。 因此,一個 DisplayState 對象可以表示一組完整的模式狀態,這些狀態可以發送到多個監視器的驅動程序。

已知限制

Windows.Devices.Display.Core API 有幾個已知限制(從 Windows 10 版本 2004 起):

  • 目前無法解決間接顯示驅動程序(例如 Miracast、USB 顯示器適配器、軟件驅動程序)。 傳遞間接顯示適配器時,DisplayManager.CreateDisplayDevice 將失敗。

示例代碼

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/922216.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/922216.shtml
英文地址,請注明出處:http://en.pswp.cn/news/922216.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux 高性能 I/O 事件通知機制的核心系統調用—— `epoll_ctl`

epoll 是 Linux 上處理大量文件描述符 I/O 事件的高效模型,而 epoll_ctl 則是你用來指揮 epoll 實例(epoll instance)的“遙控器”,負責向它添加、修改或刪除需要監視的文件描述符(FD)及其感興趣的事件。1.…

mysql 必須在逗號分隔字符串和JSON字段之間二選一,怎么選

如果必須在逗號分隔字符串和JSON字段之間二選一,那么 JSON字段是明顯更好的選擇。以下是詳細的對比分析:對比結論(直接看這里)方面JSON字段逗號分隔字符串勝出方查詢能力? 豐富的JSON函數支持? 只能使用LIKE模糊查詢JSON數據驗證…

DPI和DIP的區別

DPI 和 DIP 是兩個在計算機圖形和移動開發領域常見的術語,它們都與屏幕顯示和尺寸有關,但含義和用途不同。 DPI (Dots Per Inch) 定義:DPI 的全稱是 Dots Per Inch,即每英寸點數。它是一個衡量物理密度的單位,表示在…

數據幫助我們理解未知世界

主持人 尼古拉安根: 大家好,我是挪威南方財富基金首席執行官尼古拉安根。今天非常榮幸能與大衛斯皮格爾哈爾特爵士對話。坦率地說,他不僅是世界上最優秀的統計學家之一,也是我見過的最佳風險溝通者。他撰寫了大量優秀著作&#xf…

在使用git的很多操作是保持工作區干凈

這是一條鐵律下面是錯誤操作:自己明明寫完了代碼,想要提交。此時你的工作區長這樣你的提交順序是:git pull -> git commit -> git push但是現實往往不這樣,萬一拉下來的代碼和你當前工作區的代碼有沖突,你必須要…

通過語法推導樹快速求短語,簡單短語和句柄

第一步:寫出規范推導(最右)序列 規范推導就是最右推導。我們的目標是從起始符號 E 出發,通過每步替換最右邊的非終結符,最終得到句型 R(Pi)。 文法 G[E]: E :: RP | PP :: (E) | iR :: RP | RP* | P | P* 推導過程&…

智能學習輔助系統-部門管理開發

文章目錄準備工作工程搭建增刪改查查詢部門刪除部門新增部門修改部門查詢回顯修改數據日志技術準備工作 需求:部門管理的查詢、新增、修改、刪除 使用REST風格的URL: GET : 查詢POST :新增PUT : 修改DELETE &#x…

【圖解】idea中快速查找maven沖突

現象 今天啟動項目時,總是以下報錯,并退出SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/F:/.m2/repository/org/apache/logging/log4j/log4j-slf4j-impl/2.13.3/log4j-slf4j-impl-2.13.3.jar!/org/slf4j/im…

LightGBM、XGBoost和CatBoost自定義損失函數和評估指標

LightGBM、XGBoost和CatBoost自定義損失函數和評估指標函數(縮放誤差)數學原理損失函數定義梯度計算評估指標LightGBM實現自定義損失函數自定義評估指標使用方式XGBoost實現自定義損失函數自定義評估指標使用方式CatBoost實現自定義損失函數自定義評估指…

2025-09-08升級問題記錄: 升級SDK從Android11到Android12

將 Android 工程的 targetSdkVersion 從 30 (Android 11)升級到 31(Android 12)需要關注一些重要的行為變更和適配點。 主要適配要點: 適配類別關鍵變更點適配緊迫性簡要說明組件導出屬性聲明了 Intent Filter 的組件…

利用OpenCV實現模板與多個對象匹配

代碼實現:import cv2 import numpy as npimg_rgb cv2.imread(mobanpipei.jpg) img_gray cv2.cvtColor(img_rgb, cv2.COLOR_BGR2GRAY) template cv2.imread(jianto.jpg, flags0) h, w template.shape[:2]# 讀取圖像# # 順時針旋轉 90 度(k1&#xff0…

OS28.【Linux】自制簡單的Shell的修bug記錄

目錄 1.問題代碼 2.排查 前期檢查 查找是誰修改了environ[0] 使用gdb下斷點 查看后續的影響 分析出問題的split_commandline函數 3.反思 4.正確代碼 5.結論 6.除此之外...... ★提示: 此bug非常隱蔽,不仔細分析很難查出問題,非常鍛煉調試能力! 1.問題代碼 #includ…

Debian 系統上安裝與配置 MediaMTX

🎯 在 Debian 系統上安裝與配置 MediaMTX(原 rtsp-simple-server):打造輕量級流媒體服務器 作者:遠在太平洋 環境:Debian 10/11/12 | Ubuntu 可參考 關鍵詞:MediaMTX、rtsp-simple-server、RTSP…

分布式專題——10.4 ShardingSphere-Proxy服務端分庫分表

1 為什么要有服務端分庫分表? ShardingSphere-Proxy 是 ShardingSphere 提供的服務端分庫分表工具,定位是“透明化的數據庫代理”。 它模擬 MySQL 或 PostgreSQL 的數據庫服務,應用程序(Application)只需像訪問單個數據…

Mysql相關的面試題1

什么是聚集索引(聚簇索引)?什么是二級索引(非聚簇索引)? 聚集索引就是葉子節點關聯行數據的索引,二級索引就是葉子節點關聯主鍵的索引,聚集索引必須有且僅有一個,二級索引…

電涌保護器:為現代生活筑起一道隱形防雷網

何為電涌保護器?電涌保護器(Surge Protective Device,簡稱SPD)主要用于控制信號系統,保護電氣電子設備信號線路免受雷電電磁脈沖、感應過電壓、操作過電壓的影響,廣泛應用于工控、消防、安防監控、交通、電…

【uniapp微信小程序】掃普通鏈接二維碼打開小程序

需求:用戶A保存自己的邀請碼海報,用戶B掃描該普通連接二維碼,打開微信小程序,并且攜帶用戶A的邀請碼信息,用戶B登錄時,跟用戶A關聯,成為用戶A的下級。 tips:保存海報到手機相冊可以參…

LeetCode 378 - 有序矩陣中第 K 小的元素

文章目錄摘要描述題解答案題解代碼分析代碼解析示例測試及結果輸出結果時間復雜度空間復雜度總結摘要 在開發中,我們經常遇到需要處理大規模有序數據的場景,比如數據庫分頁、排行榜查詢、或者處理排序過的矩陣。LeetCode 第 378 題“有序矩陣中第 K 小的…

【Lua】Windows 下編寫 C 擴展模塊:VS 編譯與 Lua 調用全流程

? 目錄 ?🛫 導讀需求環境1?? 核心原理:Windows下Lua與C的交互邏輯2?? Windows下編寫步驟:以mymath模塊為例2.1 步驟1:準備Windows開發環境方式1:官網下載Lua源碼并編譯(可控性高)方式2&am…

Python快速入門專業版(二十九):函數返回值:多返回值、None與函數嵌套調用

目錄引一、多返回值:一次返回多個結果的優雅方式1. 多返回值的本質:隱式封裝為元組示例1:返回多個值的函數及接收方式2. 多返回值的接收技巧技巧1:用下劃線_忽略不需要的返回值技巧2:用*接收剩余值(Python …