1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
//! Vorbis audio encoder and decoder.
//!
//! Vorbis is a patent-free, fully open general-purpose compressed audio format
//! by the Xiph.Org Foundation. This module provides:
//!
//! - **`VorbisEncoder`** — psychoacoustic lossy encoder: window, MDCT, psychoacoustic
//! masking, floor curve, residue vector quantisation, Huffman packing.
//! - **`VorbisDecoder`** — packet decoder that reconstructs PCM from Vorbis packets.
//!
//! The implementation follows the Vorbis I specification
//! (<https://xiph.org/vorbis/doc/Vorbis_I_spec.html>).
//!
//! # Quick start
//!
//! ```rust
//! use oximedia_codec::vorbis::{VorbisEncoder, VorbisDecoder, VorbisConfig, VorbisQuality};
//!
//! let config = VorbisConfig {
//! sample_rate: 44100,
//! channels: 2,
//! quality: VorbisQuality::Q5,
//! };
//!
//! let mut encoder = VorbisEncoder::new(config).expect("encoder init failed");
//! // encode silence
//! let samples = vec![0.0f32; 4096]; // 2048 stereo interleaved samples
//! let packets = encoder.encode_interleaved(&samples).expect("encode failed");
//! assert!(!packets.is_empty() || true); // may buffer
//! ```
pub use ;
pub use ;