2016-04-19 3 views
2

Я работал над проектом iOS, где я пытаюсь разбить аудиофайл, чтобы каждый отдельный канал можно воспроизводить отдельно. Прямо сейчас я открываю аудиофайл и копирую данные в AVAudioPCMBuffer, где я буду разделять данные.Разделение аудиоканалов iOS

Сейчас я тестирую файл mp3, и до тех пор, когда я копирую аудиоданные в буфер, все содержимое буфера инициализируется 0. Это должно произойти?

let fileURL = NSURL(string: path!) 
    let audioFile = try! AVAudioFile(forReading: fileURL!) 
    let frameCount = UInt32(audioFile.length) 

    let buffer = AVAudioPCMBuffer(PCMFormat: audioFile.processingFormat, frameCapacity: frameCount) 

    do { 
     try audioFile.readIntoBuffer(buffer, frameCount: frameCount) 
    } catch { 
     print("No data") 
    } 

Я все еще достаточно новый для работы с iOS и знаю, что я могу идти об этом неправильно, так что я бы очень признателен за любую помощь.

ответ

0

Значения, возвращаемые в буфере, очень малы. Если вы их округлите, то они будут равны нулю.

Чтобы узнать, работает ли он правильно, умножьте их на большое целое число.

Смежные вопросы