Roadmap
Basic features
- ☑ Real-time streaming with guaranteed latency
- ☑ Session multiplexing
- ☑ Dynamic sample rate adjustment
- ☑ Static sample rate conversion
- ☑ Packet interleaving
- ☑ Stream breakage detection
- ☑ RTP support
- ☑ FECFRAME support (Reed-Solomon and LDPC-Staircase FEC codes based on OpenFEC)
- ☐ RTCP support for receiver feedback
- ☐ Session negotiation
- ☐ Configurable network encodings
- ☐ Opus support
- ☐ Service discovery
Advanced features
- ☐ Dynamic latency adjustment (requires RTCP)
- ☐ Dynamic adjustment of FEC block size (requires RTCP)
- ☐ Dynamic adjustment of FEC code rate (requires RTCP and XRs from RFC 5725)
- ☐ Dynamic audio bitrate adjustment
- ☐ Dynamic payload type switch
- ☐ QoS support
- ☐ Encryption (likely SRTP)
- ☐ Packet loss concealment
- ☐ Lip sync support
- ☐ Multicast support
- ☐ Multi-room support (requires some research)
- ☐ Surround sound
- ☐ Congestion control
- ☐ Retransmission (probably RFC 4588 and RFC 4585)
- ☐ More FEC codes (notably RaptorQ, see OpenRQ and orq)
- ☐ More audio encodings (lossless and lossy)
- ☐ Video support (requires some research)
- ☐ Hardware acceleration (maybe OpenMAX)
API
- ☑ Transport API (network sender and receiver)
- ☐ Audio API (recorder and player)
- ☐ Control API
- ☐ Discovery API (publisher and explorer)
- ☐ Packet API (packet encoder and decoder)
Integrations
- ☑ Roc-based transport for PulseAudio
- ☐ Roc-based service discovery for PulseAudio
- ☐ Bindings for various languages
Portability
- ☑ Linux, including Raspberry Pi and clones
- ☐ Other *nix systems
- ☑ macOS
- ☐ Android
- ☐ Windows