0
0

Good morning. I have a Linux64 bit and the stable version of fmodex. Im getting lots of
FMOD error! (60) Error initializing output device when I launch my application. This happens random. For example yestarday I never got this message and today always….
I initialize the system so:

[code:32483qza]// Global variable
FMOD::System *fmodSystem;

// Check the value returned by the fmod routines.
// If incorrect exit
void ERRORCHECK(FMOD_RESULT result)
{
if(result != FMOD_OK)
{
printf("FMOD error! (%d) %s\n", result, FMOD_ErrorString(result));
getch();
exit(-1);
}
}

// Entry point
int main(int argc, char **argv)
{
// Initialize fmodSystem
fmodSystem = NULL;

FMOD_RESULT result;
unsigned int version = 0;

// Create a system object
result = FMOD::System_Create(&fmodSystem);
ERRORCHECK(result);

// Check for the needed version of fmod
result = fmodSystem->getVersion(&version);
ERRORCHECK(result);

if( version < FMOD_VERSION )
{
    printf("Error! You are using an old version of FMOD %08x. This program requires %08x\n", version, FMOD_VERSION);
    getch();
    return 0;
}

// Initialize fmod 
result = fmodSystem->init(MAXCHANNELS, FMOD_INIT_NORMAL, 0);
ERRORCHECK(result);

...other code....[/code:32483qza]

Is there some mistake? I followed the examples and the tutorial.
Regards.
Franco

  • You must to post comments
0
0

It is probably something to do with the driver and output mode combination you are using.

Try System::setOutputType and choose betwee oss/esd/alsa.

  • You must to post comments
0
0

Thank you very much.

[quote="brett":54cprbtx]It is probably something to do with the driver and output mode combination you are using.

Try System::setOutputType and choose betwee oss/esd/alsa.[/quote:54cprbtx]

Where exactly I need to try System::setOutputType? At which point of the code? Can I have a little example?
Regards,
Franco

  • You must to post comments
0
0

I too am having a simliar problem.

Windows XP
Intel 32-bit system
VS 2005 SP1 Professional
FMod Ex (fmod.h version: #define FMOD_VERSION 0x00040800)

[code:22aqe1h7]
bool
CSoundManager::Initialise()
{
// Create the main system object
int iResult = FMOD::System_Create(&m_pSystem);

// Check if the FMOD::System was successfully created
if( iResult != FMOD_OK )
{
    MessageBox( NULL, "Failed to Initialise Sound Manager. FMOD::System did not successfully Initialise.", 
                "An exception has occured!", MB_OK | MB_ICONERROR | MB_TASKMODAL );

    return( false );
}

//
//  Sets the driver to the default output audio device
//
int hr1 = m_pSystem->setDriver(0);   // this return 0

int hr3 = m_pSystem->setOutput(FMOD_OUTPUTTYPE_AUTODETECT); // this returns 0

//
    // Initialise the FMOD::System and store the result it returns
// Currently the maximum channel limit is 4093
// iResult = m_pSystem->init( 4093, FMOD_INIT_NORMAL, 0 );
    //
// compiler breaks here.  can't step into init() method
    iResult = m_pSystem->init( 1, FMOD_INIT_NORMAL, 0 );



// Check if the FMOD::System was successfully created
if( iResult != FMOD_OK )
{
    MessageBox( NULL, "Failed to Initialise Sound Manager. FMOD::System did not successfully Initialise.", 
                "An exception has occured!", MB_OK | MB_ICONERROR | MB_TASKMODAL );

    return( false );
}
else
{
    return( true );
}

}
[/code:22aqe1h7]

Any help would be much obliged. The sound device works, I can play Mp3’s and so forth without issue.

I’ve been through the samples, and understand that the process is as follows:

Create the device,
Set the driver,
Set the output,
Call init() method (which breaks).

Thanks again,
Ash.

  • You must to post comments
0
0

Solved the problem. Somehow my .dlls were corrupted – replacing these solved the problem

kthx bye

  • You must to post comments
Showing 4 results
Your Answer

Please first to submit.