Metadata Improvements in EmulationStation
-
@mattrixk Just sent you the doc. You might want to remove your email from your post to prevent spam :). I also made a few comments on your doc. I agree with basically everything you wrote, with the exception of database versus XML. Currently, gamelists are stored in XML and I (and @fieldofcows too, I think) want to replace that with a SQL database. It's a big undertaking, but it'll give us a lot more power as users and for you as a theme designer. Functionality wise, I think we're pretty much on the same page.
-
@MWGemini I'm happy to read it over. My email address is on my github page.
-
@sselph Just shared it with you as well :).
-
@MWGemini said in Metadata Improvements in EmulationStation:
Currently, gamelists are stored in XML and I ... want to replace that with a SQL database.
I don't really have much of a stake in the XML vs DB argument. I'm happy to go with whatever is suggested by the people who know what they are talking about. From what I've gathered, XML is lot easier to edit/add info than a database, but the DB allows faster loading/categorisation of info? Would using DB change how themes are made? Would they still be made in XML?
I was thinking if we went ahead with all of the extra filters/tags and metadata, that we would possibly need some kind of separate program to handle it all, be it web-based or desktop based. I know amadeus has his Retropie Metadata Editor for Windows. I haven't had the chance to look into it, but maybe something like that would be of use.
-
@mattrixk Two questions there. First, the XML vs DB argument applies only to the game lists. Themes would still be in XML. XML is more human readable, yes, but for doing large and advanced edits, it's really not ideal or easy. From a performance standpoint and from a feature standpoint, a database is the best option for storing data about the games. Themes will continue to work as they currently do.
As for making a separate program to actually create and edit themes, I think that is a great idea, and probably would not be very difficult. That would allow theme designers to visually create and edit themes (or at least see a preview of what the changes would look like), without needing to keep copying it to the Pi and reloading it.
The bigger question is what information do we want to store in the database and make accessible to users, theme designers, etc. I tend to lean in the direction of more data is better, and let individual theme designers and users decide what subset of that data they want to use.
-
That would allow theme designers to visually create and edit themes (or at least see a preview of what the changes would look like), without needing to keep copying it to the Pi and reloading it.
Yes, all of my yes.
-
@MWGemini said in Metadata Improvements in EmulationStation:
As for making a separate program to actually create and edit themes, I think that is a great idea, and probably would not be very difficult. That would allow theme designers to visually create and edit themes (or at least see a preview of what the changes would look like), without needing to keep copying it to the Pi and reloading it.
I use a portable Windows version of ES that @herb_fargus created a while ago. It works great, but as it's only ES, not RetroPie, and doesn't keep up to date with updates, it's not much use for testing out newer stuff like Video Preview or Grid View.
I've had RetroPie set up on Ubuntu within a virtual machine, but it was so awkward to do anything, took up way too much space (having to set up an entire operating system for a single program is very inefficient) and I just simply dislike Ubuntu (a lot. I had to use it for work for almost a year).
If someone wants to make a hassle-free version of RetroPie that runs on windows (without me having to compile and all that stuff I don't understand) the same way that Herb's portable ES does, then that would be awesome.
Edit
I forgot to say: when I was talking about a program, I meant one that we can use to sort out the metadata and filters, not for theme making, however like I said above, if anyone wants to make a simple portable Windows RetroPie, it would be awesome -
@mattrixk no such thing. Retropie is Linux, windows is windows. You can hack a few batch scripts together to try and replicate it but would be a monumental task and still won't work the same. Would be simpler to just run a live USB with Ubuntu or to dualboot your pc
Closest you could get is libretro emulators and maybe a Windows compilation of the retropie ES but won't have runcommand etc
-
@mattrixk Yes , like @herb_fargus said, a portable retropie for windows it's impossible, but I compiled the latest ES build for windows without too much problems.
Emulationstation is portable itself.
I actually don't have retropie or rpi, I do all my work on windows, but I deleted the latest build, and go back to old fieldofcows fork because has more stuff like nosplashscreen and other things.
Of course i'll try to build the latest ES for windows with all the new metadata improvements and all the new stuff (when released), so I can upload a compiled version for themers or people that want to test without sacrifice their rpi builds.
-
@herb_fargus, @Nismo: Thanks for the info guys. Thinking about it, I guess I don't really need a Windows copy of RetroPie, considering all of these changes are being made to EmulationStation. So all I really need is a Windows version of ES that has the new stuff in it.
I mentioned before I'm using Herb's portable ES... I downloaded it and then ripped out all the Retroarch stuff. It can't be used for games anymore, but it's also 100MB or so smaller and doesn't have the millions of small Retroarch files to get in the way if I need to move it to another folder or something.
Of course i'll try to build the latest ES for windows with all the new metadata improvements and all the new stuff (when released), so I can upload a compiled version for themers or people that want to test without sacrifice their rpi builds.
That would be awesome, thanks @Nismo.
-
@mattrixk There's a windows version with video support if you want to download it.
https://github.com/fieldofcows/EmulationStation/releases/tag/v0.1-beta.7
I hope this helps.
-
Hmm... 10 minutes before I leave work... do I have time... bugger it, yeah I've got time. Cheers @Nismo, I'll check it out.
-
Oh, I need to set up the config file. Maybe I'll have some time over the weekend, because I am outta here! Home time makes me happy. Happy Friday arvo everyone!
-
@mattrixk @Nismo @fieldofcows If there's enough interest, I can try to set up automated builds through Travis-CI (https://travis-ci.org/) or something similar. I'm a big fan of automating menial tasks, good test coverage, and continuous integration :).
-
@MWGemini Would be nice, thank you very much. Anyway I need to try to compile it by myself because I translate ES to my native language.
-
UXS is 'higly' parametrable (don't know if this word exist^^)
So I can generate New profile to create XML files with lot's of new node and new metadata or media.
But (for now) I can only generate XML... So I really don't know how to implement data directly in a DB from the scraper...But I'm open to every modification I can make to UXS ;)
If you want this is My email :
screech_@free_.fr (Not so affraid about spam ;) but just delete '_' ^^) -
-
@MWGemini I translate it to spanish and it's a hard work, there are a lot of files to be edited in the source code, anyway if you still want to compile it in 2 languages, I can translate the source code files and send to you a "translate source code" to compile.
I hope in the near future we can have a commit that include the ES strings in a strings.xml or something like that for easy translate ES to other languages, also it's nice for kids that doesn't speak english.
@screech I really, absolutely really apreciate the work you are doing with UXS, very nice work.
Thank you both.
-
@screech I love your scraper. I had very little trouble setting up a Scrape Profile that downloads box art, fan art, screenshot, wheel/logo and a video for each ROM in a system, appends "-boxart", "-fanart", "-screenshot", "-logo" and "-video" to the file name and then creates a gamelist.xml that spits out
<boxart>
,<fanart>
,<screenshot>
etc. I even have it set so you can choose 2D or 3D box art, and if you want normal, black or chrome wheel/logo art.The only things I need for it now are being able to download different sized images within the one Scrape Profile, and fixing the bug where it wasn't getting all the images (even though the Mix profile gets them). Both of these are things I've already mentioned in the other thread.
Maybe the gurus here will be able to come up with a way to automatically import xml files into the database. I think we'd have to agree on a standardised naming system at some point, just to help things go smoothly.
-
@MWGemini I've never heard of Travis CL? What is it/what does it do? How would a simple user such as myself make use of it?
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.