FMOD - mehrere Sounds gleichzeitig abspielen?

  • Ich versuche, meinen Sound Manager (FMOD) so einzustellen, dass Hintergrundmusik und andere Action-Sounds auf verschiedenen Kanälen abgespielt werden, da ich verstehe, dass dies der einzige Weg ist, gleichzeitige Sounds mit FMOD zu haben. ... Mein Setup ist unten, wenn ich playRepeat anrufe und dann playOnce der erste Track stoppt!

     void SoundMgr::addSound(char *path, string n){
        Sound* s;
        fmodsys->createSound(path, FMOD_SOFTWARE | FMOD_2D | FMOD_CREATESTREAM, 0, &s);
    
    
        soundMap.insert(pair<string,Sound*>(n, s));
    }
    
    void SoundMgr::playOnce(string name){
    
        fmodsys->playSound(FMOD_CHANNEL_FREE,
            soundMap.find(name)->second, true, &fmodchn);
        fmodchn->setPosition(0, FMOD_TIMEUNIT_PCM);
        fmodchn->setPaused(false);
    }
    
    void SoundMgr::playRepeat(string name){
    
        fmodsys->playSound(FMOD_CHANNEL_FREE,
            soundMap.find(name)->second, true, &backChn);
        backChn->setMode(FMOD_LOOP_NORMAL);
        backChn->setPosition(0, FMOD_TIMEUNIT_PCM);
        backChn->setPaused(false);
    
    }
     

    ... trotz der Tatsache, dass ich zwei separate Kanäle verwende ... fehlt mir etwas?

    22 November 2011
    Alex
1 answer
  • Das Problem war, dass ich FMOD nur mit einem Kanal initialisierte.

     fmodsys->init(1,FMOD_INIT_NORMAL,0);
     

    Ändern in eine höhere Zahl hat dazu geführt, dass das obige Setup in Ordnung ist!

    22 November 2011
    Alex