sim-lib-stream-file 0.1.0

File-backed source and sink adapters for STREAM 6.
Documentation
#![forbid(unsafe_code)]
#![deny(missing_docs)]
//! File-backed source and sink adapters for STREAM 6.
//!
//! The crate keeps host filesystem access behind explicit stream file
//! capabilities and records each read or write as a KERNEL 6 filesystem effect.
//! SMF support reuses the in-tree MIDI file codec; WAV support is limited to
//! canonical little-endian PCM16 RIFF/WAVE because that is the PCM packet format
//! implemented by the stream audio layer.

mod cap;
mod cassette;
mod effect_io;
mod midi;
mod wav;

pub use cap::{stream_file_read_capability, stream_file_write_capability};
pub use cassette::{
    cassette_expr_to_stream, cassette_to_stream, stream_to_cassette, stream_to_cassette_expr,
    validate_cassette_fixture_path,
};
pub use midi::{
    read_smf_stream, smf_bytes_to_stream, smf_file_to_stream, stream_to_smf_bytes,
    stream_to_smf_file, write_smf_stream,
};
pub use wav::{
    WavStream, pcm_buffers_to_wav_bytes, read_wav_stream, stream_to_wav_bytes, wav_bytes_to_stream,
    write_wav_stream,
};

#[cfg(test)]
mod tests;