【XAudio2】5.如何初始化 XAudio2

5.如何初始化 XAudio2

这个例子创建一个XAudio2引擎实例,并创建一个Mastering Voice。


初始化XAudio2


1.创建一个XAudio2引擎实例通过XAudio2Create函数。

  1. #ifndef _XBOX
    CoInitializeEx(NULL, COINIT_MULTITHREADED);
    #endif
    IXAudio2* pXAudio2 = NULL;
    HRESULT hr;
    if ( FAILED(hr = XAudio2Create( &pXAudio2, 0, XAUDIO2_DEFAULT_PROCESSOR ) ) )
        return hr;


Windows
在Windows上,应用程序必须调用CoInitializeEx方法在XAudio2Create之前调用。此外,COM的规则需要CoInitialize或CoInitializeEx在任何线程被调用在使用XAudio2之前。

 

2.创建一个Mastering Voice通过CreateMasteringVoice函数。
Mastering Voice封装了一个音频设备,是所有音频的最终目的地,通过音频图。

  1. if ( FAILED(hr = pXAudio2->CreateMasteringVoice( &pMasterVoice, XAUDIO2_DEFAULT_CHANNELS,
                                XAUDIO2_DEFAULT_SAMPLERATE, 0, 0, NULL ) ) )
        return hr;


注意
在这个例子中,CreateMasteringVoice使用默认值0 DeviceIndex参数。这导致XAudio2把全局默认的音频设备给Mastering Voice。这个值也可以由遍历可用的音频设备,并根据标准选择一个特定于应用程序的。例如选择音频设备基于特定于应用程序的标准,看如何:列举音频设备。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值