Skin engine enhancements (themes, guide colors, skin functions, weather settings...) (2 Viewers)

ajp8164

Portal Pro
January 9, 2008
575
1,166
Atlanta, GA
Home Country
United States of America United States of America
Hi All,

So, a flood of commentary ;-) Not sure I got the entire gist but I do want to acknowledge that the wiki instructions are crap ;-) I need to re-write the instructions to start from the beginning of setup with a series of steps that users can take. The bottom line with the wiki instructions is that my use of examples/samples has confused people. In my examples I use *my* genres from schedules direct. Your genres are likely to be different as you have already found. Also, the SkinSettings.xml file overrides (by design) MediaPortal.xml for the tvguidecolors section. It would be better to have all the colors defined in MediaPortal.xml and leave the use of SkinSettings.xml as an advanced feature (I like it ;-) In order to prevent the SkinSettings.xml from overriding MediaPortal.xml you'll need to delete the "tvguidecolors" section from SkinSettings.xml (in the Avalon3779 skin directory).

Indeed the (EPG) genre names and other program information are read from the TV database directly from the MediaPortal Configuration tool. This is the only way to guarantee that the genre names you choose to map and then color actually affect your guide (since every EPG provider's genre names will vary).

MediaPortal.xml may start out with no "genremap", "genreoptions", and "tvguidecolors" sections. Perhaps this should be the default. The MediaPortal Configuration tool will automatically create the sections based on user actions. However, MediaPortal.xml could be "seeded" with the following template sections (just no mappings!) The genre names that appear in the "genremap" and "tvguidecolors" represent an example of the genres to be colored in the tv guide. In fact, I stole these names and colors from WMC (shhh!) Seemed like a decent place to start.

With MediaPortal.xml seeded (or not) with these sections then you can launch the MediaPortal Configuration tool and either map your own EPG genres to one of the seeded 7 tv guide genres (Documentary, Kids, Movie, Music, News, Special, or Sports). If you don't like the "seeded" 7 tv guide genres then you can click on the name and click the Remove button to delete it. You can then add your own using the Add button. When you have a set of tv guide genres identified you can then set the "on now" and "on later" colors for each by highlighting the tv guide genre and clicking the appropriate color button. When that's all done you must map your EPG genre names to your tv guide genre names. When you click on a tv guide genre the Unmapped Genres list should populate with all available EPG genres. Use the arrow buttons to map and unmap. If you do not map EPG genres to tv guide genres then no guide coloring will occur for tv guide genre colors.

Code:
<section name="genremap">
    <entry name="Documentary"></entry>
    <entry name="Kids"></entry>
    <entry name="Movie"></entry>
    <entry name="Music"></entry>
    <entry name="News"></entry>
    <entry name="Special"></entry>
    <entry name="Sports"></entry>
</section>
<section name="genreoptions">
    <entry name="specifympaaratedasmovie">yes</entry>
</section>
<section name="tvguidecolors">
    <entry name="guidecolorchannelbutton">ff0e517b</entry>
    <entry name="guidecolorchannelbuttonselected">Green</entry>
    <entry name="guidecolorprogramselected">Green</entry>
    <entry name="guidecolorprogramended">Gray</entry>
    <entry name="guidecolorborderhighlight">99ffffff</entry>
    <entry name="defaultgenre">ff1d355b,ff0e517b</entry>
    <entry name="Documentary">Chocolate,Chocolate</entry>
    <entry name="Kids">Aqua,Aqua</entry>
    <entry name="Movie">Purple,Purple</entry>
    <entry name="Music">Maroon,Maroon</entry>
    <entry name="News">LightGreen,LightGreen</entry>
    <entry name="Special">Gold,Gold</entry>
    <entry name="Sports">DarkGreen,DarkGreen</entry>
</section>

The check box about "specifying MPAA rated as a movie"; when it is checked then there is no reason to map any EPG genres to the tv guide genres because the implementation will look at the tv program attributes and if it has a movie rating then it will automatically map that program as a movie. There is a column in the TV database that contains the movie rating/classification as read from the EPG provider so this is handy for this feature. Otherwise, there is really no way to positively identify a program as a movie. Using the text "MPAA" in the check box label is admittedly biased; suggest another, please ;-)

Since the implementation has the MediaPortal Configuration tool reading the genre and other program information from the TV database I'm not sure I completely understand issues associated with a client server (not single-seat) implementation. Sure, the firewall needs to allow for communication back to the server but besides that I'm not sure I notice a problem unique to this implementation. I do recognize that each client needs its own MediaPortal.xml file and so users with multi-seat implementation will need to configure for each client. But this is not a unique problem associated with TV guide coloring. There should be a more generalized solution designed and built if needed.

I'll re-write the wiki page soon.

Thanks for everyone's testing!!
 
Last edited:

Edalex

Community Plugin Dev
  • Premium Supporter
  • January 3, 2008
    2,959
    1,270
    Saratov
    Home Country
    Russian Federation Russian Federation
    Maybe we aslo should recoginze tv series i.e if EpisodeNum != null?
    My webepg labeling all series as just "series" without genres.
     

    elliottmc

    Retired Team Member
  • Premium Supporter
  • August 7, 2005
    14,927
    6,061
    Cardiff, UK
    Home Country
    United Kingdom United Kingdom
    Since the implementation has the MediaPortal Configuration tool reading the genre and other program information from the TV database I'm not sure I completely understand issues associated with a client server (not single-seat) implementation.

    Well, basically the problem is that it doesn't actually work! Sorry!
     

    elliottmc

    Retired Team Member
  • Premium Supporter
  • August 7, 2005
    14,927
    6,061
    Cardiff, UK
    Home Country
    United Kingdom United Kingdom
    Also, the SkinSettings.xml file overrides (by design) MediaPortal.xml for the tvguidecolors section.

    How will this work if the genre names are different? So maybe the genre names in SkinSettings.xml have no relevance to the EPG (I suppose with suitable mapping they always can have).

    Right now, you can edit the colours in config, but if the colours are in skinsettings.xml, the changes will not make any difference.

    I would say that the correct way to do this is have MediaPortal.xml override skinsettings.xml, but add a button to config to import colours from skinsettings.xml.
     

    larsbln

    MP Donator
  • Premium Supporter
  • June 12, 2010
    337
    62
    Germany
    I'm sorry to bother you again with this, but when will the dolby icon be incorporated into this feature?
    Ofcourse I understand that you wanted to have at least the main feature ready and stable.
    Just asking .. :)

    Okay I made some adjustments to the colors for me. I think what most ppl could bother (from my point of view) is that the colors are to strong.

    I changed the alpha values and found out that some of the wmc colors not suitable to be blended this way.
    So I changed some of the category colors too. Now it looks more unobtrusive and clean.
    colorvariation.png


    What do you think?
    BTW, how could I change the "not on" font color? I would prefer a shade of grey :)

    Code:
    <section name="tvguidecolors">
        <entry name="guidecolorchannelbutton">FF0E517B</entry>
        <entry name="guidecolorchannelbuttonselected">FF008000</entry>
        <entry name="guidecolorgroupbutton">FF0E517B</entry>
        <entry name="guidecolorgroupbuttonselected">FF008000</entry>
        <entry name="guidecolorprogramselected">FF008000</entry>
        <entry name="guidecolorprogramended">201D355B</entry>
        <entry name="guidecolorborderhighlight">99FFFFFF</entry>
        <entry name="defaultgenre">FF1D355B,901D355B</entry>
        <entry name="Documentary">60835a33,40835a33</entry>
        <entry name="Kids">60faed09,40faed09</entry>
        <entry name="Movie">60751782,40751782</entry>
        <entry name="Music">60ff9a18,40ff9a18</entry>
        <entry name="News">60fa152a,40fa152a</entry>
        <entry name="Series">60078a1c,40078a1c</entry>
        <entry name="Sports">6057e7fa,4057e7fa</entry>
      </section>
     
    Last edited:

    ajp8164

    Portal Pro
    January 9, 2008
    575
    1,166
    Atlanta, GA
    Home Country
    United States of America United States of America
    I'm sorry to bother you again with this, but when will the dolby icon be incorporated into this feature?
    Ofcourse I understand that you wanted to have at least the main feature ready and stable.
    Just asking .. :)

    I put together this implementation, it's on branch EXP-Guide_program_icons. This will be targeted for the 1.3.1(?) release (unless I can finish this work quickly in order to refocus ;-)

    Okay I made some adjustments to the colors for me. I think what most ppl could bother (from my point of view) is that the colors are to strong.

    I changed the alpha values and found out that some of the wmc colors not suitable to be blended this way.
    So I changed some of the category colors too. Now it looks more unobtrusive and clean.
    View attachment 103051


    What do you think?
    BTW, how could I change the "not on" font color? I would prefer a shade of grey :)

    Code:
    <section name="tvguidecolors">
        <entry name="guidecolorchannelbutton">FF0E517B</entry>
        <entry name="guidecolorchannelbuttonselected">FF008000</entry>
        <entry name="guidecolorgroupbutton">FF0E517B</entry>
        <entry name="guidecolorgroupbuttonselected">FF008000</entry>
        <entry name="guidecolorprogramselected">FF008000</entry>
        <entry name="guidecolorprogramended">201D355B</entry>
        <entry name="guidecolorborderhighlight">99FFFFFF</entry>
        <entry name="defaultgenre">FF1D355B,901D355B</entry>
        <entry name="Documentary">60835a33,40835a33</entry>
        <entry name="Kids">60faed09,40faed09</entry>
        <entry name="Movie">60751782,40751782</entry>
        <entry name="Music">60ff9a18,40ff9a18</entry>
        <entry name="News">60fa152a,40fa152a</entry>
        <entry name="Series">60078a1c,40078a1c</entry>
        <entry name="Sports">6057e7fa,4057e7fa</entry>
      </section>

    I like the colors! You can change the font color for the not "on now" program guide entries by changing the values in control id 24 in ...skin\Avalon3779\Themes\Colored TV Guide\mytvguide.8rows.xml and ...skin\Avalon3779\Themes\Colored TV Guide\mytvguide.10rows.xml.
     

    ajp8164

    Portal Pro
    January 9, 2008
    575
    1,166
    Atlanta, GA
    Home Country
    United States of America United States of America
    Also, the SkinSettings.xml file overrides (by design) MediaPortal.xml for the tvguidecolors section.

    How will this work if the genre names are different? So maybe the genre names in SkinSettings.xml have no relevance to the EPG (I suppose with suitable mapping they always can have).

    Right now, you can edit the colours in config, but if the colours are in skinsettings.xml, the changes will not make any difference.

    I would say that the correct way to do this is have MediaPortal.xml override skinsettings.xml, but add a button to config to import colours from skinsettings.xml.
    Hi Mark,

    I would expect that the genre names must be the same (using the same source for EPG for all clients; assumes a single server). So, the implementation centralizes the genre names and map to MediaPortal.xml; no need to have this in SkinSettings.xml -- however, I can see your point that you might want different mappings on a skin-by-skin basis but seems confusing to me. Is this what you meant?

    You're right that you cannot edit the colors in SkinSettings.xml using the Configuration tool. I was not able to determine how this should work. The Configuration tool only writes to MediaPortal.xml (as it should). With the addition of SkinSettings.xml this challange has not been fully addressed. It gets complicated quickly when multiple skins are involved (if trying to use buttons etc to push changes to SkinSettings.xml) -- I'd prefer to see a universal design that works for any skin settings, not a special design for guide colors. I was actually hoping to allow for color picking and saving to the SkinSettings.xml file using the MediaPortal gui rather than the (a) separate configuration tool. I'd appreciate your thoughts on how this should be designed to work.
     

    ajp8164

    Portal Pro
    January 9, 2008
    575
    1,166
    Atlanta, GA
    Home Country
    United States of America United States of America
    Since the implementation has the MediaPortal Configuration tool reading the genre and other program information from the TV database I'm not sure I completely understand issues associated with a client server (not single-seat) implementation.

    Well, basically the problem is that it doesn't actually work! Sorry!
    What is it that doesn't work? I think I get that it's inconvenient to have to redo configuration for each client... is that what you mean?

    There are potentially multiple options to address this problem; at 2 are:
    1. Store all client setup on the server and let each client pull the setup from the server at startup (this means settings, skins, etc.. lot's of stuff!)
    2. Provide an option with the configuration tool to sync changes to settings, skins, etc either p2p or p2s. This seems messy to me but might allow all clients to have their own settings (which seems messy to me again; having user profiles like xbmc would more attractive).
    But this is a topic for another thread! ;-)
     
    Last edited:

    elliottmc

    Retired Team Member
  • Premium Supporter
  • August 7, 2005
    14,927
    6,061
    Cardiff, UK
    Home Country
    United Kingdom United Kingdom
    Also, the SkinSettings.xml file overrides (by design) MediaPortal.xml for the tvguidecolors section.

    How will this work if the genre names are different? So maybe the genre names in SkinSettings.xml have no relevance to the EPG (I suppose with suitable mapping they always can have).

    Right now, you can edit the colours in config, but if the colours are in skinsettings.xml, the changes will not make any difference.

    I would say that the correct way to do this is have MediaPortal.xml override skinsettings.xml, but add a button to config to import colours from skinsettings.xml.
    Hi Mark,

    I would expect that the genre names must be the same (using the same source for EPG for all clients; assumes a single server). So, the implementation centralizes the genre names and map to MediaPortal.xml; no need to have this in SkinSettings.xml -- however, I can see your point that you might want different mappings on a skin-by-skin basis but seems confusing to me. Is this what you meant?

    Well, right now, if you have colours in skinsettings.xml, these override the ones that the user has set. So in effect, you have defined the behaviour that different skins will have different genre colours.

    This becomes more of a problem if the user does not want the genre names that you have chosen. In that case, the names in skinsettings.xml will not relate to the genres in mediaportal.xml - maybe I am not understanding things if this is not correct.

    Your comment about the genre names being the same I guess applies to my server and all of my network clients. However, users in different countries may want to have genre names in their own language.

    Perhaps the simple solution is to have the defined genre names that you have now, and to not be able to add any more. Anyway, more genres than this would just be confusing for most people.

    At least this way, you could add these as strings in the various language files, so that they are automatically localised.


    You're right that you cannot edit the colors in SkinSettings.xml using the Configuration tool. I was not able to determine how this should work. The Configuration tool only writes to MediaPortal.xml (as it should). With the addition of SkinSettings.xml this challange has not been fully addressed. It gets complicated quickly when multiple skins are involved (if trying to use buttons etc to push changes to SkinSettings.xml) -- I'd prefer to see a universal design that works for any skin settings, not a special design for guide colors. I was actually hoping to allow for color picking and saving to the SkinSettings.xml file using the MediaPortal gui rather than the (a) separate configuration tool. I'd appreciate your thoughts on how this should be designed to work.

    My thought is that you could add a button in config to import the settings from the skin. This would then replace the colours in MediaPortal.xml. However, colours in MediaPortal.xml should always over-ride those in the skinsettings.xml. At least this way, if the user wants to use the skin colours, they can click on one button, and then they can edit things if needed.
     

    elliottmc

    Retired Team Member
  • Premium Supporter
  • August 7, 2005
    14,927
    6,061
    Cardiff, UK
    Home Country
    United Kingdom United Kingdom
    Since the implementation has the MediaPortal Configuration tool reading the genre and other program information from the TV database I'm not sure I completely understand issues associated with a client server (not single-seat) implementation.

    Well, basically the problem is that it doesn't actually work! Sorry!
    What is it that doesn't work? I think I get that it's inconvenient to have to redo configuration for each client... is that what you mean?

    Basically yes. There are no EPG genres showing that can be mapped to the various categories. This is, of course, because the EPG genres are in a database on the server.

    However, it seems that for some reason, when the EPG data is not accessible, you then cannot edit the colours. I am guessing that one part of the code relies on another.

    There are potentially multiple options to address this problem; at 2 are:
    1. Store all client setup on the server and let each client pull the setup from the server at startup (this means settings, skins, etc.. lot's of stuff!)
    2. Provide an option with the configuration tool to sync changes to settings, skins, etc either p2p or p2s. This seems messy to me but might allow all clients to have their own settings (which seems messy to me again; having user profiles like xbmc would more attractive).
    But this is a topic for another thread! ;-)


    Provide an option for config to export/import the EPG colour settings, so that we have a portable file that can be transferred.

    Is it possible for config to check if the name of the TV server is the same as the name of the current computer? That is, check if this is a single-seat setup, and if not then just have an 'import' button for this part of config?
     

    Users who are viewing this thread

    Top Bottom