Add --flush option to reduce stdout buffering latency

This commit is contained in:
phritz
2026-01-24 10:36:58 -06:00
parent a311cc583f
commit 0b1ba5c8cd
2 changed files with 14 additions and 2 deletions
@@ -1,10 +1,18 @@
import Foundation
public class BinaryAudioOutputHandler: AudioOutputHandler {
private let flushAfterWrite: Bool
public init(flushAfterWrite: Bool = false) {
self.flushAfterWrite = flushAfterWrite
}
public func handleAudioPacket(_ packet: AudioPacket) {
// TODO: should we use a DispatchQueue instead of writing directly?
// Write raw binary audio data directly to stdout
FileHandle.standardOutput.write(packet.data)
if flushAfterWrite {
fflush(stdout)
}
}
public func handleMetadata(_ metadata: AudioStreamMetadata) {