1
Я пытаюсь сравнить два .caf-файла на основе некоторого параметра, например максимальных децибел или продолжительности файлов. Я записал эти два файла, используя AVAudioRecorder класс, используя следующие параметры:Как я могу сравнить два аудиофайла на основе определенного параметра say maximum decibel?
NSMutableDictionary* recordSetting = [[NSMutableDictionary alloc] init];
[recordSetting setValue :[NSNumber numberWithInt:kAudioFormatAppleIMA4] forKey:AVFormatIDKey];
[recordSetting setValue:[NSNumber numberWithFloat:44100.0] forKey:AVSampleRateKey];
[recordSetting setValue:[NSNumber numberWithInt: 2] forKey:AVNumberOfChannelsKey];
[recordSetting setValue :[NSNumber numberWithBool:NO] forKey:AVLinearPCMIsBigEndianKey];
[recordSetting setValue :[NSNumber numberWithBool:NO] forKey:AVLinearPCMIsFloatKey];
Спасибо за помощь!
Благодарим за отзыв. Я попробую сделать это, чтобы определить продолжительность звука. Но как я могу анализировать содержимое файла? Должен ли я использовать NSData? Недостаточно функциональности для NSData. Можно ли использовать метод averagePowerForChannel во время записи или воспроизведения звука? – Viraj
Метод averagePowerForChannel возвращает текущую среднюю мощность в децибелах для записи/воспроизведения звука, поэтому ее следует использовать только во время записи/записи. Вы можете использовать NSData для получения содержимого выходящего файла. После того, как вы получили контент, используйте свой любимый метод/библиотеку для его анализа. Чтобы получить массив C-стиля из объекта NSData, используйте метод байтов. – eviltrue
Как насчет того, чтобы использовать метод averagePowerForChannel в цикле каждые 3 секунды, пока я записываю или играю и беру на себя наибольшее значение? Также после того, как я получаю контент, я совершенно не уверен, что с ним делать? Или как анализировать его с помощью моего любимого метода/библиотеки? Я новичок в разработке аудио. Благодарю. – Viraj