Skip to main content

musefs_format/
lib.rs

1mod convert;
2mod error;
3pub mod flac;
4mod input;
5mod layout;
6pub mod mp3;
7pub mod mp4;
8pub mod ogg;
9pub mod probe;
10mod size;
11mod tagmap;
12mod vorbiscomment;
13pub mod wav;
14
15#[cfg(any(test, feature = "fuzzing"))]
16pub mod fuzz_check;
17
18pub use error::{FormatError, Result};
19pub use input::{
20    ArtInput, BinaryTagInput, BlobLen, EmbeddedBinaryTag, EmbeddedPicture, PictureType, TagInput,
21};
22pub use layout::{LayoutError, RegionLayout, Segment};
23pub use ogg::{Codec, OggHeader, OggScan};
24pub use probe::Extent;
25pub use vorbiscomment::is_valid_key as is_valid_vorbis_key;
26
27// tagmap is pure &str→key mapping with no byte parsing and is already exercised
28// indirectly by the per-format fuzz targets (which pass arbitrary tag keys through
29// synthesize_layout), so no dedicated tagmap fuzz target is needed.
30#[cfg(feature = "fuzzing")]
31pub use mp3::build_id3v2_segments;
32#[cfg(feature = "fuzzing")]
33pub use vorbiscomment::parse as parse_vorbis_comment;