I have been trying resolve this for a while and think I have a solution. My library structure is a folder called music containing individual folders for each artist, each of which have subfolders for their albums. Each album folder has embedded cover art. I used mediaelch to scan my library and add artist image (folder.jpeg) to each artist folder and a album art image (cover.jpeg) to each album folder.
When I open the volumio interface in a browser and browse to music library I see all the artist images fine. But when I browse artists I get a volumio created default image. This suggests the browse artist view is looking elsewhere for the images. I cleared the image cache in volumio and and browser cache and looked at data/albumart/folder and data/albumart/web and both were empty.
When I used the browser to browse music library, the data/albumart/folder became populated with a folder structure that mirrored my library. In the artist folder of this structure was a file called extralarge.jpeg which was an automatic renaming of the artist picture in my artist folder. So far so good.
When I browsed to artists the data/albumart/web folder became populated with a folder structure of artist names formatted with spaces and special characters like & and + replaced by %20 etc. These folders only contained info.json file. So browse artists seem to use web cache to display images. I copied the artist image from data/albumart/folder to the appropriate subfolder under data/albumart/web and edited the json file to reflect the correct filename. I cleared the browser history and reloaded the browse artist view and voila the artist image appears. Therefore the browse artists view gets its images from the data/albumart/web folder.
So is it possible that when the cache for data/albumart/folder is being created that it also populates the data/albumart/web folder at the same time, and the json files contain the proper filename data?