4 releases

0.1.4 May 18, 2021
0.1.2 May 17, 2021
0.1.1 May 16, 2021
0.1.0 May 15, 2021

#5 in #playlist

GPL-3.0-only

9MB
2.5K SLoC

This crate is deprecated - use bliss-audio instead.


lib.rs:

bliss is a library for making "smart" audio playlists.

The core of the library is the Song object, which relates to a specific analyzed song and contains its path, title, analysis, and other metadata fields (album, genre...). Analyzing a song is as simple as running Song::new("/path/to/song").

The analysis field of each song is an array of f32, which makes the comparison between songs easy, by just using euclidean distance (see distance for instance).

Once several songs have been analyzed, making a playlist from one Song is as easy as computing distances between that song and the rest, and ordering the songs by distance, ascending.

It is also convenient to make plug-ins for existing audio players. It should be as easy as implementing the necessary traits for [Library]. A reference implementation for the MPD player is available here

Dependencies

~16MB
~366K SLoC