首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用于获取HDR(高动态范围)是否处于活动状态的Windows API

基础概念

HDR(高动态范围)是一种图像和视频显示技术,能够提供比传统SDR(标准动态范围)更高的亮度和对比度。在Windows操作系统中,可以通过特定的API来检测系统是否支持HDR以及HDR是否处于活动状态。

相关优势

  1. 更高的亮度:HDR能够显示更高的亮度水平,使得明亮场景更加逼真。
  2. 更好的对比度:HDR提供了更高的对比度,使得图像和视频中的细节更加清晰。
  3. 更丰富的色彩:HDR支持更广泛的色彩范围,使得颜色更加鲜艳和真实。

类型

在Windows API中,用于检测HDR状态的API主要有以下几种:

  1. DXGI(DirectX Graphics Infrastructure):这是微软提供的图形接口,可以用来检测系统是否支持HDR以及HDR是否处于活动状态。
  2. WDDM(Windows Display Driver Model):这是Windows的显示驱动模型,可以通过它来获取显示设备的HDR状态。

应用场景

  1. 游戏开发:开发者需要知道系统是否支持HDR,以便在游戏中启用或禁用HDR功能。
  2. 视频播放:视频播放软件需要检测系统的HDR状态,以便选择合适的播放模式。
  3. 系统设置:操作系统和显示设置应用需要检测HDR状态,以便为用户提供正确的显示选项。

相关Windows API

以下是一个示例代码,展示如何使用DXGI API来检测系统是否支持HDR以及HDR是否处于活动状态:

代码语言:txt
复制
#include <dxgi1_6.h>
#include <wrl.h>
#include <iostream>

using Microsoft::WRL::ComPtr;

bool IsHDRAvailable()
{
    ComPtr<IDXGIFactory4> factory;
    HRESULT hr = CreateDXGIFactory2(0, IID_PPV_ARGS(&factory));
    if (FAILED(hr))
    {
        std::cerr << "Failed to create DXGI factory." << std::endl;
        return false;
    }

    ComPtr<IDXGIOutput> output;
    hr = factory->EnumAdapters(0, &output);
    if (FAILED(hr))
    {
        std::cerr << "Failed to enumerate DXGI output." << std::endl;
        return false;
    }

    DXGI_OUTPUT_DESC desc;
    output->GetDesc(&desc);

    if (desc.Flags & DXGI_OUTPUT_FLAG_HIGH_DYNAMIC_RANGE)
    {
        return true;
    }

    return false;
}

bool IsHDRActive()
{
    ComPtr<IDXGIFactory4> factory;
    HRESULT hr = CreateDXGIFactory2(0, IID_PPV_ARGS(&factory));
    if (FAILED(hr))
    {
        std::cerr << "Failed to create DXGI factory." << std::endl;
        return false;
    }

    ComPtr<IDXGIOutput> output;
    hr = factory->EnumAdapters(0, &output);
    if (FAILED(hr))
    {
        std::cerr << "Failed to enumerate DXGI output." << std::endl;
        return false;
    }

    ComPtr<IDXGIOutput6> output6;
    hr = output.As(&output6);
    if (FAILED(hr))
    {
        std::cerr << "Failed to query IDXGIOutput6 interface." << std::endl;
        return false;
    }

    DXGI_OUTPUT_METADATA_HDR10 hdr10;
    hr = output6->GetMetadataHDR10(&hdr10);
    if (SUCCEEDED(hr))
    {
        return true;
    }

    return false;
}

int main()
{
    if (IsHDRAvailable())
    {
        std::cout << "HDR is available." << std::endl;
        if (IsHDRActive())
        {
            std::cout << "HDR is active." << std::endl;
        }
        else
        {
            std::cout << "HDR is not active." << std::endl;
        }
    }
    else
    {
        std::cout << "HDR is not available." << std::endl;
    }

    return 0;
}

参考链接

常见问题及解决方法

  1. API调用失败:确保你的系统支持DXGI 1.6,并且已经安装了相应的驱动程序。
  2. 权限问题:某些API调用可能需要管理员权限,确保你的应用程序以管理员身份运行。
  3. 兼容性问题:不同的硬件和驱动程序可能会有不同的行为,确保你的硬件和驱动程序是最新的,并且与你的操作系统兼容。

通过以上方法,你可以检测Windows系统是否支持HDR以及HDR是否处于活动状态,并解决相关问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

OpenCV 图像处理学习手册:6~7

本章介绍了 OpenCV 中用于计算摄影的一些鲜为人知的技术:高动态范围成像,无缝克隆,脱色和非照片级渲染。 这三个位于库的photo模块中。...注意,在前面的章节中已经考虑了该模块内部的其他技术(修复和去噪)。 高动态范围图像 我们处理的典型图像每像素有 8 位(BPP)。 彩色图像还使用 8 位表示每个通道的值,即红色,绿色和蓝色。...但是,创建高动态范围图像的最常见方法是使用 8 BPP 相机并拍摄具有不同曝光值的图像。 当我们这样做时,动态范围有限的问题显而易见。...注意 关于高动态范围成像的一本好书是 Reinhard 等人的《高动态范围成像:获取,显示和基于图像的照明》,Morgan Kaufmann Pub。...色调映射 当要显示高动态范围图像时,信息可能会丢失。 这是由于,因为计算机屏幕的对比度也很有限,而且打印材料通常也限制为 256 色。 当我们具有高动态范围的图像时,有必要将强度映射到一组有限的值。

1.3K30

Android 10正式版发布,看看都有哪些新特性

您可以使用连接性api来检测设备是否具有高带宽连接,并检查连接是否已计量。有了这些,你的应用程序和游戏可以为5G以上的用户定制丰富的身临其境的体验。...此外,Android 10支持使用Opus进行音频编码,Opus是一种开放的、免版税的编解码器,针对语音和音乐流媒体进行了优化,HDR10+用于支持Opus的设备上的高动态范围视频。...这为加速更大范围的模型奠定了基础,比如用于目标检测和图像分割的模型。我们正在与硬件供应商和流行的机器学习框架(如TensorFlow)合作,优化和推出对NNAPI 1.2的支持。...测试Android 10的隐私功能 测试的内容包括新的位置权限、范围存储、对后台活动启动的限制、对数据和标识符的更改等等。要开始查看顶级隐私更改清单,并查看隐私更改文档以了解更多测试领域。...编解码器:对于媒体应用程序,可以尝试AV1用于视频流,HDR10+用于高动态范围的视频。对于语音和音乐流,可以使用Opus编码,对于音乐家,可以使用本地MIDI API。

2K20
  • HDR技术趋势浅析

    1.2 HDR视频三要素 1.2.1 高动态范围 HDR是高动态范围(High Dynamic Ranging)的缩写,与传统的SDR相比,可以显示更大的亮度范围。...这种现象就是动态范围不足导致的。下图说明了人眼能够感受到的最亮和最暗的范围,以及HDR和SDR定义的亮度范围。 高动态范围这个词最早来自图像领域,多次曝光的方式被用来合成HDR的图像。...,然后将这些采用不同曝光的照片组合成高动态范围图像。...这种高动态范围图像可以捕捉从黑暗的阴影到亮光源或者高反光的更大动态范围的场景。...3.3 HDR的标准竞争与生态碎片化 如2.2部分的介绍,目前HDR标准和格式共存,标准之间的兼容性也不一样,处于百家争鸣的状态,甚至可以说是一场战争。

    2.6K30

    Android 9 Pie 现已面向全球正式发布!

    借助配套的 UI 模板,Slices 能够将应用内容以高动态、富交互的形式插入到多个使用场景中,比如 Google Search 和 Assistant。请进一步了解如何在应用中构建 Slices。...用户隐私 Android 9 新加入多项机制,进一步加强了对用户隐私的保护。系统禁止所有处于空闲状态的应用对话筒、摄像头和所有 SensorManager 传感器的访问。...使用动态处理增强音频 开发者可以调用 Dynamics Processing API 对音频进行动态处理,通过分离出特定频率的声音,降低过大的音量,或者增强过小的音量,来改善应用的音频质量。...用于 NFC 支付和安全交易的 Open Mobile API Android 9 将 GlobalPlatform Open Mobile API 的实现添加至平台中。...此外,适用于 Pixel 设备的系统映像现可供下载 请前往 Android 开源项目资源库中的 Android 9 板块,获取更多 Android 9 的相关资源。

    9.1K10

    Camera2 Extensions

    引言 相机扩展程序(Camera Extensions)是指Android提供的一套方便第三方相机开发者也能使用到平台厂商独有的一些Camera能力(比如bokeh、夜景、HDR等)的API 其中Google...Extensions API的用法可以参考Android官方账号发表的推文 使用 CameraX Extensions API 将特效应用到照片上 Camera2 Extensions API的用法就看这篇文章啦...,微距等需要突出主体的场景 EXTENSION_HDR:高动态范围,可以让最终成像获得更多的动态范围和图像细节,比如拍照时使用不同的AE配置,让高光区域不过曝,暗光区域不欠曝以达到最佳成片效果 EXTENSION_NIGHT...:夜景算法,可在暗光条件下抑制噪点以提升图像质量 以EXTENSION_HDR(高动态范围)为例,可以看到右侧生效HDR效果的图像,左下角暗光区域的椅子和石头还是可以看清的,顶部区域太阳周围的过曝区域的处理也非常不错...,步骤和Camera2普通模式启动预览流程是类似的,三步走即可,只是一些接口不同 打开相机的步骤和Camera2普通模式无差异 创建会话则采用createExtensionSession 获取CameraExtensionSession

    1.9K40

    嵌入式音视频疑惑汇总(持续更新)

    HLG是一种广色域、高动态范围(HDR)视频技术,全称为Hybrid Log-Gamma。它是由BBC和NHK联合开发的,旨在提供一种适用于广播电视领域的HDR视频标准。...HLG技术采用了一种混合的伽马曲线,使得视频信号可以同时被标准动态范围(SDR)和高动态范围设备所解释。...HDR10+是三星电子推出的一种高动态范围(HDR)视频技术。相比普通的HDR10技术,HDR10+在图像处理和编码方面有所创新,提供更加优质的视觉体验。...27、HDR10,2k一样吗? 不一样。HDR10是一种高动态范围技术,用于提供更广泛的亮度和颜色范围,以产生更丰富、更真实的图像。而2K是一种分辨率标准,指的是水平分辨率为2000像素左右的图像。...HLG视频可以在支持HDR的设备上显示更丰富、更真实的颜色和对比度。它采用了一种混合的传输函数,可以同时适应标准动态范围(SDR)和高动态范围(HDR)的显示设备。

    63520

    手机可以拍摄出2.4亿像素图像?

    出于好奇,小白经上网翻阅资料了解到,这是诺基亚公司一项创新技术,用五个摄像头,通过高动态范围成像技术,可以让手机拍摄出更高质量的照片。今天小白就来带大家了解一下,什么是高动态范围成像技术。...高动态范围成像(HDR),在计算机图形学与电影摄影术中,是用来实现比普通数位图像技术更大曝光动态范围(即更大的明暗差别)的一组技术。...高动态范围成像技术则试图通过捕捉同一场景的更多照片(例如在不同的曝光级别拍摄的照片)来缓解这些高范围场景问题,然后从这些照片中提取最好的几张照片,并将其合并为一张照片。...将一个光线暗淡的室内场景和人物拍摄的十分清晰,小白不得不感叹高动态范围成像技术的强大。 再来看一个例子: ? 这两张照片都是用同一台相机拍摄的。...下面网址是小白找到的学习高动态范围成像技术的方法,希望对大家有所帮助。

    70530

    UHD HDR现状

    ,到2020年,美国支持高动态范围(HDR)的消费类电视机的出货量预计将超过3000万台。...这些组织都是松散耦合的,他们共同参加年度活动,称为“SDO内部会议”,其中每个SDO都报告他们的进展以及需要在哪些方面采取具体行动以协调所有这些活动。...SL-HDR1在DVB(仅支持元数据的phase 2 扩展)和ATSC 3.0 (A/341标准)中都还处于标准化过程中。 HDR10+ ?...表3e:HDR10+标准 Notes: [1] DVB在其phase 2扩展规范中定义了一种携带动态元数据的标准方式 [2]ATSC 3.0标准中的标准候选状态 [3] HDR10+ Technologies...电视HDR部署状态 从2016年至今,HDR主要用于VOD OTT服务。到2016年底,HDR开始进行现场部署。 表6显示了截至2018年4月18日已部署的超高清HDR服务列表。

    2.1K20

    WWDC 2022 音视频相关 Session 概览(EDR 相关)丨音视频工程示例

    EDR Range 当渲染时,像素浮点值范围为 [0.0, 1.0] 的 SDR 内容是始终会正常渲染的。(1.0, EDR headroom] 范围的 HDR 内容也是可以渲染的。...其实,EDR headroom 是动态的,它的值受到多种因素的影响,比如:设备的显示技术、当前的显示亮度等等。...比如,通过 UIScreen(iOS)可以获取这些信息: 颜色的动态值: 当前屏幕可能的最大值; 当前的最大值; Reference 模式的状态; Reference 模式状态变化的通知。...的视频中截帧获得 EDR 图像; 使用 Metal API 可以将 EDR 环境渲染到纹理上; ProRAW、DNG 等存储原始图像信息的格式,可以用于渲染来还原 EDR 的高亮特性。...有时候,你可能想要使用 SDR cube data 用于 EDR 图像,在最新的 API 中,可以设置 extrapolate 属性为 true 来告诉 filter 来对 SDR cube data

    2.6K21

    全面拥抱HDR时机已到?

    过去很长一段时间消费者始终没有完全意识到HDR的意义与价值,直到最近《权力的游戏》第八季第三集的播出,它是否会让HDR焕发新的生命活力?...为什么高端(内容)产品在您的电视机上可能看起来如此糟糕? 《权力的游戏》制作十分精良,同时在拍摄环节使用了高动态范围技术,这可能是HBO在流媒体市场上的最重要系列作品。...流媒体传输质量 在我们所在的北欧等国家,在4K HDR的条件下观看《权力的游戏》是不现实的,这似乎在世界其他许多地方也是不争的事实,甚至标准动态范围下的4K条件都难以被找到;另一方面,流媒体传输意味着高分辨率与高质量无法兼得...基于8-bit制作出的视频画面上所显示的条形色彩带被称为条带(banding),这是视频处理行业的基本知识。 因此,希望基于高动态范围生产大分辨率高质量的视频片段,提高色彩深度十分重要。...如果我们期待在《权力的游戏》最后一季选择HDR与4K,那么就需要实现HDR条件下去除条带效果并获得更高的动态范围以高质量表现黑暗场景。

    56130

    HDR手机

    HDR代表高动态范围,并且在过去几年中一直是电视中的流行语。如果您最近购买了4K电视,几乎可以肯定它将具有HDR功能。...具体包括: 分辨率:60像素/度 动态范围:.0005-550nits 色彩空间:P3色域的90% 钻头深度:10 这些标准适用于智能手机,平板电脑和笔记本电脑,这意味着Mobile HDR Premium...还需要将此移动HDR认证与电视等效产品进行比较,以判断移动客户是否真正获得了完整的HDR体验。颁发移动HDR认证的UHD联盟还监督Ultra HD Premium标准。...HDR手机意味着什么 高动态范围面板比SDR面板具有更高的对比度,更宽的色域和更大的峰值亮度。通过选择支持HDR的电话,甚至SDR内容也可以看起来更生动,更明亮。...AMOLED面板(早在要求高动态范围内容之前就具备了这些特性。每年我们测试的手机数量都在不断增长,以争取DCI-P3色彩空间。这明显比与SDR内容关联的标准SRGB空间宽,并且更适合HDR。

    63420

    HDR in depth

    目录 HDR 和 SDR 之间的区别 色彩参数 色彩深度 亮度 HDR 标准 HDR10 HLG HDR10+ Dolby Vision HDR 标准总结 参考 尽管 SDR(标准动态范围)存在诸多弊端和过时的技术流程...,但 SDR 格式的视频内容在当今媒体市场中仍处于领先地位, 而 HDR(高动态范围)格式才刚刚开始扩展。...该标准应用于整个视频序列的静态元数据。一方面,静态实现简化了实现。同时,没有考虑到静态和动态、明暗场景需要不同色调的需求,因此需要应用全局补偿方法。...MDCV 描述了制作视频母版的显示器的基色坐标以及动态范围,是用于创建视频内容的显示参数,被认为是参考参数。播放视频内容时,将根据参考重新调整显示。...; 解码器解码视频序列并提取动态HDR元数据,或从媒体容器中获取有关框架的静态HDR元数据; 解码器将解码后的帧和 HDR 元数据传输到显示器; 显示器输出图像。

    2.5K11

    Android 9.0 强势来袭,带来了哪些新特性?

    HDR VP9视频,HEIF图像压缩和媒体API Android 9增加了对高动态范围(HDR)VP9配置文件2的内置支持,因此我们现在可以通过YouTube,Play电影和支持HDR的设备上的其他来源播放用户提供支持...HDR的电影。...Android 9为MediaDRM类添加了方法, 以获取指标,HDCP级别,安全级别和会话数,并添加对安全级别和安全停止的更多控制。有关详细信息,请参阅API Diff报告。...辅助功能窗格标题 在Android 8.1(API级别27)及更低版本中,辅助功能服务无法始终确定何时更新屏幕的特定窗格,例如活动将一个片段替换为另一个片段。...当一个TYPE_WINDOWS_CHANGED 事件发生时,可以使用 getWindowChanges() API来确定如何在Windows已经改变。在多窗口更新期间,每个窗口都会生成自己的一组事件。

    3.5K20

    实时 8K 服务的现状

    分辨率为 4K 的 4 倍或者 FHD 的 16 倍、60FPS 甚至 120FPS 的高帧率、高动态范围、10 比特的比特深度等等,这些似乎都是 8K 内容的标签。...而 NHK 的 "Full Spec" 则仅支持 120 和 60 两种帧率,以及 YUV444 和 HLG 标准的动态范围。 表 1:初代 8K 标准 HDR 是 8K 内容中不得不谈的一个部分。...8K 内容可以高度还原活动现场,带给观众比在小屏幕环境中观看更真实、更身临其境的活动体验,这些活动可以是体育赛事、音乐会、艺术讲座,也可以超越媒体领域到远程医疗和培训等类型的领域。...表 3:编码器性能对比 哪一个编解码标准更适合 8K 实时内容,需要考虑的不仅仅是压缩效率(在保证高质量的前提下维持较低的码率),还有计算复杂度(能否实时编码),以及是否有可用的编解码器生态(编解码器是否广泛部署...所以综合考虑这些因素来看,HEVC 还是目前最适合用于 8K 实时内容的编解码标准。

    49030

    Google为Pixel更新HDR,夜间拍摄无「鬼影」,每个像素都是细节

    HDR是数字摄影中一项重要的技术,意为「高动态范围」。...HDR技术可以克服多数相机传感器动态范围有限的缺点,并将图片色调控制在人眼识别范围之内,HDR简单的说就是让你的照片无论高光还是阴影部分细节都很清晰,不用担心过曝和欠曝。...目前常用的合成高动态范围图像的方法是多重曝光的图像合成,该方法的关键是: 1、曝光包围(Exposure bracketing):拍摄多个不同曝光的LDR图像 2、合并(Merging):将它们合并到一个...而HDR技术主要就是保留这种复杂场景下的高动态,免去手工操作。 1、在保持手机Pixel相机的快速,可预测的拍摄体验的同时,捕捉额外的长时间曝光帧。...这种方法适用于动态范围适中的场景,对于极端场景来说不太适用。 HDR成也连拍,败也连拍 一个常见的噪点叫Shot noise,与光的粒子性质有关,每拍一张照片,根据曝光时间和光线总量,都会引入噪点。

    1.4K21

    NVIDIA NVENC编码器 OBS 指南

    大多数直播网站都有建议的使用参数(Twitch, Youtube, Facebook Gaming)。以下是我们的建议: 高动态内容的重要注意事项。...如果您要串流高动态场景(如赛车游戏、第一人称射击游戏等),我们强烈建议降低分辨率。高动态内容不能被压缩太多,并且可能产生更多伪影(编码错误),使您的视频流看起来呈“块状”。...此选项支持编码器动态选择 B 帧的数量,可选范围介于 0 到您指定的 B 帧数量之间。B 帧可提升图像质量,因此十分有用,但它们也会耗用大量可用的比特率,由此降低高速运动场景的质量。...以 HDR 进行录制和直播 您可使用 HDR(高动态范围)提高内容的光影效果。您可以使用 HDR 进行录制和直播。...在 OBS 中配置完整工作流以启用 HDR。 Windows 和游戏设置 首先,确保您已在 Windows 的“显示”设置中启用 HDR。

    5.7K31

    小米米10 Pro相机评测--DXOMARK

    拍摄静止图像时,目标曝光稳定且准确;此外,小米在去年CC9 Pro专业版的基础上改善了动态范围,在困难的高对比度场景中的高光剪辑减少了,在明亮的室外和典型的室内拍摄条件下总体上具有更好的HDR处理。...在下面的比较中,您可以看到Mi 10 Pro图像显示出比Mate 30 Pro 5G和iPhone 11 Pro Max更好的动态范围,尤其是在框架的高光区域中,Mi 10 Pro保留了明显更多的细节。...整体细节非常适合超广角,并且曝光准确,动态范围也不错。仍然会发生一些高光剪裁,并且HDR有时看起来可能会有些不自然,但是小米的超宽镜头仍然是我们迄今为止测试的最好的镜头之一。...当以较低的变焦范围拍摄时,Mi 10 Pro在竞争者旁边也看起来不错。下面的中距离照片显示了很好的细节(用于变焦拍摄),良好的曝光和准确的白平衡。...缺点 有限的动态范围会导致高光或阴影修剪 偶尔出现不自然的红色调 在弱光下,时间噪声可能会非常令人讨厌 明亮和弱光片段中有时会出现锯齿和嘈杂的边缘伪像

    4.4K20
    领券