riff_wave_core/lib.rs
1//! Sans-IO RIFF/WAVE (PCM) mux and demux — no OS I/O, no Mediaway types.
2//!
3//! - [`Muxer`] buffers pushed PCM samples and writes a complete RIFF/WAVE file on
4//! [`Muxer::finish`] — RIFF's `data` chunk size must be known before the header is
5//! written, so (unlike `iso-bmff`'s fragmented fMP4 output) there is no incremental
6//! flush here.
7//! - [`parse`] reads a complete RIFF/WAVE buffer back into a [`WaveFormat`] and raw
8//! PCM [`bytes::Bytes`] payload.
9
10#![forbid(unsafe_code)]
11
12mod demux;
13mod error;
14mod mux;
15mod types;
16
17pub use demux::parse;
18pub use error::Error;
19pub use mux::Muxer;
20pub use types::{SampleFormat, WaveFormat};