zoukankan      html  css  js  c++  java
  • DirectSound学习笔记(4):设备性能

    设备性能

    DirectSound使你的应用程序可以检查声音设备的硬件性能。许多应用程序 不需要这么做,因为DirectSound自动利用任何可用的硬件加速。然而,性能良好的应用程序能够使用这些信息,根据可用的硬件扩展它们的声音需求。 比如,如果硬件混频可用,一个应用程序可能选择播放多道声音。

    在调用DirectSoundCreate8 函数创建一个设备对象后,你的应用程序能够通过调用IDirectSound8::GetCaps方法获取声音设备的性能。
    下面的例子获取了由IDirectSound8接口指针lpDirectSound标识的设备的性能。

    DSCAPS dscaps; 
     
    dscaps.dwSize 
    = sizeof(DSCAPS); 
    HRESULT hr 
    = lpDirectSound->GetCaps(&dscaps); 
    if (FAILED(hr))
    {
      ErrorHandler(hr);  
    // Add error-handling here.
    }

    DSCAPS结构获取了声音设备的性能和资源信息,包括各种资源的最大量和当前可用资源数。注意这个结构的dwSize成员必须在方法调用前被初始化。

    如果你的应用程序依赖于硬件性能,你必须在每次缓冲区定位期间调用IDirectSound8::GetCaps方法,以决定是否拥有足够资源来创建下一个缓冲区。

    扬声器配置

    DirectSound使用扬声器配置-即扬声器相对于听众的位置-以优化用户声音系统的3D效果。
    在Windows 98,Windows 2000,及以后的操作系统中,扬声器配置能由用户在控制面板中设置。一个应用程序能够通过使用 IDirectSound8::GetSpeakerConfig 来获取这个值。应用程序不应该通过调用IDirectSound8::SetSpeakerConfig 来覆盖设置,因为这是一个全局设置,它将影像其他用户和应用程序。
  • 相关阅读:
    计算机语言的学习之道
    单麦克风远场语音降噪解决方案
    ESP8266 SPI 开发之软件驱动代码分析
    ESP8266 SPI 开发之软硬基础分析
    蓝牙5.0协议及下载地址
    python中往json中添加文件的方法
    Python isinstance() 函数含义及用法解析
    从一线方案商的角度来看高通QCC3020芯片
    Ubuntu18.04声卡配置问题解决
    python 音频通道分离的源码实现
  • 原文地址:https://www.cnblogs.com/top5/p/1635047.html
Copyright © 2011-2022 走看看