lofty-rs
tag
Our great sponsors
lofty-rs | tag | |
---|---|---|
1 | 2 | |
158 | 535 | |
- | - | |
9.6 | 4.5 | |
3 days ago | 13 days ago | |
Rust | Go | |
Apache License 2.0 | BSD 2-clause "Simplified" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
lofty-rs
-
OT: FLAC is a really clever file format. Why can't everything be that clever?
Note: For audio tags there is a great rust crate called lofty
tag
-
Generic audio metadata read and write library
Most music managers on Linux seem to be rapidly disappearing, and so I'm having to say goodbye to my beloved Banshee. Since I don't really love my other options and in general people seem to not like locally saved (and bought) music with a music manager anymore, I'm playing it safe and making my own. I've chosen most of my libraries and done some small tests, but a hurdle that remains is metadata. Sadly, beyond MP3's ID3 tag system, there's custom stuff for a bunch of formats/containers, including ogg/opus, flac, and m4a. https://github.com/dhowden/tag seems to be my safest bet for reading. It has very wide support and an active community. Writing seems to be an ongoing struggle however, and I can't seem to find anything that really works. It would be weird that you can't fix a typo in an album name, update a genre or split up between the album artist and track artist. Does anyone have any suggestions?
-
Would you prefer cgo or os/exec to interface with C software?
Ok think i would either use some metadata library like https://github.com/dhowden/tag or ffprobe with JSON output to read metadata and then use cli ffmpeg to transcode and write metadata. Maybe later if you feel it does not give you enough control maybe concider using some cgo libavformat/libavcodec wrapper.
What are some alternatives?
Symphonia - Pure Rust multimedia format demuxing, tag reading, and audio decoding library
ydls - youtube-dl HTTP download and transcode service
lltag - Automatic command-line mp3/ogg/flac file tagger and renamer
imagorvideo - imagor video thumbnail server in Go and ffmpeg C bindings
ni-media - NI Media is a C++ library for reading and writing audio streams.
WahWah - Ruby gem for reading audio metadata
dano - A hashdeep/md5tree (but much more) for media files
Mp3Info - The fastest PHP library to extract mp3 meta information (duration, bitrate, samplerate and so on) and tags (id3v1, id3v2).
tinytag - Python library for reading audio file metadata, duration of MP3, OGG, OPUS, MP4, M4A, FLAC, WMA, Wave, AIFF and a few more
audio-metadata - A library for reading and, in the future, writing audio metadata. https://audio-metadata.readthedocs.io/
music-metadata-browser - Browser version of music-metadata parser Supporting a wide range of audio and tag formats.
go-mp4 - Go library for reading and writing MP4 file