Fix AVAudioConverter callback to prevent buffer duplication
This commit is contained in:
parent
bd6973e559
commit
42f4b93ff7
@ -169,11 +169,18 @@ class AudioEngineRecorder: ObservableObject {
|
||||
}
|
||||
|
||||
var error: NSError?
|
||||
var hasProvidedBuffer = false
|
||||
|
||||
converter.convert(to: convertedBuffer, error: &error) { inNumPackets, outStatus in
|
||||
if hasProvidedBuffer {
|
||||
outStatus.pointee = .noDataNow
|
||||
return nil
|
||||
} else {
|
||||
hasProvidedBuffer = true
|
||||
outStatus.pointee = .haveData
|
||||
return buffer
|
||||
}
|
||||
}
|
||||
|
||||
if let error = error {
|
||||
fileWriteLock.unlock()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user