Jump to content
LaunchBox Community Forums

Any way to swap cover art in bulk?


Recommended Posts

Is it possible to swap out media files on the android app in bulk? I successfully moved LB's data folders to my NAS and deleted the local files on my Nvidia shield, but I'm having trouble modifying them. You'd think that simply swapping the image files would work as long as the names are the same. LB states that they exist, but displays a blank image. 

To make things more complicated, the art I want to use is in a different format, PNG. I tried modifying an entry in the platform's XML file (Data/Platforms/Nintendo Game Boy Color.xml) to use the png. Same result, image exists but appears invisible. Strangely, when I tried copying another game's jpg and renaming it, LB downloaded and used a new version of the cover, but I can't find where it went for the life of me. It didn't overwrite anything in the data folder, which makes me think the cache is interfering. 

The option to manually choose a new image DOES work properly, and creates a new thumbnail. The problem is that I have a massive library, and don't have the time or patience to go through thousands of games individually, browsing to every replacement image. 

Any help with this would be appreciated! 

Link to comment
Share on other sites

@Zkyo This is definitely something that can be improved in the Android app. In an effort to keep things fast and simple, the XML files have to be updated when media files change, unlike on the desktop. Performance would be poor if we scanned the media files themselves every time. If you have a desktop LaunchBox installation, it would best to use the export feature to do this kind of thing. I don't think there's an easy way to do it otherwise, unfortunately.

Link to comment
Share on other sites

Thanks, I was not aware of that feature. I just used it, and it will help considerably, though I do have a few suggestions. As for the images not updating properly, I think I found the cause. I think it's an issue with how the nvidia shield mounts network drives; I'll be asking about it on their forums shortly. When I edit the contents of a file on my NAS, the shield's mounted version would not update, but creating or deleting a file does. It works properly the other way around. Editing a file on the shield's mount updates the NAS copy. That explains why I was having trouble editing the .xml files: any changes I made were not being passed onto the shield unless the file was created or deleted. I'm not sure how exactly, but I think that's why modified images were appearing blank. While playing around with the issue, I somehow made a desynced txt file that the shield saw as 40kb but completely empty, while 20kb on the NAS.


But anyway, I have a couple suggestions for migrating files to the android version:

-When exporting, have an advanced option to NOT copy game files, instead modify the initial part of the directory. Could also apply to images, if you want to store them in another location. To be honest, I think this only really applies to the nvidia shield. I don't know of any other android devices that are able to easily mount network drives. I've only got a basic understanding of networking, so I could be wrong.
\\MY-SERVER\Roms\NES\USA\file.zip -> storage/MY-SERVER/Roms/NES/USA/file.zip
\\MY-SERVER\Roms\NES\ROMHACK\file.zip -> storage/MY-SERVER/Roms/NES/ROMHACK/file.zip

-When picking image categories to import, add an option to substitute another image category. In my case, I wanted to use Box-3D on the android app in place of the Box-Front. The 3D boxes are PNG and use transparency, so I couldn't simply swap files. I got around this by backing up both categories, deleting all Box-Front, moving Box-3D into the Box-Front directory, rescanning the entire library's media, exporting to android (which also created thumbnails of the 3D boxes), restoring the backup, and rescanning again.

-I noticed that after exporting to android, one line in the Nintendo Game Boy Color.xml file (first entry, for the platform description) kept the windows folder structure. I have no idea if this makes any difference, just thought I'd point it out.
<Folder>\\My-SERVER\Games\ROMS\Nintendo Handheld\Gameboy Color</Folder>

  • Like 1
Link to comment
Share on other sites

@Zkyo Thanks for the notes. It sounds like the Shield's implementation of network storage is lacking (but I guess that's no surprise considering how much of a trainwreck Nvidia's whole OS implementation has been as of late).

I've added the requests to my list. The folder path doesn't really matter on Android, but still should probably be updated, so that's on the list as well. Thanks!

  • Thanks 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...