2016-04-19 6 views
2

Ich habe an einem iOS Projekt gearbeitet, in dem ich versuche, eine Audiodatei zu teilen, damit jeder einzelne Kanal separat abgespielt werden kann. Im Moment öffne ich die Audiodatei und kopiere die Daten in eine AVAudioPCMBuffer, wo ich die Daten trennen würde.Audiokanäle teilen iOS

Im Moment bin ich auf eine mp3 Datei testen und soweit ich die Audiodaten in den Puffer kopieren alle Inhalte des Puffers sind initialisiert auf 0. Soll das passieren?

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") 
    } 

Ich bin noch ziemlich neu mit iOS zu arbeiten und weiß, dass ich über diese schief gehen kann, so würde ich sehr zu schätzen jede Hilfe.

Antwort

0

Die im Puffer zurückgegebenen Werte sind sehr klein. Wenn Sie sie runden, werden sie Null sein.

Um zu sehen, ob es richtig funktioniert, multiplizieren Sie sie mit einer großen Ganzzahl.