Skip to content

Serial-ATA/lofty-rs

Lofty logo

Lofty

Parse, convert, and write metadata to various audio formats.

GitHub Workflow Status Downloads Version Documentation GitHub Sponsors

⚠️ LOOKING FOR HELP WITH DOCUMENTATION ⚠️

I'm looking for help with the refinement of the docs. Any contribution, whether it be typos, grammar, punctuation, or missing examples is highly appreciated!

Supported Formats

File Format Metadata Format(s)
AAC (ADTS) ID3v2, ID3v1
Ape APE, ID3v2*, ID3v1
AIFF ID3v2, Text Chunks
FLAC Vorbis Comments, ID3v2*
MP3 ID3v2, ID3v1, APE
MP4 iTunes-style ilst
MPC APE, ID3v2*, ID3v1*
Opus Vorbis Comments
Ogg Vorbis Vorbis Comments
Speex Vorbis Comments
WAV ID3v2, RIFF INFO
WavPack APE, ID3v1

* The tag will be read only, due to lack of official support

Examples

To try them out, run:

cargo run --example tag_reader /path/to/file
cargo run --example tag_stripper /path/to/file
cargo run --example tag_writer <options> /path/to/file
cargo run --example custom_resolver

Documentation

Available here

Testing

As some formats are complex, Lofty makes use of test-log to get the detailed debug/trace logging for failures. To run the tests, do:

RUST_LOG=trace cargo test

Benchmarking

There are benchmarks available here. To run them, do:

cargo bench

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Sponsor this project

 

Contributors 30

Languages