0

私はアプリケーションを作成しています.私のアプリでは、カウントダウンのために画像を変更しています.1秒が完了したときにティック音を再生したいです. 1秒の。うまく動作することもありますが、うまくいかないこともあります。オーディオをタイマーと同期させるにはどうすればよいですか。

4

2 に答える 2

0

AudioServicesCreateSystemSoundID を 1 ティック (約 1/16 秒以下) のサウンド ファイルで使用し、これを init で使用することをお勧めします。

clickSound = [[self createSoundWithName:@"click"] intValue];

サウンドを設定するコードは次のとおりです。

- (NSNumber*) createSoundWithName: (NSString*) name {
SystemSoundID soundID = -1;

NSString *path =[[NSBundle mainBundle] pathForResource:name ofType:@"caf"];
if (path != nil) {
    NSURL *url = [NSURL fileURLWithPath:path];
    if (url != nil) {
        OSStatus err = AudioServicesCreateSystemSoundID ((CFURLRef) url, &soundID);
        if (err) NSLog (@"AudioServicesCreateSystemSoundID error %d", err);
    }
}
return [NSNumber numberWithInt:soundID];
}

クリックを再生する場所は次のとおりです。

- (void) playClick  {
AudioServicesPlaySystemSound (clickSound);
}
于 2009-12-31T17:36:03.063 に答える
0

25 ティックで記録しますか?) なぜ 1 ティックで記録しないのですか? ラウドネスが目的でない場合は、毎秒AudioServicesCreateSystemSoundID呼び出すことで再生できます。AudioServicesPlaySystemSound

于 2009-11-25T08:55:29.877 に答える