G.711 (μ-law / A-law) plus optional G.729A/G.729AB, Opus and AMR-NB/AMR-WB
audio codec implementations for
rvoip. Pulled in transitively by
rvoip-media-core to provide the baseline narrow-band codec every
beta-tier SIP profile requires (RFC 3551), and the optional codecs above it.
Release-gated SIP dependency — published in the unified 0.3.x workspace
release. The G.711 implementation is RFC-compliant and table-driven, and is the
only codec in the default build; everything else is feature-gated.
| Codec | Feature | State |
|---|---|---|
| G.711 μ-law / A-law | g711, default |
RFC-compliant, table-driven |
| G.729A / G.729AB | g729 |
Annex A speech plus optional Annex B VAD/DTX/CNG; full-complexity base G.729 is not implemented |
| Opus | opus |
Backed by libopus, which must be present on the build host |
| AMR-NB | amr-nb |
All 8 modes, RFC 4867 framing, DTX, CMR |
| AMR-WB (G.722.2) | amr-wb |
All 9 modes, RFC 4867 framing, DTX, CMR |
amr enables both AMR variants; all-codecs enables everything.
Both AMR variants are complete: encoders and decoders bit-exact against the 3GPP reference implementations over the committed fixtures, the normative test sequences the reference distributions ship, RFC 4867 octet-aligned and bandwidth-efficient framing checked against Wireshark's dissector, IF1 and IF2 interface formats, DTX with both narrowband voice-activity detectors, comfort noise, homing, concealment, and live calls through Asterisk, FreeSWITCH, Kamailio and OpenSIPS.
Bit-exactness against the reference is not the same as certification, and the
evidence has boundaries worth reading before you rely on it. Both are set out
in docs/AMR_IMPLEMENTATION_STATUS.md.
No 3GPP material is redistributed in this repository. The reference sources and specifications are fetched to develop against; only generated output is committed.
You usually don't depend on this directly — depend on
rvoip-media-core which
re-exports the codec surface. If you need the codecs in isolation:
[dependencies]
rvoip-codec-core = "0.3.8"With AMR:
[dependencies]
rvoip-codec-core = { version = "0.3.5", features = ["amr"] }Licensed under the MIT license. See the repository LICENSE.