audio: render only the frames PipeWire requests per cycle
The process callback filled the whole mapped buffer every cycle. PipeWire sizes that buffer by clock.quantum-limit (8192 frames by default) while the graph drives galdr at the 256-frame quantum we ask for, so each cycle did ~32x the work and everything past the quantum was dropped: choppy output, constant deadline misses in pw-top, and envelopes that sounded 32x faster than their settings. Use Buffer::requested (pipewire feature v0_3_49), clamped to the buffer, with the --latency value as fallback. tui: typing a glyph no longer advances the cursor to the right. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
392ceceeff
commit
f9f06568bf
+1
-1
@@ -11,7 +11,7 @@ codegen-units = 1
|
||||
|
||||
[dependencies]
|
||||
anyhow = "1"
|
||||
pipewire = "0.10"
|
||||
pipewire = { version = "0.10", features = ["v0_3_49"] } # Buffer::requested
|
||||
midir = "0.10"
|
||||
arc-swap = "1.7"
|
||||
rtrb = "0.3"
|
||||
|
||||
Reference in New Issue
Block a user