HydraIssues

pyrowave: x50 bitrate weight starved the alpha stream
closed unclassified Project: hydra Parent: #388 Reporter: 14 Sep 2026 23:06

Description

FIXED in hydra-wivrn da044cab (branch pyrowave).

split_bitrate() divides a FIXED client-set bitrate budget across the three streams (left, right, alpha) by relative weight. The prototype branch gave pyrowave a x50 weight. Because both eyes use the same codec the multiplier cancels between them, so its only real effect was to crush the alpha stream: at a 200 Mbit/s budget alpha received 0.05 Mbit/s, which is 555 bits per frame at 90 fps.

Symptom: the client intermittently logged "Failed to find a common frame for all decoders" with the alpha decoder empty, and stalled. Measured 46 such warnings in one Quest 2 session.

Fix: weight pyrowave like the other codecs. Each eye loses 1.2 Mbit/s (99.98 -> 98.77) and alpha gets a usable 2.47 Mbit/s.