所有
我使用fmod组件在win7中播放声音,初始化componnet时遇到问题。代码如下。

   FMOD::Memory_Initialize(0, 0, FMOD_AllocCallback,   FMOD_ReallocCallback,     FMOD_FreeCallback);


    result = FMOD::System_Create(&m_pFMOD);
    if (result != FMOD_OK)
    {
        //fprintf(stderr, ERR_NOSOUND, result, FMOD_ErrorString(result));
        DREAMLAND_RUNINFO(L"[FMod] System_Create error:%s", Utf82WideChar(FMOD_ErrorString(result)).c_str());
        m_pFMOD = NULL;
        return false;
    }

    result = m_pFMOD->getVersion(&version);
    if (result != FMOD_OK)
    {
        RUNINFO(L"[FMod] getVersion error:%s", Utf82WideChar(FMOD_ErrorString(result)).c_str());
        m_pFMOD->release();
        m_pFMOD = NULL;
        return false;
    }
    if (version < FMOD_VERSION)
    {
    RUNINFO(L"[FMod]version < FMOD_VERSION error:%s", Utf82WideChar(FMOD_ErrorString(result)).c_str());
        m_pFMOD->release();
        m_pFMOD = NULL;
        return false;
    }
    const int iLength = 1024;
    char szName[iLength] = {0};
    FMOD_GUID sFmodGuid;
    result = m_pFMOD->getDriverInfo(0, szName, iLength, &sFmodGuid);
    if (result != FMOD_OK)
    {
        RUNINFO(L"[FMod]getDriverInfo error:%s", Utf82WideChar(FMOD_ErrorString(result)).c_str());
        m_pFMOD->release();
        m_pFMOD = NULL;
        return false;
    }
    int iMin = 0, iMax = 0;
    result = m_pFMOD->getDriverCaps(0, &caps, &iMin, &iMax, &speakermode);
    if (result != FMOD_OK)
    {
        //fprintf(stderr, ERR_NOSOUND, result, FMOD_ErrorString(result));
        RUNINFO(L"[FMod] getDriverCaps error:%s", Utf82WideChar(FMOD_ErrorString(result)).c_str());
        m_pFMOD->release();
        m_pFMOD = NULL;
        return false;
    }

函数getdriverinfo失败,错误字符串为14:16:00:729 | [FMod] getDriverInfo错误:无效的参数已传递给此函数。我已经阅读了fmod的文档,但是参数传递给了此函数,我找不到哪个参数是错误的。谁能帮我?或给我一些提示?

最佳答案

int iLength = 1024;
    char szName[iLength] = {0};
    FMOD_GUID sFmodGuid;
    result = m_pFMOD->getDriverInfo(i, szName, szLength, &sFmodGuid,0,0,0);

你缺少一些参数

关于audio - Fmod获取驱动程序信息失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35194830/

10-14 09:37