Przepraszam z góry za noobiness tego pytania, to jest moja pierwsza eksploracja strony audio programowania iOS.Konwersja wejścia AVAudioRecorder na bufor pływaków
Używam klasy AVAudioRecorder do rejestrowania danych wejściowych za pośrednictwem mikrofonu, korzystając z poniższego słownika ustawień.
NSMutableDictionary *settings = [[NSMutableDictionary alloc] init];
[settings setValue:[NSNumber numberWithInt:kAudioFormatLinearPCM] forKey:AVFormatIDKey];
[settings setValue:[NSNumber numberWithFloat:11025.0] forKey:AVSampleRateKey];
[settings setValue:[NSNumber numberWithInt: 1] forKey:AVNumberOfChannelsKey];
[settings setValue:[NSNumber numberWithInt:16] forKey:AVLinearPCMBitDepthKey];
[settings setValue:[NSNumber numberWithBool:NO] forKey:AVLinearPCMIsBigEndianKey];
[settings setValue:[NSNumber numberWithBool:NO] forKey:AVLinearPCMIsFloatKey];
To działa całkowicie w porządku, problem jest jednak, gdy próbuję użyć biblioteki echonest-Codegen do generowania linii papilarnych w celu identyfikacji muzyki granej w.
Nie martw się, jeśli masz nigdy wcześniej go nie używałam, w zasadzie muszę uruchomić tę funkcję:
Codegen * pCodegen = new Codegen(const float* pcm[], int number_of_samples, int samples_offset);
Gdzie const float * pcm [] jest buforem próbek. Muszę przekonwertować moje dane wejściowe na "bufor pływaków". Zostałem wskazany w dokumentacji ExtAudioFile, ale nie mają one zbytniego sensu. Czy ktokolwiek mógłby wskazać mi właściwy kierunek? Jestem kompletnie zagubiony!
Wielkie dzięki!