2009-11-25 3 views
0

내 응용 프로그램에서 응용 프로그램을 만들고 있는데 카운트 다운을위한 이미지가 바뀌고 있습니다. 1 초가 완료되면 똑딱 소리를 내고 싶습니다. (이미지가 바뀔 때를 의미합니다.) 반복되는 진드기 소리와 함께 25 초 길이의 소리가납니다. 시간 간격은 1 초입니다. 때로는 잘 작동하지만 때로는 그렇지 않습니다. 이제 어떻게 타이머와 오디오를 동기화합니까. 도움을 주신 덕분에 감사드립니다.NStimer iphone SDK와 동기화 사운드?

답변

0

25 틱의 레코드가 있습니까?) 한 틱으로 레코드를 사용하는 이유는 무엇입니까? 소리의 크기가 목표가 아니라면 AudioServicesCreateSystemSoundID을 사용하여 재생할 수 있으며 매시간 AudioServicesPlaySystemSound으로 전화하십시오.

+0

당신이 나에게 제공 할 수 있습니다 : 당신이 클릭을 재생할 경우 여기

- (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]; } 

과 : 소리를 설정 잠시만 기다려주세요.하지만 제 아이폰 아이폰 3gs에서 나는 시스템 사운드를들을 수 없습니다. 이미 시스템 사운드를 시도했습니다. –

+0

음 ... Audion과 같이 오디오 파일의 일부를자를 수 있습니다. 무료이며 사용하기 쉽습니다. 당신은 OpenAL을 사용할 수 있습니다. 어쩌면 친숙하지 않을 수도 있지만 제대로 작동합니다. 낮은 수준의 API를 사용하므로 애니메이션과 함께 사용하는 것을 선호합니다. 다음은 openAL을 사용하여 사운드를 재생하는 간단한 커버를 만드는 데 도움이되는 기사입니다. http://benbritten.com/2008/11/06/openal-sound-on-the-iphone/comment-page-1/#comment- 292 – Morion

+0

나는 openAL을 사용하는 것이 매우 복잡해 졌다고 생각한다. avaudioplayer (현재 avaudioplayer를 사용하고있다)를 사용하는 것을 선호한다. 사운드의 일부분도 precised 할 필요가있다. 사용 가능한 틱 사운드가 없다. –

0

나는 약 1/16 초 긴 이하, 당신의 초기화에서 이것을 사용하는 단지 하나의 틱있는 사운드 파일로 AudioServicesCreateSystemSoundID 사용하는 것이 좋습니다 : 여기

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

은에 코드입니다

- (void) playClick { 
AudioServicesPlaySystemSound (clickSound); 
}