1
0
mirror of git://f0xx.org/android_cast synced 2026-07-29 05:17:39 +03:00
Files
android_cast/docs/ROADMAP.md
Anton Afanasyeu 7a07d6de1e short libvpx try
2026-05-18 14:25:02 +02:00

1.3 KiB
Raw Blame History

Android Cast — implementation roadmap

Stream protection (FEC / NACK)

Item Status
GF(256) ReedSolomon + ProtectionEnvelope v1 (monolithic) Done
v2 per-shard FEC (FecShardWire, one ACUD message per RS shard) Done
NACK + RetransmitCache + MSG_NACK Done
Post-handshake negotiation Done
Backward compat (defer FEC until negotiated; ignore foreign FEC/NACK) Done
Default protection NONE (stable cast) Done
Integration tests (FecShard*, UdpCastTransportFecTest) Done
Lab soak under loss (HY300 / BL6000) TODO (manual)
NACK rate limit / backoff Done (NackRateLimiter)
MSG_FEC_NACK by groupId (optional) Deferred

Enable in Settings → Stream protection (UDP) on both sender and receiver, then reconnect.

libvpx / Opus / Speex

Item Status
libandroidcast_codecs.so + JNI probes Done
Cross-compile libvpx.a (scripts/build-native-codecs.sh) Script ready (needs submodule + NDK build)
JNI encode in libvpx_bridge.c Done (when ANDROIDCAST_LIBVPX_LIB set)
LibvpxVideoEncoderSink (buffer / calibration path) Done
libvpx decoder on receiver TODO
Opus / Speex build + sinks TODO

See ndk/README.md.