gpt4 book ai didi

audio - 是否有用于添加效果并导出到WAV文件的演示?

转载 作者:行者123 更新时间:2023-12-03 00:42:52 25 4
gpt4 key购买 nike

是否有用于添加效果并导出到WAV文件的演示?

我已经搜索过,但没有找到解决方法。

将效果添加到input.wav文件,然后播放。然后导出带有效果的新的wav文件。请帮我。

我的代码是:

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

result = system->getVersion(&version);

if (FMOD_OK != result) {
printf("FMOD lib version %08x doesn't match header version %08x", version, FMOD_VERSION);
}

// result = system->setOutput(FMOD_OUTPUTTYPE_WAVWRITER);
// ERRCHECK(result);

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

result = system->init(32, FMOD_INIT_NORMAL | FMOD_INIT_PROFILE_ENABLE, cDest);
//result = system->init(32, FMOD_INIT_NORMAL, extradriverdata);
ERRCHECK(result);

result = system->getMasterChannelGroup(&mastergroup);

ERRCHECK(result);

[self createAllDSP];

-(void)createSound:(NSString *)filename
{
//printf("really path = %s", getPath(filename));
result = system->createSound(getPath(filename), FMOD_DEFAULT, 0, &sound);
ERRCHECK(result);
[self playSound];
}

-(void) playSound
{
result = system->playSound(sound, 0, false, &channel);
ERRCHECK(result);
//result = channel->setLoopCount(1);
// ERRCHECK(result);
}

最佳答案

您的问题涉及面很广,我鼓励您将精力集中在遇到问题的 Realm 。

为了大致回答您的问题,要实现目标,您需要几个API,您的代码中有一些。

要使FMOD系统准备输出.wav:

  • 系统_创建
  • System::setOutput
  • System::init

  • 要创建并准备所需的效果:
  • System::createDSPByType
  • System::addDSP

  • 要创建并播放所需的声音:
  • System::createSound
  • System::play声音

  • 要检查声音何时完成:
  • System::update
  • Channel::正在播放

  • 关闭并完成.wav
  • Sound::release
  • System::release

  • 这是使用FMOD实现目标的一种方法的基本概述。

    关于audio - 是否有用于添加效果并导出到WAV文件的演示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31467050/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com