2012-08-03 124 views
1

我正在使用FMOD添加音频文件的影响。FMOD_OUTPUTTYPE_WAVWRITER FMOD错误! (23)文件未找到

这里是我的代码

char cDest[200] = {0}; 
    NSString *fileName=[NSString stringWithFormat:@"%@/recordName.wav", [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]]; 
    NSLog(@"%@",fileName); 

    [fileName getCString:cDest maxLength:200 encoding:NSASCIIStringEncoding]; 
    result = system->setOutput(FMOD_OUTPUTTYPE_WAVWRITER); ERRCHECK(result); 


    result = system->init(32, FMOD_INIT_NORMAL | FMOD_INIT_ENABLE_PROFILE, NULL); 
    ERRCHECK(result); 

我收到此错误FMOD error! (23) File not found.时添加FMOD_OUTPUTTYPE_WAVWRITER

请帮我

+1

你找到解决方案吗? 我也面临这个问题。 – iVipS 2012-10-05 06:53:30

+1

是的我已经修复了这个问题 – 2012-10-05 09:54:00

+1

我在下面发布了我的解决方案。如果还有问题,请告诉我。希望我艾米帮助你。 – 2012-10-05 09:59:59

回答

1

朋友我解决了这个问题,我自己

下面是代码。希望这将有助于有人

[strSavedFile getCString:cDest maxLength:200 encoding:NSASCIIStringEncoding]; 
result = system->setOutput(FMOD_OUTPUTTYPE_WAVWRITER_NRT); ERRCHECK(result); 

result = system->init(32, FMOD_INIT_NORMAL, cDest); 

只要改变

result = system->init(32, FMOD_INIT_NORMAL | FMOD_INIT_ENABLE_PROFILE, NULL); 

result = system->init(32, FMOD_INIT_NORMAL, cDest); 

,享受

+0

我想将高通滤波器(或任何其他滤波器)添加到音频文件,然后将其保存到文档目录。 下面是我的code.Its不给我的结果。你可以请建议,我错了... – iVipS 2012-10-08 05:17:58

2

我想补充的高通滤波器(或任何其他过滤器),以该音频文件,然后将其保存到文档目录中。 下面是我的code.Its不给我的结果。你可以请建议我错在哪里...

FMOD_RESULT result  = FMOD_OK; 
char   buffer[200] = {0}; 
unsigned int version  = 0; 

result = FMOD::System_Create(&system); 
ERRCHECK(result); 

result = system->getVersion(&version); 
ERRCHECK(result); 

if (version < FMOD_VERSION) 
{ 
    fprintf(stderr, "You are using an old version of FMOD %08x. This program requires %08x\n", version, FMOD_VERSION); 
    exit(-1); 
} 

[[NSString stringWithFormat:@"%@/song1.wav", [[NSBundle mainBundle] resourcePath]] getCString:buffer maxLength:200 encoding:NSASCIIStringEncoding]; 

char cDest[200] = {0}; 
NSString *fileName=[NSString stringWithFormat:@"%@/recordName.wav", [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]]; 

[fileName getCString:cDest maxLength:200 encoding:NSASCIIStringEncoding]; 
result = system->setOutput(FMOD_OUTPUTTYPE_WAVWRITER); 
ERRCHECK(result); 

result = system->init(32, FMOD_INIT_NORMAL | FMOD_INIT_ENABLE_PROFILE, cDest); 
ERRCHECK(result); 

result = system->createSound(buffer, FMOD_SOFTWARE, NULL, &sound); 
ERRCHECK(result); 

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

result = system->createDSPByType(FMOD_DSP_TYPE_HIGHPASS, &dsphighpass); 
ERRCHECK(result); 

result = system->addDSP(dsphighpass, NULL); 
ERRCHECK(result);