Video View For All Themes
-
Is there a really simple block of code that one can just copy and paste into the main theme
.xml? I've been following the Video thread but don't really understand all the various <tags> and technical bits. -
@robertybob It's not so easy, depends on how the theme it's made.
But I still think it's clear enough here: https://retropie.org.uk/forum/topic/5823/looking-for-testers-for-es-video-preview-on-raspberry-pi
And don't forgot that any "extra" images will be on top of video so if you use background extra the background will be on top of video.
-
As a newbie around here, but one who has at least learned to install and modify extras here and there... I certainly like the idea of having either more lightweight and proven themes, versus being able to choose an alternate video-enabled theme(s). I like what I've seen in some of the threads as this feature develops, but wouldn't want to foul up what's working properly, or compromise the next big update.
-
@ohmycommodore The themes will be the same lighweight themes, just because the only difference it's a few lines of code, 6 or 7 lines of code in a theme with hundreds of lines of code. Only a few lines to say emulationstation where to place the video, that's all, what can be maybe 100 bytes or 1kb?
And if I need to delete all "extra" tags like I did in pixel theme with video support, the theme can be smaller than the original one.
Then it's your decision if you want to use videos or not, but the theme still basically the same and will look the same than before if you don't use videos, and the theme doesn't get necessarily bigger size.
-
I think we need to consider two types of backwards compatibility : people who are still using old themes on a newer version of emulationstation , and those who try to use newer themes on an older ES.
From a developer's perspective, I really only care about the first type, and the latter is not so interesting.
For me at least, the hierarchy is clear, ES requires a certain xml-version for theme, and it's up to the user to install it.
This can/should be indicated by the version tag in the xml, which is already checked by ES upon loading (although the feedback to users can be improved).Back to the first type of backwards compatibility, is this currently even an issue? When I load a newer theme, will it break an older ES? It will require all the old tags to be there, but it should ignore all the newer/others.
So, to finally come around to @herb_fargus's question: should we update all existing themes? No, I don't think so, that is up to the original designers to maintain.
At the same time, it would be nice if we could indicate from the install menu if videos (or kid icons, for that matter ;-) ) are supported or not. -
@caver01 there are enough themes as it is and I'd rather not unnecessarily duplicate them if at all possible. If they can have video view and retain backwards compatibility that would be ideal.
@Nismo well no time to learn GitHub like the present ;) would be easier to test that way rather than attempting to sort through logs on the forum to update. You could also host your oldroom theme on a GitHub repo
-
@Zigurana another idea is to cull the theme options to include only those that have some visage of completion and maintenance.
If video view is the new default for emulationstation moving forward I think any themes we provide through the installer should support it.
-
@herb_fargus I can spend some time and update a few themes as well as default "carbon" theme.
But my problem is that I don't know if I'll have time to learn how github works...
I agree with @Zigurana on this:
For me at least, the hierarchy is clear, ES requires a certain xml-version for theme, and it's up to the user to install it.
-
@Nismo this is the pending pull request for video view with carbon:
https://github.com/RetroPie/es-theme-carbon/pull/20
Perhaps if I get time after work I'll test out carbon and simple to see the implications of video view
-
@Zigurana
I think for users still using the old ES, we need 2 different themes repos. The original one that is non-video and a new one that is video only. We can leave the code the same for the old version of ES to point to the current theme's repo but in the new ES Themes install script we can see both theme repos. Now people using the old ES can install any theme they see (which will be non-video themes) and it won't break anything but people using the new ES will see both repos (video and non-video). If needed in the future, we could faze out the old theme repo.This is if my understanding is correct that new themes brake old ES and old themes work in new ES.
I hope this make sense :)
-
@herb_fargus Sorry, but what do you mean?
(My language module is still on xmas break, so I might just be a bit slow.)Are you suggesting getting rid of some of the tags?
-
@herb_fargus i'll take a look at the pull request and comment here, but in first place i don't see marquees in the code so something is wrong...
Edit: i tested it and of course if you have marquees like me, it are displayed on top of gamelist overwriting the first game in the gamelist, system logos are not displayed in video view, video window it's not on the right place...
-
@Nismo I submitted the pull request. I purposely left out the marquees because I didn't want to get into adjusting the layout to make space for them. Since I don't have any, I didn't think about where it would place them for users that do. I will double back to hide them and to fix the missing system logos.
I will have to check on the positioning of the video. I tested it on my rpi, but it is possible I messed something up in copying the change back and forth.
-
@jdrassa too late, here is a working fixed carbon theme.. only takes to me 5 min to get it working:
Carbon theme with video support: http://www.mediafire.com/file/f32kjrkeopykjra/carbon_with_video.zip
You need to select where to place marquees so don't overwrite anything else, just because marquees still displaying if they exist even if you don't include the code.
Also inside theme.xml for each system you need to use this to make the logos work:
<view name="basic, detailed, video">
Also the video window was bigger than should be, this is the correct size and place for video and marquees:
<view name="video"> <video name="md_video"> <pos>0.763 0.400</pos> <origin>0.5 0.5</origin> <size>0.366 0.436</size> <delay>0.2</delay> <default></default> <showSnapshotNoVideo>true</showSnapshotNoVideo> <showSnapshotDelay>false</showSnapshotDelay> </video> <image name="md_marquee"> <pos>0.6 0.035</pos> <origin>0 0</origin> <maxSize>0.2 0.1</maxSize> </image> </view>
Unfortunatley I don't know how to add all these commits to github so please somebody do it for me, thx.
@jdrassa It's a nice try, but I think you need to test things a little bit before submit a pull request...
Enjoy. -
@backstander I think that maintaining separate theme repos for older versions of ES is a maintenance burden that brings us nothing but hassle.
Why would we need to keep supporting old ES users? And more importantly, for how long? If we want to keep the momentum of ES development going, as small as it is, we should look forward, not backwards.
I agree that backwards compatibility is nice to have, but the current state of ES simply does not allow for much development. Future redesigns might change that, ie. make ES theming a bit more forgiving to the presence of certain tags or not, but we'll have to make breaking changes along the way to get there.Let's put it differently, why would someone not want to upgrade their ES? If there are relevant issues, those should be adressed.
-
@Nismo Thanks. I realized right away my mistake with the system logos. I was so focused on testing the video that I hadn't noticed that they were missing. I have added these changes to the pull request.
-
@jdrassa Thanks, I really need to know how to use github but sincerely it's not one of my prioritys.
@robertybob if you need help to add video support to your themes I can help you.
-
@Nismo it doesn't take long to learn the basics of using github. If you don't want to use the cli, they have a Github Desktop app that is pretty simple to use. If you want help figuring it out, just let me know.
-
@Zigurana what I meant by culling is to remove any themes that aren't complete/don't have video view.
I agree the burden of maintenance is too much to maintain two versions of each theme. If it's possible to have backwards compatibility with old themes along with having video mode enabled that would be ideal but I haven't tested enough to know if/how it breaks stuff.
I agree in that the main goal should be looking forward. It may also be possible at some point that grid view is incorporated as well which we will have to go through this process all over again ;)
-
@herb_fargus looking through the code it looks like the theme will fail to parse when it hits the video element.
One way that we could try to address this would be to have the themes include 2 versions of their core xml file, one that supports video and one that does not. Using carbon as an example. Its root directory would contain carbon.xml which would be the current version and carbon-video.xml which would be the version that supports video.
Then there are a couple of options on how to enable video support. The user could be required to know to go in and swap the files to enable video support. Alternatively, the theme installation script could be updated to do it either automatically, prompt the user if they want to do it, or conditionally based on what version of emulationstation is installed.
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.