$ npm install media-library
var MediaLibrary = require('media-library');
var library = new MediaLibrary({
// persistent storage location (optional)
dataPath: './',
// the paths to scan
paths: [ 'C:\\data\\music', 'C:\\Users\\me\\music' ]
});
// Scanning files (only needed at first start and when paths are added)
library.scan()
.on('track', (track) => {
console.log(`track: ${track.artist} - ${track.title}`);
})
.on('done', () => {
// listing all tracks
library.tracks((err, tracks) => console.log(tracks));
// listing artists
library.artists((err, tracks) => console.log(tracks));
// searching tracks
library.findTracks({ artist: 'radiohead', title: 'ok' }, (err, tracks) => {
console.log(tracks);
});
});
-
Handle compilations
Could auto detect by AlbumArtist and/or heuristic + manual setting