Roland0 wrote: > You can basically do this with 'LMS Essentia' > (https://www.nexus0.net/pub/sw/lmsessentia/) (using either extgui4lms or > the LMS Playlist Editor as a frontend) > > if you are interested in some background info regarding > musly/essentia/similarity, see 'this thread' > (https://forums.slimdevices.com/showthread.php?113483-Similarity-(Essentia)-DSTM-mixer-call-for-help)
I tried to install your plugins and was successful with some of them, but others require either systems, knowledge, or skills that I don't have at the moment. I remember using extgui4lms many years ago when it was still very new. No doubt your contributions have been important and valuable, because they helped Craig with his Similarity project. If I could figure out how to take my existing high-level Essentia JSON analysis files and have them re-processed by a Windows-based or Ubuntu-on-Windows-built tool, then I'd probably be able to proceed. cpd73 wrote: > Thinking about this some more. Would it make sense to allow creation of > 'Smart Mixes' that will select a number of tracks, allow this to be > added to the queue, and then DSTM takes over adding new tracks. DSTM, > however, would not know about the SmartMix, just that these would be the > initial songs to create mixes from. If so creating another API that > returns X songs based upon some attributes should be doable. It then > requires the plugin to implement a JSONRPC and the creation of a UI to > create these mixes. Obviously for me the UI would be created in > Material. I know SlimBrowse would allow some sort of UI creation for > this, but that's beyond my knowledge level at the mo - and as I -only- > use Material it's not of major importance to me. > > e.g. I would add a 'Smart Mixes' (or similar) entry to 'My Music' to > list current mixes, allow editing, etc. The edit dialog would allow you > to specify which attributes to use, number of tracks, and (perhaps) > order of tracks (closest to attributes, random, etc.) This makes sense to me: Mood Mixes. I also only use Material (in Chrome, Material app on Android, in SLX on Windows). It seems straightforward enough to build the API and UI to expose all low- and high-level attributes in the music-similarity.db file; that is, if one knows how to do these sorts of things. Ask users to adjust sliders to produce a range for each attribute, along with some onscreen hints that each attribute indicates the strength of the -probability- the song matches that attribute type. Gather all responses, pass those to the database, return a result. (Maybe 'maximum number of files to return' is also an attribute to pass so you're not returning thousands of entries, or if you do it's because the user specifically requested it.) The result could be a new playlist. I'd likely almost always choose 'random', but others may want them played in some order of course, what order is unknown because no attribute would be weighted more than others, so there'd be no way to rank them. Unless, that too, was something that was requested: rank by [ordered list of attributes]. For the UI, I'd convert the attribute values to 0 to 100 rather than 0 to 1, since most humans understand that easier than 0 to 1. If a user doesn't want to filter on an attribute they should allow all values by having the slider range extend from 0 to 100 the default position. Behind the scenes I would also only use the hundredths position (e.g., 0.91) and no further (e.g., 0.9152377), although rounding to 0.92 would be expected here. I wouldn't expect rounding to the hundredths position would materially (no pun intended) affect the mix. After the playlist runs out, it seems reasonable that DTSM would kick in using whatever rules are set for DTSM. ------------------------------------------------------------------------ prabbit's Profile: http://forums.slimdevices.com/member.php?userid=11142 View this thread: http://forums.slimdevices.com/showthread.php?t=115609
_______________________________________________ plugins mailing list plugins@lists.slimdevices.com http://lists.slimdevices.com/mailman/listinfo/plugins