The building a library/organizing - minidlna has handled that well, it scanned through my music and exposes Albums/Artist/Genre listings, not only the folder browser, and searching also works good. For now.
I am now looking to improve the quality of my music library so I am using beets to organize it right now, it corrects tags, fingerprint, deduplicate, fetch covers and so on. Its a tedious process because I do help it manually. Once its done, Ill use beetFs to expose the beets database of the collection on a new mountpoint, and thats where Ill point minidlna. That way beets wont need to change the tags on disk (screwing up the torrents hashes), or copy/move files around. But minidlna will get served the corrected tags through beetFs.
Its quite nice to just easily access huge music library on smartphone, good search and nice browsing, then download whatever artists or albums I like to the phone, or listen to, or select my brothers TV to play them on when Im at his house. Basically all of this functionality is in UPnP-av/DLNA with implementation by minidlna and UPnPlay.
Ive yet to setup a nice gallery/picture thing.
Ill get back to you once Ive made the blogpost (any suggestion where I can just write this and leave it there, github?), I made it sound easy, but I see thats because Ive spent the last few days playing with these stuff, have been trying out mediatomb, ushare and coherence too as servers, but as you say I wasnt pleased with their indexing.