2021-04-03 00:50:28 +00:00
|
|
|
# Lofty
|
2021-04-23 13:27:16 +00:00
|
|
|
[![GitHub Workflow Status](https://img.shields.io/github/workflow/status/Serial-ATA/lofty-rs/CI?style=for-the-badge&logo=github)](https://github.com/Serial-ATA/lofty-rs/actions/workflows/ci.yml)
|
2021-04-23 22:12:55 +00:00
|
|
|
[![Downloads](https://img.shields.io/crates/d/lofty?style=for-the-badge&logo=rust)](https://crates.io/crates/lofty)
|
|
|
|
[![Version](https://img.shields.io/crates/v/lofty?style=for-the-badge&logo=rust)](https://crates.io/crates/lofty)
|
2021-04-23 02:11:04 +00:00
|
|
|
[![Documentation](https://img.shields.io/badge/docs.rs-lofty-informational?style=for-the-badge&logo=read-the-docs)](https://docs.rs/lofty/)
|
2020-10-25 16:29:14 +00:00
|
|
|
|
2021-06-21 03:24:59 +00:00
|
|
|
Parse, convert, and write metadata to various audio formats.
|
2020-10-27 02:08:05 +00:00
|
|
|
|
2021-04-04 03:15:06 +00:00
|
|
|
## Supported Formats
|
2020-10-25 21:39:38 +00:00
|
|
|
|
2022-03-16 20:59:55 +00:00
|
|
|
| File Format | Metadata Format(s) |
|
|
|
|
|-------------|--------------------------------------|
|
|
|
|
| Ape | `APEv2`, `APEv1`, `ID3v2`\*, `ID3v1` |
|
|
|
|
| AIFF | `ID3v2`, `Text Chunks` |
|
|
|
|
| FLAC | `Vorbis Comments`, `ID3v2`\* |
|
|
|
|
| MP3 | `ID3v2`, `ID3v1`, `APEv2`, `APEv1` |
|
|
|
|
| MP4 | `iTunes-style ilst` |
|
|
|
|
| Opus | `Vorbis Comments` |
|
|
|
|
| Ogg Vorbis | `Vorbis Comments` |
|
|
|
|
| Speex | `Vorbis Comments` |
|
|
|
|
| WAV | `ID3v2`, `RIFF INFO` |
|
|
|
|
|
|
|
|
\* The format does not officially support ID3v2, so the tag will be **read only**
|
2020-10-25 21:39:38 +00:00
|
|
|
|
2021-12-20 14:44:38 +00:00
|
|
|
## Examples
|
2021-12-12 17:47:26 +00:00
|
|
|
|
2021-12-20 14:44:38 +00:00
|
|
|
* [Tag reader](examples/tag_reader.rs)
|
|
|
|
* [Tag stripper](examples/tag_stripper.rs)
|
2021-12-20 15:58:00 +00:00
|
|
|
* [Tag writer](examples/tag_writer.rs)
|
2021-12-12 17:47:26 +00:00
|
|
|
|
2021-12-20 14:44:38 +00:00
|
|
|
To try them out, run:
|
2021-12-12 17:47:26 +00:00
|
|
|
|
|
|
|
```bash
|
|
|
|
cargo run --example tag_reader /path/to/file
|
2021-12-20 14:44:38 +00:00
|
|
|
cargo run --example tag_stripper /path/to/file
|
2022-03-16 00:52:10 +00:00
|
|
|
cargo run --example tag_writer <options> /path/to/file
|
2021-12-12 17:47:26 +00:00
|
|
|
```
|
|
|
|
|
2021-04-04 03:15:06 +00:00
|
|
|
## Documentation
|
2021-04-21 18:48:45 +00:00
|
|
|
|
2021-04-04 03:15:06 +00:00
|
|
|
Available [here](https://docs.rs/lofty)
|
|
|
|
|
2021-04-04 03:11:35 +00:00
|
|
|
## License
|
|
|
|
|
|
|
|
Licensed under either of
|
|
|
|
|
|
|
|
* Apache License, Version 2.0
|
|
|
|
([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
|
|
|
|
* MIT license
|
|
|
|
([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)
|
|
|
|
|
|
|
|
at your option.
|
|
|
|
|
|
|
|
## Contribution
|
2020-10-25 16:29:14 +00:00
|
|
|
|
2021-04-04 03:11:35 +00:00
|
|
|
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.
|