核心音频 API

核心音频 API 技术概述。

若要开发核心音频 API,需要以下标头:

有关此技术的编程指南,请参阅:

枚举

 
_AUDCLNT_BUFFERFLAGS

_AUDCLNT_BUFFERFLAGS枚举定义指示音频终结点缓冲区状态的标志。
AUDCLNT_SHAREMODE

AUDCLNT_SHAREMODE枚举定义常量,这些常量指示音频流是以共享模式还是以独占模式运行。
AUDCLNT_STREAMOPTIONS

定义描述音频流特征的值。
AUDIO_DUCKING_OPTIONS

指定音频躲避选项。 调用 IAudioClientDuckingControl::SetDuckingOptionsForCurrentStream 时,请使用此枚举中的值
AUDIO_EFFECT_STATE

指定音频效果的状态。
AUDIO_STREAM_CATEGORY

指定音频流的类别。
AUDIOCLIENT_ACTIVATION_TYPE

指定传递给 ActivateAudioInterfaceAsync 调用的AUDIOCLIENT_ACTIVATION_PARAMS结构的激活类型。
AudioObjectType

指定 ISpatialAudioObject 的类型。
AudioSessionState

AudioSessionState 枚举定义指示音频会话的当前状态的常量。
AudioStateMonitorSoundLevel

ConnectorType

ConnectorType 枚举指示连接器所属的连接类型。
数据流

数据流枚举通过连接器指示音频流的数据流方向。
EDataFlow

EDataFlow 枚举定义常量,这些常量指示音频数据在音频终结点设备和应用程序之间流动的方向。
EndpointFormFactor

EndpointFormFactor 枚举定义常量,这些常量指示音频终结点设备的常规物理属性。
ERole

ERole 枚举定义常量,这些常量指示系统已分配给音频终结点设备的角色。
KSJACK_SINK_CONNECTIONTYPE

KSJACK_SINK_CONNECTIONTYPE枚举定义指定连接类型的常量。 这些值在存储音频插孔接收器信息的KSJACK_SINK_INFORMATION结构中使用。
PartType

PartType 枚举定义常量,该常量指示设备拓扑中的部件是连接器还是子单元。
PROCESS_LOOPBACK_MODE

指定传递给 ActivateAudioInterfaceAsync 调用的AUDIOCLIENT_ACTIVATION_PARAMS结构的环回模式。
SPATIAL_AUDIO_STREAM_OPTIONS

指定对 ActivateSpatialAudioStream 的调用的音频流选项。
SpatialAudioHrtfDirectivityType

指定 ISpatialAudioObjectForHrtf 发出声音的形状。
SpatialAudioHrtfDistanceDecayType

指定在从 ISpatialAudioObjectForHrtf 位置到侦听器位置的距离上应用的衰减类型。
SpatialAudioHrtfEnvironmentType

指定为 ISpatialAudioObjectForHrtf 处理音频时模拟的声学环境的类型。
SpatialAudioMetadataCopyMode

指定调用 ISpatialAudioMetadataCopier::CopyMetadataForFrames 时使用的复制模式。
SpatialAudioMetadataWriterOverflowMode

指定当 ISpatialAudioMetadataWriter 尝试将更多项写入元数据缓冲区时所需的行为,而不是在初始化客户端时指定的项。

Functions

 
Activate

Activate 方法使用指定的接口创建 COM 对象。
Activate

Activate 方法在连接器或子单元上激活特定于函数的接口。
ActivateAudioInterfaceAsync

使 Windows 应用商店应用能够访问 WASAPI 系列中预先存在的组件对象模型 (COM) 接口。
ActivateCompleted

指示 WASAPI 接口的激活已完成且结果可用。
ActivateSpatialAudioMetadataCopier

创建一个 ISpatialAudioMetadataWriter 对象,用于将空间音频元数据项从一个 ISpatialAudioMetadataItems 对象复制到另一个对象。
ActivateSpatialAudioMetadataItems

创建用于存储空间音频元数据项的 ISpatialAudioMetadataItems 对象。
ActivateSpatialAudioMetadataReader

创建 ISpatialAudioMetadataWriter 对象,用于从 ISpatialAudioMetadataItems 对象读取空间音频元数据项。
ActivateSpatialAudioMetadataWriter

创建 ISpatialAudioMetadataWriter 对象,用于将空间音频元数据项写入 ISpatialAudioMetadataItems 对象。
ActivateSpatialAudioObject

激活用于音频呈现的 ISpatialAudioObject。
ActivateSpatialAudioObjectForHrtf

激活 ISpatialAudioObjectForHrtf 进行音频呈现。
ActivateSpatialAudioObjectForMetadataCommands

激活 ISpatialAudioObjectForMetadataCommands 进行呈现。
ActivateSpatialAudioObjectForMetadataItems

激活 ISpatialAudioObjectForMetadataItems 进行呈现。
ActivateSpatialAudioStream

使用空间音频流激活结构之一激活和初始化空间音频流。
AttachToBuffer

附加调用方提供的内存以存储 ISpatialAudioMetadataItems 对象。
AttachToPopulatedBuffer

附加以前填充的缓冲区以存储 ISpatialAudioMetadataItems 对象。 将保留缓冲区中已有的元数据项。
AudioStateMonitorCallback

当系统更改由 IAudioStreamStateMonitor 监视的音频流的声音级别时发生。
BeginUpdatingAudioObjects

将系统置于可以提交音频对象数据进行处理的状态,并且可以修改 ISpatialAudioObject 状态。
关闭

完成 SpatialAudioMetadataItems 对象上的任何必要作并释放该对象。 (ISpatialAudioMetadataCopier.Close)
关闭

完成 SpatialAudioMetadataItems 对象上的任何必要作并释放该对象。 (ISpatialAudioMetadataReader.Close)
关闭

完成元数据缓冲区上所需的任何作,并释放指定的 ISpatialAudioMetadataItems 对象。
ConnectTo

ConnectTo 方法将此连接器连接到另一个设备拓扑对象中的连接器。
CopyMetadataForFrames

将源 ISpatialAudioMetadataItems(提供给 Open 方法)的元数据项复制到目标 ISpatialAudioMetadataItems 对象(使用 dstMetadataItems 参数指定)。
CreateCaptureAudioStateMonitor

为捕获流创建 IAudioStateMonitor 的新实例。
CreateCaptureAudioStateMonitorForCategory

为具有指定音频类别的捕获流创建 IAudioStateMonitor 的新实例。
CreateCaptureAudioStateMonitorForCategoryAndDeviceId

创建 IAudioStateMonitor 的新实例,用于捕获具有指定音频类别和音频设备 ID 的流。
CreateCaptureAudioStateMonitorForCategoryAndDeviceRole

创建 IAudioStateMonitor 的新实例,用于捕获具有指定音频类别和音频设备角色的流。
CreateRenderAudioStateMonitor

为呈现流创建 IAudioStateMonitor 的新实例。
CreateRenderAudioStateMonitorForCategory

为具有指定音频类别的呈现流创建 IAudioStateMonitor 的新实例。
CreateRenderAudioStateMonitorForCategoryAndDeviceId

为具有指定音频类别和音频设备 ID 的呈现流创建 IAudioStateMonitor 的新实例。
CreateRenderAudioStateMonitorForCategoryAndDeviceRole

为具有指定音频类别和音频设备角色的呈现流创建 IAudioStateMonitor 的新实例。
DetachBuffer

分离缓冲区。 内存一次只能附加到单个元数据项。
断开连接

Disconnect 方法将此连接器与另一个连接器断开连接。
EndUpdatingAudioObjects

通知系统应用已完成为使用 ActivateSpatialAudioObject 激活的空间音频对象提供音频数据。
EnumAudioEndpoints

EnumAudioEndpoints 方法生成满足指定条件的音频终结点设备的集合。
EnumPartsIncoming

EnumPartsIncoming 方法获取所有传入部件的列表,即驻留在此部件上游的数据路径上的部件。
EnumPartsOutgoing

EnumPartsOutgoing 方法检索所有传出部件的列表,即驻留在此部件下游的数据路径上的部件。
Get4BRange

Get4BRange 方法获取特定于设备的属性值的 4 字节范围。
GetActivateResult

获取由调用 ActivateAudioInterfaceAsync 函数的应用程序启动的 WASAPI 接口的异步激活的结果。
GetAllVolumes

GetAllVolumes 方法检索音频流中所有通道的音量级别。
GetAllVolumes

GetAllVolumes 方法检索音频会话中所有通道的音量级别。
GetAudioEffects

获取关联音频流的音频效果的当前列表。
GetAudioObjectType

获取一个值,该值指定由 ISpatialAudioObject 表示的音频对象的类型。
GetAudioSessionControl

GetAudioSessionControl 方法检索音频会话控件。
GetAvailableDynamicObjectCount

获取当前可用的动态空间音频对象数。
GetAvailableOffloadConnectorCount

GetAvailableOffloadConnectorCount 方法检索可用于处理硬件音频引擎上卸载流的可用终结点数。
GetBuffer

获取用于为 ISpatialAudioObject 提供音频数据的缓冲区。
GetBuffer

检索指向捕获终结点缓冲区中下一个可用数据包的指针。
GetBuffer

检索指向呈现终结点缓冲区中下一个可用空间的指针,调用方可以将数据包写入其中。
GetBufferSize

GetBufferSize 方法检索终结点缓冲区的大小(最大容量)。
GetBufferSizeLimits

GetBufferSizeLimits 方法以 100 纳秒为单位返回硬件音频引擎的缓冲区大小限制。
GetChannelConfig

GetChannelConfig 方法从通道配置控件获取当前通道配置掩码。
GetChannelCount

GetChannelCount 方法获取音频流中的通道数。 (IAudioPeakMeter.GetChannelCount)
GetChannelCount

GetChannelCount 方法获取音频流中的通道数。 (IPerChannelDbLevel.GetChannelCount)
GetChannelCount

GetChannelCount 方法检索音频流中的通道数。
GetChannelCount

GetChannelCount 方法检索音频会话的流格式的通道数。
GetChannelCount

GetChannelCount 方法获取音频流中进入或离开音频终结点设备的通道计数。
GetChannelsPeakValues

GetChannelsPeakValues 方法获取音频流中所有通道的峰值样本值。
GetChannelVolume

GetChannelVolume 方法检索音频流中指定通道的音量级别。
GetChannelVolume

GetChannelVolume 方法检索音频会话中指定通道的音量级别。
GetChannelVolumeLevel

GetChannelVolumeLevel 方法获取进入或离开音频终结点设备的音频流中指定通道的音量级别(以分贝为单位)。
GetChannelVolumeLevelScalar

GetChannelVolumeLevelScalar 方法获取进入或离开音频终结点设备的音频流指定通道的规范化音频磁带音量级别。
GetChannelVolumes

GetChannelVolumes 方法检索卸载流中各种音频通道的音量级别。
GetCharacteristics

GetCharacteristics 方法保留供将来使用。
GetConnectedTo

GetConnectedTo 方法获取此连接器连接到的连接器。
GetConnector

GetConnector 方法获取由连接器编号指定的连接器。
GetConnectorCount

GetConnectorCount 方法获取设备拓扑对象中的连接器数。
GetConnectorIdConnectedTo

GetConnectorIdConnectedTo 方法获取此连接器连接到的连接器的全局 ID(如果有)。
GetControlInterface

如果此部件支持,GetControlInterface 方法将获取对指定控件接口的引用。
GetControlInterfaceCount

GetControlInterfaceCount 方法获取此部件支持的控件接口数。
GetCount

获取列表中支持的音频格式数。
GetCount

GetCount 方法检索设备集合中的设备计数。
GetCount

GetCount 方法获取部件列表中的部件数。
GetCount

GetCount 方法获取音频设备上打开的音频会话总数。
GetCurrentPadding

GetCurrentPadding 方法检索终结点缓冲区中填充的帧数。
GetCurrentSharedModeEnginePeriod

返回音频引擎的当前格式和周期性。
GetDataFlow

GetDataFlow 方法指示音频终结点设备是呈现设备还是捕获设备。
GetDataFlow

GetDataFlow 方法通过此连接器获取数据流的方向。
GetDefaultAudioEndpoint

GetDefaultAudioEndpoint 方法检索指定数据流方向和角色的默认音频终结点。
GetDevice

GetDevice 方法检索由终结点 ID 字符串标识的音频终结点设备。
GetDeviceId

GetDeviceId 方法获取由设备拓扑对象表示的设备的设备标识符。
GetDeviceIdConnectedTo

GetDeviceIdConnectedTo 方法获取此连接器连接到的音频设备的设备标识符(如果有)。
GetDevicePeriod

GetDevicePeriod 方法检索定期间隔的长度,以分隔终结点缓冲区中数据上的音频引擎连续处理传递的长度。
GetDevicePosition

GetDevicePosition 方法直接从硬件获取当前设备位置(以帧为单位)。
GetDevicePreferredFormat

GetDevicePreferredFormat 方法获取连接的首选音频流格式。
GetDisplayName

GetDisplayName 方法检索音频会话的显示名称。
GetEnabled

GetEnabled 方法获取 AGC 的当前状态(启用或禁用)。
GetEnabled

GetEnabled 方法获取音量控件的当前状态(启用或禁用)。
GetEngineFormat

GetEngineFormat 方法检索卸载音频流的当前数据格式。
GetFormat

获取列表中具有指定索引的格式。 格式按重要性顺序列出。 最可取的格式首先出现在列表中。
GetFrameCount

获取定义有效项偏移量的 ISpatialAudioMetadataItems 的总帧计数。
GetFrequency

GetFrequency 方法获取设备频率。
GetGfxState

GetGfxState 方法检索卸载音频流的 GFX 状态。
GetGlobalId

GetGlobalId 方法获取此部件的全局 ID。
GetGroupingParam

GetGroupingParam 方法检索音频会话的分组参数。
GetIconPath

GetIconPath 方法检索音频会话的显示图标的路径。
GetId

GetId 方法检索标识音频终结点设备的终结点 ID 字符串。
GetIID

GetIID 方法获取部件的特定于函数的控制接口的接口 ID。
GetInfo

获取定义有效项偏移量的 ISpatialAudioMetadataItems 的总帧计数。
GetItemCount

ISpatialAudioMetadataItems 存储的当前项数。
GetJackCount

GetJackCount 方法获取连接到音频终结点设备所需的插孔数。
GetJackCount

GetJackCount 方法获取连接器上的插孔数,这是连接到终结点设备所必需的。
GetJackDescription

GetJackDescription 方法获取音频插孔的说明。
GetJackDescription2

GetJackDescription2 方法获取指定音频插孔的说明。
GetJackSinkInformation

GetJackSinkInformation 方法检索指定插孔的接收器信息。
GetLevel

GetLevel 方法获取自以前读取该通道峰值级别以来为指定通道记录的峰值计量的峰值级别。
GetLevel

GetLevel 方法获取指定通道的音量级别(以分贝为单位)。
GetLevelRange

GetLevelRange 方法获取指定通道音量级别的范围(以分贝为单位)。
GetLocalEffectsState

GetLocalEffectsState 方法检索当前应用于卸载音频流的本地效果状态。
GetLocalId

GetLocalId 方法获取此部件的本地 ID。
GetMasterVolume

GetMasterVolume 方法检索音频会话的客户端音量级别。
GetMasterVolumeLevel

GetMasterVolumeLevel 方法获取进入或离开音频终结点设备的音频流的主音量级别(以分贝为单位)。
GetMasterVolumeLevelScalar

GetMasterVolumeLevelScalar 方法获取进入或离开音频终结点设备的音频流的主音量级别。 音量级别表示为 0.0 到 1.0 范围内的规范化音频磁带值。
GetMaxDynamicObjectCount

获取空间音频客户端的最大动态音频对象数。
GetMaxFrameCount

获取每个处理传递的最大可能的帧计数。 此方法可用于确定应分配的源缓冲区的大小,以便传输每个处理传递的音频数据。
GetMaxFrameCountForCategory

获取每个处理传递支持的最大帧计数。
GetMaxItemCount

创建对象时定义的 ISpatialAudioMetadataItems 允许的最大项数。
GetMaxValueBufferLength

由 ISpatialAudioMetadataItems 的元数据格式定义的最大命令值的大小。
GetMeterChannelCount

获取可按流量计费的卸载流中的可用音频通道数。
GetMeteringChannelCount

GetMeteringChannelCount 方法获取由峰值计量监视的音频流中的通道数。
GetMeteringData

GetMeteringData 方法检索有关卸载流中可用音频通道的一般信息。
GetMixFormat

GetMixFormat 方法检索音频引擎用于其共享模式流内部处理的流格式。
GetMute

GetMute 方法检索卸载音频流的静音状态。
GetMute

GetMute 方法获取静音控件的当前状态(启用或禁用)。
GetMute

GetMute 方法检索音频会话的当前静音状态。
GetMute

GetMute 方法获取进入或离开音频终结点设备的音频流的静音状态。
GetName

GetName 方法获取控件接口封装的音频函数的友好名称。
GetName

GetName 方法获取此部件的友好名称。
GetNativeStaticObjectTypeMask

获取一个通道掩码,该掩码表示本机为当前呈现引擎的静态扬声器床通道的子集。
GetNextPacketSize

GetNextPacketSize 方法检索捕获终结点缓冲区中下一个数据包中的帧数。
GetPart

GetPart 方法从部件列表中获取部件。
GetPartById

GetPartById 方法获取由其本地 ID 标识的部件。
GetPartType

GetPartType 方法获取此部件的部件类型。
GetPeakValue

GetPeakValue 方法获取音频流中通道的峰值样本值。
GetPosition

GetPosition 方法获取当前设备位置。
GetProcessId

GetProcessId 方法检索音频会话的进程标识符。
GetSelection

GetSelection 方法获取连接到当前所选选择器输入的部件的本地 ID。
GetSelection

GetSelection 方法获取连接到当前所选选择器输出的部件的本地 ID。
GetService

从 ISpatialAudioObjectRenderStream 获取其他服务。
GetService

GetService 方法从音频客户端对象访问其他服务。
GetSession

GetSession 方法获取由音频会话编号指定的音频会话。
GetSessionEnumerator

GetSessionEnumerator 方法获取指向音频会话枚举器对象的指针。
GetSessionIdentifier

GetSessionIdentifier 方法检索音频会话标识符。
GetSessionInstanceIdentifier

GetSessionInstanceIdentifier 方法检索音频会话实例的标识符。
GetSharedModeEnginePeriod

返回引擎为指定流格式支持的周期范围。
GetSignalPath

GetSignalPath 方法获取信号路径中链接两个部分(如果路径存在)的部件列表。
GetSimpleAudioVolume

GetSimpleAudioVolume 方法检索简单的音频音量控制。
GetSoundLevel

获取与 IAudioStateMonitor 关联的音频流的当前声音级别。
GetSpatialAudioMetadataItems

获取指向 ISpatialAudioMetadataItems 对象的指针,该对象存储 ISpatialAudioObjectForMetadataItems 的元数据项。
GetSpatialAudioMetadataItemsBufferLength

获取存储指定数量的空间音频元数据项所需的缓冲区长度。
GetState

GetState 方法检索当前设备状态。
GetState

GetState 方法检索音频会话的当前状态。
GetStaticObjectPosition

获取指定静态空间音频通道的 3D 空间中的位置。
GetStreamLatency

GetStreamLatency 方法检索当前流的最大延迟,并且可以在初始化流后随时调用。
GetSubType

GetSubType 方法获取此部件的部件子类型。
GetSubunit

GetSubunit 方法获取子单位数指定的子单位。
GetSubunitCount

GetSubunitCount 方法获取设备拓扑中的子单位数。
GetSupportedAudioObjectFormatEnumerator

获取一个 IAudioFormatEnumerator,其中包含空间音频对象支持的所有音频格式,列表中的第一项表示最可取的格式。
GetTopologyObject

GetTopologyObject 方法获取对包含此部分的设备拓扑对象的 IDeviceTopology 接口的引用。
GetType

GetType 方法获取此连接器的类型。
GetType

GetType 方法获取特定于设备的属性值的数据类型。
GetValue

GetValue 方法获取特定于设备的属性的当前值。
GetVolumeChannelCount

GetVolumeChannelCount 方法检索卸载流中的可用音频通道数。
GetVolumeRange

GetVolumeRange 方法获取进入或离开音频终结点设备的音频流的音量范围(以分贝为单位)。
GetVolumeRangeChannel

GetVolumeRangeChannel 方法获取指定通道的卷范围。
GetVolumeStepInfo

GetVolumeStepInfo 方法获取有关卷范围内当前步骤的信息。
初始化

Initialize 方法初始化音频流。
InitializeSharedAudioStream

使用指定的周期初始化共享流。
是否激活

获取一个布尔值,该值指示 ISpatialAudioObject 是否有效。
IsAudioObjectFormatSupported

获取一个值,该值指示 ISpatialAudioObjectRenderStream 是否支持指定的格式。
IsConnected

IsConnected 方法指示此连接器是否已连接到另一个连接器。
IsFormatSupported

IsFormatSupported 方法指示音频终结点设备是否支持指定的音频流格式。
IsFormatSupported

IsFormatSupported 方法指示音频终结点设备是否支持特定流格式。
IsLastBufferControlSupported

指示是否支持最后一个缓冲区控件。
IsOffloadCapable

查询是否在硬件卸载音频处理上创建了 ISpatialAudioClient2 的音频呈现终结点。
IsOffloadCapable

IsOffloadCapable 方法检索有关创建流的终结点是否能够支持卸载的音频流的信息。
IsSpatialAudioStreamAvailable

成功后,获取一个值,该值指示当前活动空间呈现引擎是否支持指定的空间音频呈现流。
IsSystemSoundsSession

IsSystemSoundsSession 方法指示会话是否为系统声音会话。
物品

Item 方法检索指向设备集合中指定项的指针。
OnAudioEffectsChanged

当音频效果列表更改或启用效果更改所需的资源时,由系统调用。
OnAvailableDynamicObjectCountChange

当 ISpatialAudioObjectRenderStream 的呈现容量即将更改时通知空间音频客户端,指定更改发生的时间,并指定更改后可用的动态音频对象数。
OnChannelVolumeChanged

OnChannelVolumeChanged 方法通知客户端会话子混合中的音频通道音量级别已更改。
OnDefaultDeviceChanged

OnDefaultDeviceChanged 方法通知客户端特定设备角色的默认音频终结点设备已更改。
OnDeviceAdded

OnDeviceAdded 方法指示已添加新的音频终结点设备。
OnDeviceRemoved

OnDeviceRemoved 方法指示已删除音频终结点设备。
OnDeviceStateChanged

OnDeviceStateChanged 方法指示音频终结点设备的状态已更改。
OnDisplayNameChanged

OnDisplayNameChanged 方法通知客户端会话的显示名称已更改。
OnGroupingParamChanged

OnGroupingParamChanged 方法通知客户端会话的分组参数已更改。
OnIconPathChanged

OnIconPathChanged 方法通知客户端会话的显示图标已更改。
OnNotify

OnNotify 方法在连接器或子单元的状态发生更改时通知客户端。
OnNotify

OnNotify 方法通知客户端音频终结点设备的音量级别或静音状态已更改。
OnPropertyValueChanged

OnPropertyValueChanged 方法指示属于音频终结点设备的属性的值已更改。
OnSessionCreated

OnSessionCreated 方法通知已注册的进程已创建音频会话。
OnSessionDisconnected

OnSessionDisconnected 方法通知客户端音频会话已断开连接。
OnSimpleVolumeChanged

OnSimpleVolumeChanged 方法通知客户端音频会话的音量级别或静音状态已更改。
OnStateChanged

OnStateChanged 方法通知客户端会话的流活动状态已更改。
OnVolumeDuckNotification

OnVolumeDuckNotification 方法发送有关挂起的系统隐藏事件的通知。
OnVolumeUnduckNotification

OnVolumeUnduckNotification 方法发送有关挂起的系统撤消事件的通知。
打开

打开用于复制的 ISpatialAudioMetadataItems 对象。
打开

打开用于读取的 ISpatialAudioMetadataItems 对象。
打开

打开用于写入的 ISpatialAudioMetadataItems 对象。
OpenPropertyStore

OpenPropertyStore 方法检索设备属性存储的接口。
QueryHardwareSupport

QueryHardwareSupport 方法查询音频终结点设备是否支持其硬件支持的功能。 (IAudioEndpointVolume.QueryHardwareSupport)
QueryHardwareSupport

QueryHardwareSupport 方法查询音频终结点设备是否支持其硬件支持的功能。 (IAudioMeterInformation.QueryHardwareSupport)
ReadNextItem

获取要读取的元数据项的命令数和示例偏移量。
ReadNextItemCommand

读取当前项的元数据命令和值数据。
RegisterAudioEffectsChangedNotificationCallback

注册 AudioEffectsChangedNotificationClient 接口。
RegisterAudioSessionNotification

RegisterAudioSessionNotification 方法注册客户端以接收会话事件的通知,包括流状态的更改。
RegisterCallback

注册 AudioStateMonitorCallback 的实现,当系统更改由 IAudioStateMonitor 监视的音频流的声音级别时调用。
RegisterControlChangeCallback

RegisterControlChangeCallback 方法注册 IControlChangeNotify 接口,客户端实现该接口以接收此部分的状态更改通知。
RegisterControlChangeNotify

RegisterControlChangeNotify 方法注册客户端的通知回调接口。
RegisterDuckNotification

RegisterDuckNotification 方法将应用程序注册到会话管理器,以接收躲避通知。
RegisterEndpointNotificationCallback

RegisterEndpointNotificationCallback 方法注册客户端的通知回调接口。
RegisterSessionNotification

RegisterSessionNotification 方法注册应用程序,以在创建会话时接收通知。
ReleaseBuffer

ReleaseBuffer 方法释放缓冲区。
ReleaseBuffer

ReleaseBuffer 方法释放在上一次调用 IAudioRenderClient::GetBuffer 方法时获取的缓冲区空间。
ReleaseOutputDataPointerForLastBuffer

释放最后一个缓冲区的输出数据指针。
重置

重置已停止的音频流。
重置

Reset 方法重置音频流。
ResetToDefault

将格式重置为设备制造商提供的默认设置。
SetAllVolumes

SetAllVolumes 方法为音频流中的所有通道设置单个音量级别。
SetAllVolumes

SetAllVolumes 方法为音频会话中的所有通道设置单个音量级别。
SetAudioEffectState

IAudioEffectsManager::SetAudioEffectState 方法 (audioclient.h) 设置指定音频效果的状态。
SetAudioStreamWindow

将指定的 HWND 窗口句柄与音频流相关联。
SetChannelConfig

SetChannelConfig 方法在通道配置控件中设置通道配置掩码。
SetChannelVolume

SetChannelVolume 方法设置音频流中指定通道的音量级别。
SetChannelVolume

SetChannelVolume 方法设置音频会话中指定通道的音量级别。
SetChannelVolumeLevel

SetChannelVolumeLevel 方法设置进入或离开音频终结点设备的音频流的指定通道的音量级别(以分贝为单位)。
SetChannelVolumeLevelScalar

SetChannelVolumeLevelScalar 方法在进入或离开音频终结点设备的音频流中设置指定通道的规范化音频磁带音量级别。
SetChannelVolumes

SetChannelVolumes 方法设置卸载流中各种音频通道的音量级别。
SetClientProperties

通过填充 AudioClientProperties 结构来设置音频流的属性。
SetDirectivity

设置 ISpatialAudioObjectForHrtf 的空间音频直接性模型。
SetDisplayName

SetDisplayName 方法将显示名称分配给当前会话。
SetDistanceDecay

将从 ISpatialAudioObjectForHrtf 位置到侦听器位置的距离应用的衰减模型。
SetDuckingOptionsForCurrentStream

设置音频呈现流的音频躲避选项。
SetDuckingPreference

SetDuckingPreference 方法启用或禁用系统提供的默认流衰减体验(自动隐藏)。
SetEchoCancellationRenderEndpoint

设置音频呈现终结点,该终结点应用作声学回声取消的参考流(AEC)。
SetEnabled

SetEnabled 方法启用或禁用 AGC。
SetEnabled

SetEnabled 方法启用或禁用音量控制。
SetEndOfStream

指示系统已为 ISpatialAudioObject 提交最终的音频数据块,以便可以停用对象及其资源重复使用。
SetEngineDeviceFormat

SetEngineDeviceFormat 方法设置硬件音频引擎的波形音频格式。
SetEnvironment

设置为 ISpatialAudioObjectForHrtf 处理音频时模拟的声学环境类型。
SetEventHandle

SetEventHandle 方法设置当客户端准备好处理音频缓冲区时系统发出信号的事件句柄。
SetGain

设置 ISpatialAudioObjectForHrtf 的增益。
SetGfxState

SetGfxState 方法设置卸载音频流的 GFX 状态。
SetGroupingParam

SetGroupingParam 方法将会话分配给会话分组。
SetIconPath

SetIconPath 方法将显示图标分配给当前会话。
SetLevel

SetLevel 方法设置指定通道的音量级别(以分贝为单位)。
SetLevelAllChannels

SetLevelAllChannels 方法设置音频流中所有通道的音量级别(以分贝为单位)。
SetLevelUniform

SetLevelUniform 方法将音频流中的所有通道设置为相同的统一音量级别(以分贝为单位)。
SetLocalEffectsState

SetLocalEffectsState 方法设置要应用于卸载音频流的本地效果状态。
SetMasterVolume

SetMasterVolume 方法设置音频会话的主音量级别。
SetMasterVolumeLevel

SetMasterVolumeLevel 方法设置进入或离开音频终结点设备的音频流的主音量级别(以分贝为单位)。
SetMasterVolumeLevelScalar

SetMasterVolumeLevelScalar 方法设置进入或离开音频终结点设备的音频流的主音量级别。 音量级别表示为 0.0 到 1.0 范围内的规范化音频磁带值。
SetMute

SetMute 方法设置已卸载音频流的静音状态。
SetMute

SetMute 方法启用或禁用静音控件。
SetMute

SetMute 方法设置音频会话的静音状态。
SetMute

SetMute 方法设置进入或离开音频终结点设备的音频流的静音状态。
SetOrientation

设置 3D 空间中相对于侦听器的引用帧的方向,从中呈现 ISpatialAudioObjectForHrtf 音频数据。
SetPosition

设置 3D 空间中相对于侦听器的位置,从中呈现 ISpatialAudioObjectForHrtf 音频数据。
SetPosition

设置 3D 空间中相对于侦听器的位置,从中呈现 ISpatialAudioObject 音频数据。
SetSampleRate

SetSampleRate 方法设置流的采样率。
SetSelection

SetSelection 方法选择输入选择器之一。
SetSelection

SetSelection 方法选择输出选择器的输出之一。
SetValue

SetValue 方法设置特定于设备的属性的值。
SetVolume

设置一个音频振幅乘数,该乘数将应用于 ISpatialAudioObject 提供的音频数据,然后再将其提交到音频呈现引擎。
启动

启动空间音频流。
启动

Start 方法启动音频流。
停止

停止正在运行的音频流。
停止

Stop 方法停止音频流。
UnregisterAudioEffectsChangedNotificationCallback

取消注册 IAudioEffectsChangedNotificationClient 接口。
UnregisterAudioSessionNotification

UnregisterAudioSessionNotification 方法删除客户端先前的注册以接收通知。
UnregisterCallback

注销以前注册的 AudioStateMonitorCallback,并调用 IAudioStateMonitor::RegisterCallback。
UnregisterControlChangeCallback

UnregisterControlChangeCallback 方法删除客户端以前通过调用 IPart::RegisterControlChangeCallback 方法注册的 IControlChangeNotify 接口的注册。
UnregisterControlChangeNotify

UnregisterControlChangeNotify 方法删除客户端在上一次调用 IAudioEndpointVolume::RegisterControlChangeNotify 方法时注册的客户端通知回调接口的注册。
UnregisterDuckNotification

UnregisterDuckNotification 方法删除应用程序以前的注册以接收通知。
UnregisterEndpointNotificationCallback

UnregisterEndpointNotificationCallback 方法删除客户端在之前对 IMMDeviceEnumerator::RegisterEndpointNotificationCallback 方法的调用中注册的通知接口的注册。
UnregisterSessionNotification

UnregisterSessionNotification 方法删除注册,以在创建会话时接收通知。
VolumeStepDown

VolumeStepDown 方法将进入或离开音频终结点设备的音频流的音量级别递减一步。
VolumeStepUp

VolumeStepUp 方法按一个步骤递增进入或离开音频终结点设备的音频流的音量级别。
WriteNextItem

在指定的偏移量处启动新的元数据项。
WriteNextItemCommand

将元数据命令和值数据写入当前项。
WriteNextMetadataCommand

将元数据命令写入空间音频对象,每个命令只能为每个处理周期添加一次。

Interfaces

 
IAcousticEchoCancellationControl

提供一种机制,用于确定音频捕获终结点是否支持声学回声取消(AEC),如果是,则允许客户端设置应用作引用流的音频呈现终结点。
IActivateAudioInterfaceAsyncOperation

表示激活 WASAPI 接口的异步作,并提供检索激活结果的方法。
IActivateAudioInterfaceCompletionHandler

提供一个回调,指示 WASAPI 接口的激活已完成。
IAudioAutoGainControl

IAudioAutoGainControl 接口提供对硬件自动增益控制(AGC)的访问。
IAudioBass

IAudioBass 接口提供对硬件低音级别的控制的访问权限。
IAudioCaptureClient

IAudioCaptureClient 接口使客户端能够从捕获终结点缓冲区读取输入数据。
IAudioChannelConfig

IAudioChannelConfig 接口提供对硬件通道配置控制的访问权限。
IAudioClient

IAudioClient 接口使客户端能够在音频应用程序和音频引擎(用于共享模式流)或音频终结点设备的硬件缓冲区(用于独占模式流)之间创建和初始化音频流。
IAudioClient2

IAudioClient2 接口派生自 IAudioClient 接口,其中包含一组其他方法,使 Windows 音频会话 API (WASAPI) 音频客户端能够执行以下作:_opt用于卸载、查询流属性,并从处理卸载的硬件获取信息。如果基础终结点支持硬件音频引擎,则音频客户端可以成功创建卸载流,音频系统已枚举并发现该终结点,并且终结点上仍有可用的卸载引脚实例。
IAudioClient3

IAudioClient3 接口派生自 IAudioClient2 接口,其中包含一组其他方法,使 Windows 音频会话 API (WASAPI) 音频客户端能够查询音频引擎支持的周期性和当前周期性,以及请求初始化具有指定周期的共享音频流。
IAudioClientDuckingControl

提供一种方法 SetDuckingOptionsForCurrentStream,该方法允许应用指定当应用的音频呈现流处于活动状态时,系统不应回避其他流的音频。
IAudioClock

IAudioClock 接口使客户端能够监视流的数据速率和流中的当前位置。
IAudioClock2

IAudioClock2 接口用于获取当前设备位置。
IAudioClockAdjustment

IAudioClockAdjustment 接口用于调整流的采样率。
IAudioEffectsChangedNotificationClient

回调接口允许应用程序在音频效果列表更改或启用效果更改所需的资源时接收通知。
IAudioEffectsManager

为音频效果管道提供管理功能
IAudioEndpointFormatControl

用于重置当前音频终结点设备格式。
IAudioEndpointLastBufferControl

提供使卸载流客户端能够通知终结点最后一个缓冲区仅部分填充的功能。
IAudioEndpointOffloadStreamMeter

IAudioEndpointOffloadStreamMeter 接口检索有关卸载音频流中的音频通道的常规信息。
IAudioEndpointOffloadStreamMute

IAudioEndpointOffloadStreamMute 接口允许客户端作卸载音频流的静音状态。
IAudioEndpointOffloadStreamVolume

IAudioEndpointOffloadStreamVolume 接口允许客户端应用程序作卸载音频流的音量级别。
IAudioEndpointVolume

IAudioEndpointVolume 接口表示音频流中音频终结点设备上的音量控制。
IAudioEndpointVolumeCallback

IAudioEndpointVolumeCallback 接口提供有关音频终结点设备的音量级别和静音状态更改的通知。
IAudioEndpointVolumeEx

IAudioEndpointVolumeEx 接口向设备终结点或从设备终结点提供音频流上的音量控制。
IAudioFormatEnumerator

提供支持的音频格式的列表。 最首选的格式是列表中的第一个格式。 通过调用 ISpatialAudioClient::GetSupportedAudioObjectFormatEnumerator 获取对此接口的引用。
IAudioInputSelector

IAudioInputSelector 接口提供对硬件多路复用器控件(输入选择器)的访问权限。
IAudioLfxControl

IAudioLfxControl 接口允许客户端从卸载的音频流中应用或删除本地效果。
IAudioLoudness

IAudioLoudness 接口提供对“响亮”补偿控制的访问权限。
IAudioMeterInformation

IAudioMeterInformation 接口表示音频流与音频终结点设备的峰值计量。
IAudioMidrange

IAudioMidrange 接口提供对硬件中级控件的访问权限。
IAudioMute

IAudioMute 接口提供对硬件静音控件的访问权限。
IAudioOutputSelector

IAudioOutputSelector 接口提供对硬件非复用器控制(输出选择器)的访问。
IAudioPeakMeter

IAudioPeakMeter 接口提供对硬件峰值计量控件的访问。
IAudioRenderClient

IAudioRenderClient 接口使客户端能够将输出数据写入呈现终结点缓冲区。
IAudioSessionControl

IAudioSessionControl 接口使客户端能够配置音频会话的控制参数,并监视会话中的事件。
IAudioSessionControl2

客户端可以使用 IAudioSessionControl2 接口获取有关音频会话的信息。
IAudioSessionEnumerator

IAudioSessionEnumerator 接口枚举音频设备上的音频会话。
IAudioSessionEvents

IAudioSessionEvents 接口提供会话相关事件的通知,例如卷级别、显示名称和会话状态的更改。
IAudioSessionManager

IAudioSessionManager 接口使客户端能够访问跨进程和进程特定的音频会话的会话控件和音量控件。
IAudioSessionManager2

IAudioSessionManager2 接口使应用程序能够管理音频设备的子混合。
IAudioSessionNotification

创建音频会话时,IAudioSessionNotification 接口提供通知。
IAudioStateMonitor

提供用于查询音频流的声音级别以及当声音级别更改时接收通知的 API。
IAudioStreamVolume

IAudioStreamVolume 接口使客户端能够控制和监视音频流中所有通道的音量级别。
IAudioTreble

IAudioTreble 接口提供对硬件重音级别的控制的访问权限。
IAudioViewManagerService

提供用于将 HWND 与音频流关联的 API。
IAudioVolumeDuckNotification

IAudioVolumeDuckNotification 接口由系统用来发送有关流衰减更改的通知。流衰减或躲避是在 Windows 7 中引入的一项功能,当打开新的通信流时,系统将调整非通信流的音量。 有关此功能的详细信息,请参阅默认躲避体验。
IAudioVolumeLevel

IAudioVolumeLevel 接口提供对硬件卷控制的访问权限。
IChannelAudioVolume

IChannelAudioVolume 接口使客户端能够控制和监视流所属的音频会话中所有通道的音量级别。
IConnector

IConnector 接口表示组件之间的连接点。
IControlChangeNotify

IControlChangeNotify 接口在部件(连接器或子单元)的状态发生更改时提供通知。
IControlInterface

IControlInterface 接口表示设备拓扑中部件(连接器或子单元)上的控制接口。 客户端通过调用 IPart::GetControlInterface 方法获取对部件的 IControlInterface 接口的引用。
IDeviceSpecificProperty

IDeviceSpecificProperty 接口提供对设备特定硬件控件的控制值的访问权限。
IDeviceTopology

IDeviceTopology 接口提供对音频设备的拓扑的访问。
IHardwareAudioEngineBase

IHardwareAudioEngineBase 接口由音频堆栈的音频终结点实现,用于配置和检索有关硬件音频引擎的信息。
IKsFormatSupport

IKsFormatSupport 接口提供有关软件配置的 I/O 连接(通常是 DMA 通道)在音频适配器设备和系统内存之间支持的音频数据格式的信息。
IKsJackDescription

IKsJackDescription 接口提供有关在音频适配器上的设备与外部或内部终结点设备(例如麦克风或 CD 播放器)之间提供物理连接的插孔或内部连接器的信息。
IKsJackDescription2

IKsJackDescription2 接口提供有关在音频适配器上的设备与外部或内部终结点设备(例如麦克风或 CD 播放器)之间提供物理连接的插孔或内部连接器的信息。
IKsJackSinkInformation

如果硬件支持插孔,则 IKsJackSinkInformation 接口提供对插孔接收器信息的访问权限。
IMMDevice

IMMDevice 接口封装多媒体设备资源的通用功能。
IMMDeviceCollection

IMMDeviceCollection 接口表示多媒体设备资源的集合。
IMMDeviceEnumerator

IMMDeviceEnumerator 接口提供用于枚举多媒体设备资源的方法。
IMMEndpoint

IMMEndpoint 接口表示音频终结点设备。
IMMNotificationClient

IMMNotificationClient 接口在添加或删除音频终结点设备、终结点设备的状态或属性发生更改或分配给终结点设备的默认角色发生更改时提供通知。
IPart

IPart 接口表示设备拓扑的部件(连接器或子单元)。
IPartsList

IPartsList 接口表示部件列表,每个部件都是一个对象,其中包含一个表示连接器或子单元的 IPart 接口。
IPerChannelDbLevel

IPerChannelDbLevel 接口表示一个泛型子单元控制接口,该接口提供对音频流或音频流中频率带的音量级别(以分贝为单位)的按通道控制。
ISimpleAudioVolume

ISimpleAudioVolume 接口使客户端能够控制音频会话的主音量级别。
ISpatialAudioClient

ISpatialAudioClient 接口使客户端能够创建从 3D 空间中的位置发出音频的音频流。
ISpatialAudioClient2

ISpatialAudioClient2 接口继承自 ISpatialAudioClient,并添加了用于查询支持卸载大型音频缓冲区的方法。
ISpatialAudioMetadataClient

提供用于创建 ISpatialAudioMetadataItems、ISpatialAudioMetadataWriter、ISpatialAudioMetadataReader 和 ISpatialAudioMetadataCopier 对象的类工厂。
ISpatialAudioMetadataCopier

提供用于将源 SpatialAudioMetadataItems 中的所有元数据项或子集复制到目标 SpatialAudioMetadataItems 的方法。
ISpatialAudioMetadataItems

表示空间音频元数据项的缓冲区。
ISpatialAudioMetadataItemsBuffer

提供用于将缓冲区附加到 SpatialAudioMetadataItems 的方法,以便就地存储数据。
ISpatialAudioMetadataReader

提供从 ISpatialAudioMetadataItems 对象中提取空间音频元数据项和项命令值对的方法。
ISpatialAudioMetadataWriter

提供用于存储定位在相应音频帧范围内的空间音频元数据项的方法。
ISpatialAudioObject

表示一个对象,该对象提供从 3D 空间中相对于用户的位置呈现的音频数据。
ISpatialAudioObjectBase

基接口,表示一个对象,该对象提供从 3D 空间中相对于用户的位置呈现的音频数据。
ISpatialAudioObjectForHrtf

表示一个对象,该对象提供从 3D 空间中相对于用户的位置呈现的音频数据(HRTF)。
ISpatialAudioObjectForMetadataCommands

用于为空间音频编写元数据命令。
ISpatialAudioObjectForMetadataItems

用于为需要每个缓冲区具有帧准确放置的多个元数据项的应用程序编写空间音频元数据。
ISpatialAudioObjectRenderStream

提供用于控制空间音频对象呈现流的方法,包括启动、停止和重置流。
ISpatialAudioObjectRenderStreamBase

基接口,提供用于控制空间音频对象呈现流的方法,包括启动、停止和重置流。
ISpatialAudioObjectRenderStreamForHrtf

提供用于控制 Hrtf 空间音频对象呈现流的方法,包括启动、停止和重置流。
ISpatialAudioObjectRenderStreamForMetadata

提供用于控制元数据的空间音频对象呈现流的方法,包括启动、停止和重置流。
ISpatialAudioObjectRenderStreamNotify

提供空间音频客户端响应 ISpatialAudioObjectRenderStream 状态更改的通知。
ISubunit

ISubunit 接口表示位于客户端和音频终结点设备之间的数据路径的硬件子单元(例如音量控制)。

结构

 
AUDIO_EFFECT

表示音频效果。
AUDIO_VOLUME_NOTIFICATION_DATA

AUDIO_VOLUME_NOTIFICATION_DATA结构描述音频终结点设备的音量级别或静音状态的变化。
AUDIOCLIENT_ACTIVATION_PARAMS

指定对 ActivateAudioInterfaceAsync 的调用的激活参数。
AUDIOCLIENT_PROCESS_LOOPBACK_PARAMS

指定对 ActivateAudioInterfaceAsync 的调用的参数,其中请求了环回激活。
AudioExtensionParams

此结构通过 IShellPropSheetExt::AddPages 传递到控制面板终结点扩展属性页,用于创建终结点 PropertyPages。
DIRECTX_AUDIO_ACTIVATION_PARAMS

DIRECTX_AUDIO_ACTIVATION_PARAMS结构指定 DirectSound 流的初始化参数。
KSJACK_DESCRIPTION

KSJACK_DESCRIPTION结构描述音频插孔。
KSJACK_DESCRIPTION2

KSJACK_DESCRIPTION2结构描述音频插孔。若要获取连接器音频插孔的说明,请调用 IKsJackDescription2::GetJackDescription2。
KSJACK_SINK_INFORMATION

KSJACK_SINK_INFORMATION结构存储有关音频插孔接收器的信息。
LUID

LUID 结构存储视频端口标识符。 此结构存储在KSJACK_SINK_INFORMATION结构的 PortId 成员中。
SpatialAudioClientActivationParams

表示空间音频呈现流的可选激活参数。 激活 ISpatialAudioClient 接口时,将此结构传递给 ActivateAudioInterfaceAsync。
SpatialAudioHrtfActivationParams

指定 ISpatialAudioRenderStreamForHrtf 的激活参数。
SpatialAudioHrtfActivationParams2

表示空间音频呈现流的激活参数,扩展 SpatialAudioHrtfActivationParams 并能够指定流选项。
SpatialAudioHrtfDirectivity

表示 ISpatialAudioObjectForHrtf 的全向模型。 全向排放与“类型”字段中指定的直接模型根据缩放字段的值线性内插。
SpatialAudioHrtfDirectivityCardioid

表示 ISpatialAudioObjectForHrtf 的心形直角模型。
SpatialAudioHrtfDirectivityCone

表示 ISpatialAudioObjectForHrtf 的圆锥形直接性模型。
SpatialAudioHrtfDirectivityUnion

为 ISpatialAudioObjectForHrtf 定义空间音频定向模型。
SpatialAudioHrtfDistanceDecay

表示从 ISpatialAudioObjectForHrtf 位置到侦听器位置的距离应用的衰减模型。
SpatialAudioMetadataItemsInfo

提供有关 ISpatialAudioMetadataItems 对象的信息。 通过调用 GetInfo 获取此结构的副本。
SpatialAudioObjectRenderStreamActivationParams

表示空间音频呈现流的激活参数。 激活流时,将此结构传递给 ISpatialAudioClient::ActivateSpatialAudioStream。
SpatialAudioObjectRenderStreamActivationParams2

表示空间音频呈现流的激活参数,扩展 SpatialAudioObjectRenderStreamActivationParams,并能够指定流选项。
SpatialAudioObjectRenderStreamForMetadataActivationParams

表示元数据的空间音频呈现流的激活参数。 激活流时,将此结构传递给 ISpatialAudioClient::ActivateSpatialAudioStream。
SpatialAudioObjectRenderStreamForMetadataActivationParams2

表示元数据的空间音频呈现流的激活参数,扩展 SpatialAudioObjectRenderStreamForMetadataActivationParams,并能够指定流选项。