0
0

Have a common code base using FMOD running under OS X and Linux with no problems. Trying to run under Windows XP, but getting an Invalid Paramter Error (37) in FMOD_System_CreateSound. Special circumstances: Running XP in a VMWare window on a MacPro.

The sound file (an .mp3) being loaded as a sample (FMOD_CREATESAMPLE), not a stream. The sound file is playable in Windows MediaPlayer. FMOD is initializing successfully and accepting a volume change command before this call to create sound executes.

Here is the output from fmod.log:

FMOD: OutputDSound::registerDLL : Register DLL
FMOD: OutputDSound::registerDLL : Detected DIRECTX 9
FMOD: FMOD_Output_DSound_EnumProc : Enumerating "Creative Sound Blaster PCI"
FMOD: OutputDSound::getDriverCapsEx : Register DLL
FMOD: OutputDSound::getDriverCapsEx : Enumerate Drivers
FMOD: OutputDSound::getDriverCapsEx : CoInitialize
FMOD: OutputDSound::getDriverCapsEx : DirectSoundCreate8 : id = 0
FMOD: OutputDSound::getDriverCapsEx : GetCaps
FMOD: OutputDSound::getDriverCapsEx : Bad Caps or emulated driver. Reverting back to software
FMOD: OutputDSound::close :
FMOD: OutputDSound::close : Free channel pool 2d
FMOD: OutputDSound::close : Free channel pool 3d
FMOD: OutputDSound::close : Release directsound listener
FMOD: OutputDSound::close : Release directsound object
FMOD: OutputDSound::close : FreeLibrary on dsound3d.dll
FMOD: OutputDSound::close : FreeLibrary on dsound.dll
FMOD: OutputDSound::close : Free driver list
FMOD: OutputDSound::close : done
FMOD: OutputDSound::registerDLL : Register DLL
FMOD: OutputDSound::registerDLL : Detected DIRECTX 9
FMOD: FMOD_Output_DSound_EnumProc : Enumerating "Creative Sound Blaster PCI"
FMOD: OutputDSound::getDriverCapsEx : Register DLL
FMOD: OutputDSound::getDriverCapsEx : Enumerate Drivers
FMOD: OutputDSound::getDriverCapsEx : CoInitialize
FMOD: OutputDSound::getDriverCapsEx : DirectSoundCreate8 : id = 0
FMOD: OutputDSound::getDriverCapsEx : GetCaps
FMOD: OutputDSound::getDriverCapsEx : Bad Caps or emulated driver. Reverting back to software
FMOD: OutputDSound::close :
FMOD: OutputDSound::close : Free channel pool 2d
FMOD: OutputDSound::close : Free channel pool 3d
FMOD: OutputDSound::close : Release directsound listener
FMOD: OutputDSound::close : Release directsound object
FMOD: OutputDSound::close : FreeLibrary on dsound3d.dll
FMOD: OutputDSound::close : FreeLibrary on dsound.dll
FMOD: OutputDSound::close : Free driver list
FMOD: OutputDSound::close : done
FMOD: SystemI::init : FMOD Ex Version: 00042605
FMOD: SystemI::init : maxchannels = 1024, flags = 0000001a, extradriverdata = 00000000
FMOD: SystemI::close :
FMOD: SystemI::close : Stop all sounds
FMOD: SystemI::close : Shut down output.
FMOD: OutputDSound::close :
FMOD: OutputDSound::close : Free channel pool 2d
FMOD: OutputDSound::close : Free channel pool 3d
FMOD: OutputDSound::close : Release directsound listener
FMOD: OutputDSound::close : Release directsound object
FMOD: OutputDSound::close : FreeLibrary on dsound3d.dll
FMOD: OutputDSound::close : FreeLibrary on dsound.dll
FMOD: OutputDSound::close : Free driver list
FMOD: OutputDSound::close : done
FMOD: SystemI::close : Remove miscllaneous DSP stuff.
FMOD: SystemI::close : done.

FMOD: OutputDSound::registerDLL : Register DLL
FMOD: OutputDSound::registerDLL : Detected DIRECTX 9
FMOD: OutputDSound::init : Enumerate Drivers
FMOD: FMOD_Output_DSound_EnumProc : Enumerating "Creative Sound Blaster PCI"
FMOD: OutputDSound::init : CoInitialize
FMOD: OutputDSound::init : DirectSoundCreate8 : mSelectedDriver = 0
FMOD: OutputDSound::init : SetCooperativeLevel
FMOD: OutputDSound::init : GetCaps
FMOD: OutputDSound::init : Bad Caps or emulated driver. Reverting back to software
FMOD: OutputDSound::init : Create Primary Buffer
FMOD: OutputDSound::init : Set Primary Buffer Format
FMOD: OutputDSound::init : Getting Listener Interface
FMOD: OutputDSound::init : Done
FMOD: SystemI::init : Set up software engine
FMOD: OutputDSound::createSample : length 24576, channels 2, format 2, mode 0002002a
FMOD: OutputDSound::createSample : done
FMOD: Thread::initThread : Initializing FMOD mixer thread. priority 3
FMOD: Thread::initThread : – Stacksize 32768. Stack pointer 00000000 : usesemaphore = 0 : sleeptime = 10
FMOD: Thread::callback : * FMOD mixer thread started
FMOD: Thread::initThread : done.
FMOD: SystemI::init : Set up emulated output
FMOD: SystemI::init : create the channel pool
FMOD: SystemI::init : Set up streamer
FMOD: Thread::initThread : Initializing FMOD stream thread. priority 2
FMOD: Thread::initThread : – Stacksize 49152. Stack pointer 00000000 : usesemaphore = 0 : sleeptime = 10
FMOD: Thread::callback : * FMOD stream thread started
FMOD: Thread::initThread : done.
FMOD: SystemI::init : done

FMOD: OutputDSound::close :
FMOD: OutputDSound::close : Free channel pool 2d
FMOD: OutputDSound::close : Free channel pool 3d
FMOD: OutputDSound::close : Release directsound listener
FMOD: OutputDSound::close : Release directsound object
FMOD: OutputDSound::close : FreeLibrary on dsound3d.dll
FMOD: OutputDSound::close : FreeLibrary on dsound.dll
FMOD: OutputDSound::close : Free driver list
FMOD: OutputDSound::close : done
FMOD: SystemI::createSoundInternal : memory = 01E56648 : mode 00004840
FMOD: SystemI::createSoundInternal : exinfo->cbsize = 108
FMOD: SystemI::createSoundInternal : exinfo->length = 3517
FMOD: SystemI::close :
FMOD: FMOD_Output_DSound_RecordEnumProc : Enumerating "Creative Sound Blaster PCI"
FMOD: SystemI::recordStop :
FMOD: SystemI::recordStop : done
FMOD: SystemI::close : Stop all sounds
FMOD: Thread::callback : * FMOD stream thread finished
FMOD: Thread::close : FMOD stream thread thread destroyed
FMOD: SystemI::close : Stream thread destroyed
FMOD: SystemI::close : Shut down streamer and FMOD_NONBLOCKING and FileSystem thread.
FMOD: SystemI::close : Free master channel group.
FMOD: SystemI::close : Remove ‘master’ sound group.
FMOD: SystemI::close : Shut down output.
FMOD: Thread::callback : * FMOD mixer thread finished
FMOD: Thread::close : FMOD mixer thread thread destroyed
FMOD: SoundI::release : (null) (0230E248)
FMOD: SoundI::release : free this. (0230E248)
FMOD: SoundI::release : done (0230E248)
FMOD: OutputDSound::close :
FMOD: OutputDSound::close : Free channel pool 2d
FMOD: OutputDSound::close : Free channel pool 3d
FMOD: OutputDSound::close : Release directsound listener
FMOD: OutputDSound::close : Release directsound object
FMOD: OutputDSound::close : FreeLibrary on dsound3d.dll
FMOD: OutputDSound::close : FreeLibrary on dsound.dll
FMOD: OutputDSound::close : Free driver list
FMOD: OutputDSound::close : done
FMOD: SystemI::close : Free software output.
FMOD: SystemI::close : Free emulated output.
FMOD: SystemI::close : Free channel pool.
FMOD: SystemI::close : Remove DSP Soundcard unit.
FMOD: SystemI::close : Remove miscllaneous DSP stuff.
FMOD: SystemI::close : done.

Thoughts?

  • You must to post comments
0
0

Be sure that you’re passing in FMOD_SOFTWARE. I have a sneaking suspicion that FMOD won’t like running hardware sounds over a virtual machine.

  • You must to post comments
0
0

We are. Here’s the init for mode:

mode = FMOD_SOFTWARE + FMOD_OPENMEMORY + FMOD_CREATESAMPLE + FMOD_ACCURATETIME

  • You must to post comments
0
0

[quote:ymqirxmy]mode = FMOD_SOFTWARE + FMOD_OPENMEMORY + FMOD_CREATESAMPLE + FMOD_ACCURATETIME[/quote:ymqirxmy]

Are you using integer addition or bitwise OR? I’m not sure if it’s a typo but that should be

[code:ymqirxmy]mode = FMOD_SOFTWARE | FMOD_OPENMEMORY | FMOD_CREATESAMPLE | FMOD_ACCURATETIME[/code:ymqirxmy]

-Pete

  • You must to post comments
0
0

Pete. Thanks for the tip. In this particular case, the result with both operators is the same (no overlapping bits), but I’m going to chnage the code anyway. Certainly is better!

Regarding my overall problem. We solved it last night. Version 4.26.00 changed the size of the structure used when loading a sound from memory. We hadn’t modified our header wrapper.

Thank you for quick response. We can close this case now.

  • You must to post comments
Showing 4 results
Your Answer

Please first to submit.