  Real-time streaming communication requires a high quality of service despite
contending with packet loss. Streaming codes are a class of codes best suited
for this setting. A key challenge for streaming codes is that they operate in
an "online" setting in which the amount of data to be transmitted varies over
time and is not known in advance. Mitigating the adverse effects of variability
requires spreading the data that arrives at a time slot over multiple future
packets, and the optimal strategy for spreading depends on the arrival pattern.
Algebraic coding techniques alone are therefore insufficient for designing
rate-optimal codes. We combine algebraic coding techniques with a
learning-augmented algorithm for spreading to design the first approximately
rate-optimal streaming codes for a range of parameter regimes that are
important for practical applications.
