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