如何在iPhone上将声音名称传递给Fmod

时间:2011-06-27 13:43:52

标签: iphone fmod

有没有办法让fmod根据声音名称播放声音?我可以使用以下代码循环声音名称:

    for (int subsoundindex = 0; subsoundindex < numsubsounds; subsoundindex++)
    {
            FMOD::Sound *subsound  = NULL;
            char         name[256] = {0};

            result = fsb->getSubSound(subsoundindex, &subsound);
            ERRCHECK(result);

            result = subsound->getName(name, 256);
            ERRCHECK(result);

        NSLog(@"SOUND NAME %s.", name);
    }

但要播放它我想知道在这样的代码中注入声音名称的位置:

    result = fsb->getSubSound(row, &subsound);

    ERRCHECK(result);        

    result = system->playSound(FMOD_CHANNEL_FREE, subsound, false, &channel);
    ERRCHECK(result);

1 个答案:

答案 0 :(得分:1)

无法按名称获取FSB,您必须始终使用索引。但是,有几种选择。

  1. 您可以创建名称列表,然后查找名称以获取索引(这可能比扫描每个子句更快。

  2. 您可以使用include标头,FSBankLib可以生成一个头文件,该文件是从进入FSB的名称生成的,您可以将其用作子索引的宏。

  3. 您可以使用FMOD Designer,而不是声音,使用事件,可以按名称查找这些事件。