mistervee / skin.madnox

Other
13 stars 13 forks source link

Skin Cleanup #18

Closed mistervee closed 5 years ago

mistervee commented 7 years ago

@bartolomesoriano @meowmoo @MadMikeDoc

Hi all,

RL has been a bit busy so I am falling behind with trying to keep this skin on track and am noticing numerous bugs. I need to review all the commits and reinstate media flags, finalize the all the textures, update any issues and clean up everything 100% before we start adding any thing new. If i dont do this my concern is the we might just end up back where we started.

Stage 1

Stage 2

Stage 3

Stage 4

bartolomesoriano commented 7 years ago

@mistervee, given that I am the noob here, I apologize for any issues I might have caused. If you think it's best, take away my push rights to the repo and I will figure out how to submit a PR so that you can approve any code before it is added. Again, I apologize for any inconvenience.

mistervee commented 7 years ago

@bartolomesoriano Everything is ok with your work and all of us as a team. No need for apology, your skills with skinning are great.

I have no intention of permanently taking away push rights. This is really a feature freeze so i can catch-up going through all the commits and finishing a lot of stuff off that i have only partially done.

bartolomesoriano commented 7 years ago

@mistervee thank you.

mistervee commented 7 years ago

@bartolomesoriano @meowmoo @MadMikeDoc

A quick update.

This will take a bit longer than expected, i am working with Aries with the skin textures atm and polishing everything coded so far. I am hoping we will be 80-90% complete when this is all done (minus the library views and home screen widgets).

bartolomesoriano commented 7 years ago

Thanks @mistervee for the update. Take your time, and thanks again for really digging into the code to make it as best as possible.

mistervee commented 7 years ago

These are the xml's that can be worked upon if anyone is up for it;

DialogPlayerProcessInfo.xml DialogSlider.xml

DialogMusicInfo.xml DialogVideoInfo.xml

MusicVisualisation.xml

script-RSS_Editor.xml script-NextAired-TVGuide.xml script-globalsearch-infodialog.xml script-globalsearch-main.xml

script-cu-lrclyrics-main.xml

Note: Please do not add to variables, includes or any xml if you are updating. Only the ones listed. Variables and other xml updates can be added in future. This also includes textures, so please don't add any textures use the ones that are already on git.

bartolomesoriano commented 7 years ago

@mistervee, @meowmoo, @madmikedoc, I can take a stab at the first two, if everyone is OK with that. The globalsearch ones look like Estuary, so those need the MadNox treatment.

mistervee commented 7 years ago

@bartolomesoriano Fine by me bart.

@bartolomesoriano @meowmoo @MadMikeDoc When this cleanup is complete, i would like to put this in the skin development forum WIP and then announce it in the madnox forum. I will make it a private repo as i don't want anyone copying and pasting textures or code (seems like a necessity as it has been done by various forum members). It does cost some $ to make it private, but not much to break the bank.

In regards to this statement for skins in the repo (http://kodi.wiki/view/Add-on_rules); "No mods. Mods are great, and pop up frequently in the forums. But they are only confusing to non-forum-goers. This can be vague, each is evaluated on its own merit. By naming your "mod" different and make it substantial different enough, we will of course take it in consideration."

With my work with Aries this is no way an issue. It's a long journey (time frame unknown, hopefully for Leia Beta) to make all this happen but it will happen.

MadMikeDoc commented 7 years ago

Hi,

@bartolomesoriano @meowmoo @mistervee

Looing forward to seeing the new textures etc. etc.

I'll take these 3 to start as I'm very familiar with all 3:

script-NextAired-TVGuide.xml script-globalsearch-infodialog.xml script-globalsearch-main.xml

But not adding vars etc. or textures could prove interesting but we'll see, have always wanted to re-design Next Aired and global search but will do basic versions 1st.

I may take lyrics as well as I recently did all the work adding manfeeds video lyrics into the Krpyton version but will see how I go with these 3 first.

Going on the WIP forum eh, unfortunately the forums have people who just rip and rip but let me know about costs for going private I'll contribute if possible

Mike.

mistervee commented 7 years ago

@MadMikeDoc Sounds good to me.

The WIP forums will be some time away. The cost is only $7 a month. So i am thinking at least a few months of having the repo private until an alpha version can be released.

bartolomesoriano commented 7 years ago

@mistervee, I am fine with a private repo for a while, and I can contribute for as long as we need it to be private.

bartolomesoriano commented 7 years ago

@mistervee, @MadMikeDoc, I know exactly how to test DialogPlayerProcessInfo, but I don't think I have seen DialogSlider. Do you recall where or how we use it?

mistervee commented 7 years ago

@bartolomesoriano If you go into settings in game options, under keyboard. Changing the number of 'keyboard players' will bring up the slider.

bartolomesoriano commented 7 years ago

Thanks @mistervee!

meowmoo commented 7 years ago

good to read some news here :D looking forward to the next big push

I could take a look @DialogMusicInfo.xml, DialogVideoInfo.xml, MusicVisualisation.xml but i think its best to wait till @mistervee is done.

I will "clean up" MusicVisualisation.xml, so that there is only one layout, but we need to choose which one from the 4 we have in madnox, or something totally new?! (we can add them back later when everythig else is done)

bartolomesoriano commented 7 years ago

@meowmoo , I think you are the most knowledgeable of the team in terms of music functions and use. My opinion is for you to choose the one you think is most useful, and start with that one.

@MadMikeDoc , @mistervee , your thoughts?

MadMikeDoc commented 7 years ago

@meowmoo , yes this is a tricky one after working extensively with music in Aeon Madnox and with music viz by adding all the additional layout choices. I myself use what is called I think the 'seedyevil' layout but it it not that anymore after I completely re-wrote it not long ago and added a lot more to it but I know you use the one you update as well. Perhaps maybe go with the 1st is it the default Aeon Madnox music viz for the 1st basic introduction and like you said we'll add the others back in sooner or later?

I haven't seen anything 'new' to replace what we have but the problem is we a going from multiple choices to 1 to start with and probably just the default Madnox music viz for this?

meowmoo commented 7 years ago

yes im using the SiLVIO layout, because its simple and clean :) but most useres wanna see lots of stuff cover/next track/codec/.... so Original and MooViz comes to mind, I never liked the Original one, that was the main reason i start looking at xml files ;P also MooViz already use Skinhelper, so its easier to "rewrite". we can still change the Layout, if someone done like it or come up with a good Mockup, i searched pinterest but cant find anything....

I have a busy weekend, so i cant start with MusicViz.xml anyway :/

bartolomesoriano commented 7 years ago

@mistervee, @MadMikeDoc, @meowmoo I pushed a first pass at DialogPlayerProcessInfo. Please review and comment. Thanks.

MadMikeDoc commented 7 years ago

global search 1st version is pretty much done but next aired is taking a bit more time as there is so much code to unravel. Will push both when ready.

mistervee commented 7 years ago

@MadMikeDoc All good mike take your time. I can imagine the next aired is a pain as it uses static content for the containers.

Just pushed a small update. I have added Variables_Temp.xml. If you need to add some please put them in there, as there is quite a bit of reshuffling i need to do.

NOTE: anything in variables.xml below the comment 'end rework' will be deleted/removed soon.

@bartolomesoriano @MadMikeDoc @meowmoo

A quick update.

I needed to take a break for bit. So slowly now getting back into it. So in time i will be pushing some rather large updates. I will also post in this thread any additional xml's that can be updated while i am working on this if can think of any that is.

mistervee commented 7 years ago

@MadMikeDoc Another thought. There is a few commits that i would like to combine just for a nice OCD commit history.

So with your coding experience are you familiar with the gitshell and can you help out? (I can google on a how to but i could mess it up)

bartolomesoriano commented 7 years ago

@mistervee, I don't know if you are talking about the same thing, but with the Windows GitHub client I use you can pick a subset of modified files to commit together. Or are you referring to just some changes in the same files but not all?

MadMikeDoc commented 7 years ago

@mistervee that I think is beyond my gitshell knowledge I just push commit after commit. Perhaps Mr Silvo might be able to help? he seems to know a bit more on git usage?

MadMikeDoc commented 7 years ago

Hi,

@mistervee @bartolomesoriano @meowmoo

Done 1st basics versions of global search and next aired. Gone with a unified visual approach for both of them.

Will now take lyrics and next up scripts and create new basic versions of them and add any required vars into Temp_variables.

Haven't pushed anything yet, will probably wait until after lyrics and next up are done.

Mike

bartolomesoriano commented 7 years ago

Great @MadMikeDoc ! Thanks.

mistervee commented 7 years ago

@MadMikeDoc Awesome. Looking forward to seeing the updates.

@bartolomesoriano @MadMikeDoc @meowmoo Hi all.

It's been a while since any updates but i am still working on things. I have been feeling a bit unwell for a while so slow progress.

I have done quite a bit of work in all areas of the skin, so i figure i will push things in stages. I will try to keep the first post updated with my progress.

bartolomesoriano commented 7 years ago

Thanks @mistervee. Hope you feel better soon. I am really looking forward to all the updates; I have missed working on MadNox.

meowmoo commented 7 years ago

Looking forward to it, can't wait to see the new textures and improvements

mistervee commented 6 years ago

@bartolomesoriano @MadMikeDoc @meowmoo

Quick question Any thoughts on animated fanart? Is this something that needs to stay in the skin?

EDIT: Trying to finish off the background chooser for all areas of the skin. I am taking a similar approach to the way the color picker is implemented. I can make it a global settings if needed.

bartolomesoriano commented 6 years ago

@mistervee , @MadMikeDoc , @meowmoo

I have never used animated fanart. Animated posters, yes, and I do like them.

@mistervee , when you say a global setting, you mean the ability to set one (or multiple) backgrounds for the skin as a whole instead of selecting a background for each menu option?

mistervee commented 6 years ago

I guess i didn't explain it to well.

For the skin backgrounds they will be individually customisable for each area of the skin.

The Animated fanart for skin helper service will stay as it is. It's the kodi animation that make the background move around the screen.

So the option in the background chooser for aeon madnox for krypton.

bartolomesoriano commented 6 years ago

Thanks @mistervee. No preference on my part, I have not used that option before.

meowmoo commented 6 years ago

I only use(d) it on MusicViz, to get some "dynamic", so from my part i dont need it

mistervee commented 6 years ago

Cheers for the response. I will just use animated as a global setting as it is easy to implement. So it will be in skin settings as opposed to customisable in each area of the skin.

@bartolomesoriano @MadMikeDoc @meowmoo Next question; Artwork Cases - in krypton we have bdcase, case, clear case & glass (i am working on the background picker and live backgrounds, like when you have a bunch of posters for recent media ect.) https://github.com/mikesilvo164/skin.aeon.madnox/tree/krypton/media/homewidgets

These are used in many area's of the skin.

Clear case and glass will be the same. For the case and bdcase i would prefer not to use both versions of the poster type. It is to keep the skin size down and not to over complicate the coding. So i have 4 ideas (use 1 or a combo of 2);

  1. https://github.com/mikesilvo164/skin.aeon.madnox/blob/krypton/media/homewidgets/bdcase/poster/1080p.png
  2. https://github.com/mikesilvo164/skin.aeon.madnox/blob/krypton/media/homewidgets/case/poster/1080p.png
  3. This option is to simply find a poster case on the internet somewhere like this - https://imgur.com/a/Iuemj OR
  4. Make all cases the same color. then use a colordiffuse and extra image control for a media flag. This does complicate the code but keeps skin size down

Really just needing some ideas and feedback on what to do here. Keeping in mind that will be applicable to all library views and backgrounds.

MadMikeDoc commented 6 years ago

@mistervee

Hi, Sorry missed the animation q as not been well lately. For me I don't use that but I'm sure some users may so if we can look to keep it then ok, if not then no problem.

For case I use option 1 today, the bdcases. I've always preferred them to the other case options available. I know the solutions for all the case options can complicate and effectively double code etc.

But I know one of the last things Schimi did was the /banner & /landscape folders for /case and I like those and would like to keep them so from me it would be /bdcase with existing /poster & /square folders and then add the /banner & /landscape folders from /case to it and then that would be our 'color case' solution, thoughts?

Looking forward to your update, actually wanting to get back to the skin and starting moving forward on the 1st version.

bartolomesoriano commented 6 years ago

@mistervee, @MadMikeDoc, @meowmoo,

I agree with Mike. I also prefer the bdcase to the case type. I was also thinking of how we can keep schimi's work on these, so I also agree with Mike's idea on what to keep in terms of our case solution.

I was also wondering, and this is a question for you more skilled skinners, does it make sense to do resource image addons for this? Does it simplify the code any? I guess, if it is possible and it makes sense, that it helps in keeping the skin size down, and the addons can be set as dependencies if we want.

meowmoo commented 6 years ago

I dont use any Cases, so i leave this to the "CaseUsers"

  1. or 4. would be my suggestion
mistervee commented 6 years ago

@bartolomesoriano @MadMikeDoc @meowmoo Cheers for your response. Seems like option 1 is the way to go. The banner/landscape cases wont change. Option 4 is possible but it means tweaking the case textures and extra coding. So i will scratch that one of the list. I was just concerned about kodi flix and 3D views and the extra textures needed which will increase the skin size a little to much. I suppose we can cross that bridge when we come to it and see how it works out.

@bartolomesoriano The resource addon works by setting skin strings and skin strings cannot be used in containers. So this has limited use. So am trying to avoid using it apart from the skin backgrounds.

So I need some help on this part @bartolomesoriano @MadMikeDoc @meowmoo For the Widgets and live backgrounds. I am in still two minds what to do for user choice.

I am thinking along the line of only using playlists for most of them. The load quicker and and have many more list items available. Not sure on the refreshing part when a movie ect is watched. Should be simple as using the correct conditions within a smart playlists.

I need a volunteer to come up with bunch of playlists for, music, music videos, tv series, and movies and to test them out on krypton madnox or silvo to make sure they work after something is watched. Then i can incorporate them into the live backgrounds (in the future widgets).

bartolomesoriano commented 6 years ago

Thanks, @mistervee. When you say using playlists for most of the widgets, I take it to mean those that do not need plugins like SHS or ExtendedInfo; for example, next aired episodes or upcoming movies, or trending movies; am I looking at this correctly?

As for the playlists for movies, tv shows, episodes, music videos and music, I can come up with what I think are the most used ones. Do you want me to test them as widgets in krypton madnox (or Leia Silvo), just to see if they get updated when an item is played or watched? Do you want me to test live backgrounds specifically as well? Please let me know, I can do that by the weekend. Thanks.

bartolomesoriano commented 6 years ago

@mistervee @MadMikeDoc @meowmoo , how about the following playlists: Movies: Recently added, Random, In-Progress, Unwatched, Best Picture, IMDb Top 250 TV Shows: Recently added, Random, In-Progress, Unwatched Episodes: Recently Added, Random, In-Progress, Unwatched Music Videos: Recently added, Random, In Progress, Unwatched, Most Watched Albums: Recently added, Recently Played, Random, Unplayed, Most Played

Any that you think I should add?

meowmoo commented 6 years ago

@mistervee i tried a few playlist on Madnox 17 for example

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<smartplaylist type="tvshows">
    <name>episoden neu laufende </name>
    <match>all</match>
    <rule field="playcount" operator="is">
        <value>0</value>
    </rule>
    <rule field="dateadded" operator="inthelast">
        <value>2 weeks</value>
    </rule>
</smartplaylist>

and the Widget updated after watching a unwatched episode @all i have done a basic MusicViz layout, not sure what info we wanna show in the default view, do we wannt Next/preview songs? do we need extra info like similar artist, artist bio, last.fm charts? I have droped Artistslideshow support for now, because we use Skinhelper everywhere and it provide basically the same info. (just artist bio is missing, at least its not in the wiki, need to ask marcel) https://imgur.com/a/nlBFQ hit me with feedback and stuff you wannt to have in the music viz :)

MikeSiLVO commented 6 years ago

Hey guys :)

I tried playlists for widgets on SiLVO and they seem to load very slowly for me. They do update if the playlist has the correct rule but it freezes Kodi for about 3-5 seconds when loading widgets on first scroll to menu item as well as when updating after watching...

Here is my tested PlayList:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<smartplaylist type="movies">
    <name>Random</name>
    <match>all</match>
    <rule field="playcount" operator="is">
        <value>0</value>
    </rule>
    <group>none</group>
    <limit>25</limit>
    <order direction="ascending">random</order>
</smartplaylist>

Not sure if it is particular to my setup but, not to brag, I have some fast hardware here...

I do not know why it is slow for PlayLists but I am pretty confident that I recall noticing the same issue for Jarvis and Krypton but cannot be 100% certain. I have not tested any past versions of Kodi recently so my current findings are for Leia only.

Current PC Setup is: 1,902 movies 6,808 episodes 15,675 songs NVMe SSD hitting target speeds of WRITE 3,400 MB/sec and READ 2,000 MB/sec per CrystalDiskMark i7-7700k running at 4.55Ghz 32GB Ram

mistervee commented 6 years ago

@mikesilvo164

Hi mike, thanks for your feedback.

mmm.... you have me thinking now? Random playlists would be an issue as they will update every time a menu item is focused or while navigating to a new window for live backgrounds. While something like skin helper widgets only update on certain conditions.

I am wondering if all playlists update every time the content is called. If this is the case playlist's are not the ideal solution for widgets and backgrounds. Something i didn't think about when using playlists.

Skin helper widgets take 1s to update on skin load or refresh. This seems like it is due to dynamic content being loaded via the script. after that there is no delay.

I have similar specs to you mike, but half the library content.

But 3-5 secs seems like a long time. I have noticed in the past when the kodi db migrates between versions i see a slow down in some library views when scrolling (seems to depend on how the container.content is coded and the number of variables). A fresh data base has always fixed the issue in the past.

@all Will have to rethink the playlist approach. The new madnox will be a faster but still will be a demanding skin.

MikeSiLVO commented 6 years ago

@mistervee I have made some significant changes to the Widgets and template file recently.

If you do not mind. Can you please try using my latest master and adding a playlist as Widget to check your results?

I think that could confirm if it is an issue only on my end.

I'd hate to be responsible for slowing down improvements if what I experience is just because of some coding error I made :frowning:

EDIT: Just tried meowmoo's playlist posted above and the same occurred. Even scrolling through the content displaying the fanart caused some intermittent brief freezing.

EDIT 2: Scrolling through the first time and some brief freezing. Second time it is like butter, smooth as a baby's asscheek. FYI 😉

mistervee commented 6 years ago

@meowmoo Looks good. my only thought would be the background texture. It would need to integrate nicely with the player controls with a slide animation. You could always change the back ground texture to a gradient or use the play control background texture.

If you were going to add anything extra i would use what ever skin helper provides. Next track sounds like a good idea. https://github.com/marcelveldt/script.skin.helper.service/wiki/Listitem-Properties---Music-items

For the artist/album info SkinHelper.ListItem.Plot

You could always use this for insperation https://forum.team-mediaportal.com/threads/theme-round-covers-hd-discart-clearart-clearlogo-artist-info-v3-2-10-09-14.110039/ I coded all the now playing screens way back, before i was using xbmc.

mistervee commented 6 years ago

@mikesilvo164 Sure thing. Downloading now.

mistervee commented 6 years ago

@mikesilvo164 Just did some quick in skin tests with out looking at code.

For movie menu using random movie playlist for Widget 1 & 2 & Live background For the playlist i had 1-2sec delay sometimes for the widget posters and instant other times (spamming refresh). For Every refresh or entering or exiting library to main menu the posters would be different.

For movie menu using random movie skin helper for Widget 1 & 2 then Live background playlist For Every refresh the widgets had a small delay in showing (likely skin help script delay but integer compare stop content showing until container was filled). Entering or exiting library to main menu the widgets had no delay after the skin has loaded. The live backgrounds were different each time, but had no delay.

With all this in mind my library atm is only 500 movies. I could imagine the delay being more with larger library's.

For the new movie playlist no delay.

So my thoughts on all of this is playlists are slower than scripts for anything that uses a random method of querying the database. Skin helper seems to not fill the content until the artwork is loaded.

EDIT On another note; Something i have come across with skin shortcuts and sharing menus between skins. If you use a localized string specific to the skin it will use that same string number in a different skin. Usually the localized strings don't line up between skins, so you get the wrong labels for the main/sub menu. With the new version of madnox i am only using the kodi default strings. (have not pushed this to git yet btw)

mistervee commented 6 years ago

@bartolomesoriano With all this in mind i am going to use skin helper for all the live backgrounds and widgets. There are less info labels available but the performance of the skin will be slowed with playlists in certain situations.

MikeSiLVO commented 6 years ago

@mistervee Been testing for a little bit and I only notice a freeze on first load of a new playlist Widget, first load of an updated playlist Widget, and lastly scrolling through a new playlist Widget. Did not notice anything when scrolling through an already scrolled through updated playlist but it was only one movie marked watched so that would seem to make no difference on my setup.

Reboots and skin reloads do not show any freezing for me once the new playlist Widget was loaded for that first time. I have definitely not tested to see any patterns over many days or weeks of library changes though.

Your 1-2 second delay seems like a slightly longer but close to normal expectation for me.

I tested meowmoo's playlist so for me it seems to have to do with the initial loading of the playlist Widget and not the random order aspect.

Not sure if any of the above excludes it for use but IMHO any freezing is not wanted, however, if it only freezes just the once it may be worthwhile if you compare cost to benefit.

Perhaps some more testing before chucking the idea out the window?

I do have a "feeling" that the playlist approach requires disk access from library item location more than scripts that may read from the DB but i am just guessing (talking out my bootyhole) on that assumption.

Does the rest of the MadNox crew have as large or larger libraries than my own to test to see if it is only on initial load of a playlist Widget regardless of random order or not...?