хотел бы знать, есть ли функция, чтобы проверить, достигну ли я пиковой мощности в течение определенного периода времени, затем что-то сделаю.
псевдокод
максимальный порог -110дБ
если пользователь остается @ этот порог более 5 секунд, показать предупреждение
еще
ничего не делать.
РЕДАКТИРОВАТЬ: Ответ
-(void)thresholdCheck:(NSString *)peakValue
{
int sec = hit/60; //1/60sec
NSString *tempSec = [NSString stringWithFormat:@"%i",sec];
[timeTrash setText:tempSec];
if (110<[peakValue intValue])//110db
{
hit++;
NSLog(@"hit threshold %i",hit);
}
else
{
hit =0;
//NSLog(@"hit threshold %i",hit);
}
if (hit >=330)//more then 5 sec {
NSLog(@"hit thresholded %i",hit);
[recorder stop];
[levelTimer invalidate];
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Threshold Hit" message:@"Sorry You Hit the threshold" delegate:self cancelButtonTitle:@"ok" otherButtonTitles:nil, nil];
[alert show];
}