0

我有一个总持续时间为 2 秒的图像动画,总共 6 张图像。这是一个闪烁的按钮。我想在每次该按钮闪烁时播放声音,因此以 0.66 秒为间隔 3 次。我试过这样做,但最后一个声音播放它的微秒延迟,我不想要..我能做些什么来播放声音吗?

我正在这样做:

-(void)playAnswerAnimSound
{
    if(audioActive)
    {
        if(answerAnimCounter <3)
        {
            //AudioServicesDisposeSystemSoundID(answerAnimSound);
        AudioServicesPlaySystemSound(answerAnimSound);
            [answerAnimTimer invalidate];
        answerAnimTimer = [NSTimer scheduledTimerWithTimeInterval:0.6666 target:self selector:@selector(playAnswerAnimSound) userInfo:nil repeats:NO];
            answerAnimCounter++;
        }
        else if(answerAnimCounter == 3)
        {
            answerAnimCounter =0;
            [answerAnimTimer invalidate];
        }
    }
}

声音持续时间为 1 秒。

问候

4

1 回答 1

0

您无法通过仅按时间间隔生成对音频服务的调用来同步音频,您需要实际渲染一个 .wav 或 .m4a 文件,其中所有音频剪辑已经及时间隔。然后,将生成的音频播放为 1 个较长的剪辑并将视频与音频同步。有关实施的更多详细信息,请参阅链接的答案。

于 2015-11-11T20:30:44.483 回答