버전
menu_open
link

include/AK/SoundEngine/Platforms/Windows/AkWinSoundEngine.h

Go to the documentation of this file.
00001 
00002 //
00003 // Copyright (c) 2006 Audiokinetic Inc. / All Rights Reserved
00004 //
00006 
00007 // AkWinSoundEngine.h
00008 
00011 
00012 #ifndef _AK_WIN_SOUND_ENGINE_H_
00013 #define _AK_WIN_SOUND_ENGINE_H_
00014 
00015 #include <AK/SoundEngine/Common/AkTypes.h>
00016 #include <AK/Tools/Common/AkPlatformFuncs.h>
00017 
00020 enum AkSoundQuality
00021 {
00022     AkSoundQuality_High,    
00023     AkSoundQuality_Low,     
00024 };
00025 
00030 enum AkAudioAPI
00031 {
00032     AkAPI_XAudio2 = 1 << 0,                             
00033     AkAPI_DirectSound = 1 << 1,                         
00034     AkAPI_Wasapi = 1 << 2,                              
00035     AkAPI_Default = AkAPI_Wasapi | AkAPI_XAudio2 | AkAPI_DirectSound,   
00036     AkAPI_Dummy = 1 << 3,                               
00037 };
00038 
00040 enum AkAudioOutputType
00041 {
00042     AkOutput_Dummy = 1 << 3,        
00043     AkOutput_MergeToMain = 1 << 4,  
00044     AkOutput_Main = 1 << 5,         
00045     AkOutput_Secondary = 1 << 6,    
00046     AkOutput_NumOutputs = 1 << 7,   
00047 };
00048 
00053 
00054 struct IXAudio2;
00055 struct AkPlatformInitSettings
00056 {
00057     // Direct sound.
00058     HWND                hWnd;                   
00059 
00060 
00061 
00062 
00063                                     
00064 
00065     // Threading model.
00066     AkThreadProperties  threadLEngine;          
00067     AkThreadProperties  threadBankManager;      
00068     AkThreadProperties  threadMonitor;          
00069 
00070     // Memory.
00071     AkUInt32            uLEngineDefaultPoolSize;
00072     AkReal32            fLEngineDefaultPoolRatioThreshold;  
00073 
00074     // Voices.
00075     AkUInt16            uNumRefillsInVoice;     
00076     AkSoundQuality      eAudioQuality;          
00077     
00078     bool                bGlobalFocus;           
00079 
00080 
00081     IXAudio2*           pXAudio2;               
00082 
00083     AkUInt32            idAudioDevice;          
00084 
00085 };
00086 
00087 struct IDirectSound8;
00088 struct IXAudio2;
00089 struct IMMDevice;
00090 struct IUnknown;
00091 
00092 namespace AK
00093 {
00097     AK_EXTERNAPIFUNC( IUnknown *, GetWwiseXAudio2Interface)();
00098 
00101     AK_EXTERNAPIFUNC( IDirectSound8 *, GetDirectSoundInstance )();
00102 
00106     AK_EXTERNAPIFUNC( AkUInt32, GetDeviceID ) (IMMDevice* in_pDevice);
00107 
00113     AK_EXTERNAPIFUNC( AkUInt32, GetDeviceIDFromName )(wchar_t* in_szToken);
00114 
00120     AK_EXTERNAPIFUNC(const wchar_t*, GetWindowsDeviceName) (
00121         AkInt32 index,          
00122         AkUInt32 &out_uDeviceID 
00123         );
00124 };
00125 
00126 #endif //_AK_WIN_SOUND_ENGINE_H_

이 페이지가 도움이 되었나요?

지원이 필요하신가요?

질문이 있으신가요? 문제를 겪고 계신가요? 더 많은 정보가 필요하신가요? 저희에게 문의해주시면 도와드리겠습니다!

지원 페이지를 방문해 주세요

작업하는 프로젝트에 대해 알려주세요. 언제든지 도와드릴 준비가 되어 있습니다.

프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.

Wwise를 시작해 보세요