2017-03-28 06:19 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0003990MPDMPDpublic2017-02-08 11:34
Assigned Tocirrus 
PrioritynormalSeverityfeatureReproducibilityhave not tried
Product Version 
Target VersionFixed in Versiongit 
Summary0003990: Ability to get portions of the db based that has been sorted in user speicified order
DescriptionCurrently vimpc:


Allows you to look at the entire db as a flat list of songs (see the browse tab). Which is sortable and searchable with regular expressions.

(if you want to actually try it, run the client, type :browse<Enter> then /some_regex_here_that_will_match_a_song<Enter>)

If you search anything (which can be either when you hit enter or as you type), you will jump forward to that match and see the songs (with context.. album/artist/whatever) which surround this one, according to a sort order that the user has specified.

The only way that I know that I can provide this behaviour and interface is through acquiring the entire db.

I suspect I would need a way to not only get small portions of the db, starting from a particular offset based on any sort that I wish, but also to get a particular portion (based on the same sort) starting from a given songs id also?
TagsNo tags attached.
Attached Files

has duplicate 0004513closedcirrus Allow sorting of results of a listall command 



cirrus (administrator)

How does such an "offset" look like? How is a client supposed to address "portions of the db"? In a way that is compatible with different database plugins, such as UPnP?


boysetsfrog (reporter)

I have no idea how the database plugins work, so I am not really sure how to respond to that. Sorry. By offset, I am purely referring to an index/position within the db (sorted db?), plus a size so as an example command could be

sort album,artist,title
listinfo 1:100

sort album,artist,title
listinfo 1:100,1000:2000


sort album,artist,title
search some.*regex

which would give you the meta for songs (including their index/pos) that are within the sorted results, starting with index 1 up to index 100.

So I guess what I am saying really, is I want an arbitrary sort, but allowing for me to only get partial results of that sort as I please. And (possibly?) have results of the commands that already exist apply to the sorted db (i.e in order) as in the exmaple, until you end the sort. I recognise that this would probably add considerable overhead, but I can't think of anyway to do this without just getting the db, or without allowing for mpd to sort everything in a user specified order.

Hopefully that explains what I mean?


cirrus (administrator)

"Portions" of search/find can be requested, see commit f37481f843c3ae7aa0c43591c9c7fc4a501c1f5b


cirrus (administrator)

Sorting implemented in 38507165221cdf0cc5c76020658b8c69d2a31dbe

-Issue History
Date Modified Username Field Change
2014-04-23 13:39 boysetsfrog New Issue
2014-04-24 10:55 cirrus Note Added: 0008419
2014-04-29 11:56 boysetsfrog Note Added: 0008452
2014-04-29 12:13 cirrus Severity minor => feature
2014-11-18 17:13 cirrus Note Added: 0009113
2016-04-06 19:21 cirrus Relationship added has duplicate 0004513
2017-02-08 11:31 cirrus Note Added: 0010311
2017-02-08 11:34 cirrus Assigned To => cirrus
2017-02-08 11:34 cirrus Status new => resolved
2017-02-08 11:34 cirrus Resolution open => fixed
2017-02-08 11:34 cirrus Fixed in Version => git
+Issue History