[package]
name = "audio-codec"
version = "0.4.13"
edition = "2024"
rust-version = "1.89"
authors = ["jinti<shenjindi@fourz.cn>"]
description = "A collection of VoIP audio codecs in pure Rust, including G.711, G.722, G.729, and Opus."
license = "MIT"
repository = "https://github.com/restsend/audio-codec"
readme = "README.md"
keywords = ["sip", "voip", "telephony", "webrtc", "no-std"]
categories = ["multimedia", "no-std"]
[features]
default = ["std", "opus", "g729"]
std = ["g729-sys?/std", "opus-rs?/std", "opus-rs?/heap", "fearless_simd/std"]
opus = ["dep:opus-rs", "opus-rs/libm"]
g729 = ["dep:g729-sys"]
[lib]
crate-type = ["rlib"]
[dependencies]
g729-sys = { version = "0.3.0", optional = true, default-features = false }
opus-rs = { version = "0.1.39", optional = true, default-features = false }
libm = { version = "0.2", default-features = false }
fearless_simd = { version = "1.1", default-features = false, features = ["libm"] }
[dev-dependencies]
criterion = { version = "0.8.2", features = ["html_reports"] }
opusic-sys = "0.7.3"
[[bench]]
name = "codec_bench"
harness = false
required-features = ["std"]
[[example]]
name = "wav_to_opus"
required-features = ["std", "opus"]
[[example]]
name = "filetrack_test"
required-features = ["std", "opus"]