0
iOS에서 open33 래퍼 인 Finch
을 사용하고 있으며 내 FISound
을 희미하게하고 싶습니다.iOS에서 핀치를 사용할 때 소리가 들리지 않습니다.
30 초 사운드가 있다고 가정 할 때, 예를 들어 15 초 후에 5 초 이상 사운드를 페이드 아웃하고 싶습니다.
가능하면 가능하면 openAL을 사용하지 않는 것이 좋습니다.
iOS에서 open33 래퍼 인 Finch
을 사용하고 있으며 내 FISound
을 희미하게하고 싶습니다.iOS에서 핀치를 사용할 때 소리가 들리지 않습니다.
30 초 사운드가 있다고 가정 할 때, 예를 들어 15 초 후에 5 초 이상 사운드를 페이드 아웃하고 싶습니다.
가능하면 가능하면 openAL을 사용하지 않는 것이 좋습니다.
NSTimer
을 설정하여 사운드 게인을 0까지 반복적으로 감소시킵니다. 또는 다음과 같이 할 수 있습니다.
static const float FadeStep = 0.1;
static const NSTimeInterval FadeDelay = 0.1;
@implementation FISound
- (void) fadeOut
{
self.gain = MAX(0, self.gain - FadeStep);
if (self.gain > 0) {
[self performSelector:_cmd afterDelay:FadeDelay withObject:nil];
}
}
@end
이 방법은 빠르고 더러운 솔루션이지만 많은 경우 잘 작동합니다.