XACT3 SoundBank initialisation problem

Recommended Posts

Tank202    184

Hello,

I have this very strange problem with XACT3. I'm trying to play a sound using SoundBank interface, but it seems that SoundBank object pointer after initialisation is NULL. When I run the program, it would not respond.

PS. Using WaveBank interface, the program runs just fine.

Here is the code:

	//XACT3 stuff

IXACT3Engine* pXACT3Engine;
XACT3CreateEngine(0, &pXACT3Engine);

XACT_RUNTIME_PARAMETERS XACT3Parameters = {0};

pXACT3Engine->Initialize(&XACT3Parameters);

IXACT3SoundBank* pSoundBank;

GetFileSize(hMusicWaveBank, NULL), 0), FILE_MAP_READ, 0, 0, 0), GetFileSize(hMusicWaveBank, NULL), 0, 0, &pWaveBank);

BYTE* pbMusicSoundBankBuffer = new BYTE[GetFileSize(hMusicSoundBank, NULL)];
pXACT3Engine->CreateSoundBank(pbMusicSoundBankBuffer, GetFileSize(hMusicSoundBank, NULL), 0, 0, &pSoundBank); //I've tried a lot of ways to get the first argument but nothing worked.

IXACT3Cue* pCue;

pSoundBank->Play(0, 0, 0, 0); //<- The point where the program stops responding

//Win32 message loop
while(GetMessage(&msg, hMainWindow, 0, 0) > 0)
{
TranslateMessage(&msg);
DispatchMessage(&msg);
pXACT3Engine->DoWork();
//Sleep(10);
}

pXACT3Engine->ShutDown();


Share on other sites
ankhd    2304

Hi. first try some debug flags

DWORD dwCreationFlags = 0;

if( bAuditionMode )

dwCreationFlags |= XACT_FLAG_API_AUDITION_MODE;

if( bDebugMode )

dwCreationFlags |= XACT_FLAG_API_DEBUG_MODE;

Pass this to XACT3CreateEngine.

cheack your return code here pXACT3Engine->Initialize(&XACT3Parameters);

Share on other sites
Tank202    184

Ok I've tried everything you suggested but nothing seems to help. However when I switch the creation flag to AUDITION_MODE it seems to initialise the SoundBank, but the program still won't play sounds using soundBank interface. Both of the cases the return value of  pXACT3Engine->Initialize(&XACT3Parameters); was S_OK.

Maybe it is the library problem as pXACT3Engine->CreateSoundBank function is declared in xact3.lib and I dont have it in my directX SDK library folders. And also when installing my directX SDK at the end I get the error that says something like S 1024 or 1028

Edited by Tank202

Share on other sites
ankhd    2304
There should be debug errors.