, ( ), FMOD, , . API- FMOD. , createoundexinfo, , FMOD_OPENMEMORY createSound name_or_data. :
FMOD_CREATESOUNDEXINFO, , CreateStream. , , , , FMOD_OPENUSER, FMOD_OPENMEMORY name_or_data:
FMOD_CREATESOUNDEXINFO exinfo;
memset(&createsoundexinfo, 0, sizeof(FMOD_CREATESOUNDEXINFO));
exinfo.cbsize = sizeof(FMOD_CREATESOUNDEXINFO);
exinfo.decodebuffersize = 44100;
exinfo.length = 44100 * channels * sizeof(signed short) * 5;
exinfo.numchannels = channels;
exinfo.defaultfrequency = 44100;
exinfo.format = FMOD_SOUND_FORMAT_PCM16;
exinfo.pcmreadcallback = pcmreadcallback;
exinfo.pcmsetposcallback = pcmsetposcallback;
result = system->createStream(NULL, FMOD_OPENUSER, &exinfo, &sound);
ERRCHECK(result);
, PCM16 44khz, , FMOD , , - :
FMOD_RESULT F_CALLBACK pcmreadcallback(FMOD_SOUND *sound, void *data, unsigned int datalen)
{
return FMOD_OK;
}
FMOD_RESULT F_CALLBACK pcmsetposcallback(FMOD_SOUND *sound, int subsound, unsigned int position, FMOD_TIMEUNIT postype)
{
return FMOD_OK;
}
, , FMOD .