Jump to content

XBMB3C feature suggestions


tube82

Recommended Posts

tube82

This is the central thread about new ideas for features of XBMB3C. All constructive ideas are welcome!

 

 

Current ToDo/Issues List:

https://github.com/M...sues?state=open

 

Pending suggestions:

- Support for (movie) special features (discussed <here>)

- Movie informations from context menu (suggested <here>)

 

Approved suggestions:

- Additional art for playitem (discussed <here>)

 

----

 

Implemented suggestions:

- Actor images (discussed <here>)

- Backgrounds for recently added content (discussed <here>)

- Additional ListItem properties for TV shows (discussed <here>)

- Support for extra fanart (discussed <here>)

- Support for TV Tunes (discussed <here>)

- Constant names for default sections

The new constant names for default nodes can be seen <here>

 

----

 

Original suggestions from this thread:

 

1. Constant names for default sections

 

I use

xbmb3c.XX.title
xbmb3c
.XX.path
xbmb3c
.XX.type

to access XBMB3C nodes from the sub menu in the home screen which works good. The only problem: The changes I make to a skin will only work on my setup because everyone has a different amount of media folders. In my case, xbmb3c.6 is "Recently added movies" (because i have 6 MB3 media folders which are xbmb3c.0-5). Another problem ist that if I add or remove a media folder on the server, all the numbers change by 1 and all sub menues are messed up.

 

The suggestion: Would it be possible to give constant names to the default entries and only use integers for the media folders so it would look something like this in my setup:

xbmb3c.recentMovies
xbmb3c
.recentEpisodes
...
xbmb3c.upcomingTV
xbmb3c
.0 (media folder 1, e.g. TV Shows)
xbmb3c.1 (media folder 2, e.g. Animation)
xbmb3x.x (last media folder)

This would make it a lot easier to pre-configure modded skins to work on different setups

 

2. Actor images

 

I don't know if it is possible because I don't really know how XBMC handles those, but since the actor names are provided by XBMB3C it would be really nice to also have the images show up.

 

Edited by tube82
Link to comment
Share on other sites

xnappo

(1) I think is definitely do-able.  Is it okay for the user folders to be first?  I have added that to our official list of issues here:

https://github.com/MediaBrowser/MediaBrowser.XBMC/issues?state=open

 

(2) Did you read this thread here?  http://mediabrowser.tv/community/index.php?/topic/5828-actor-information-and-mb3-plug-ins/ 

@@im85288 seemed to imply that it already works if you have the right scripts installed.  If so - we can look at making those script get automatically included.  

 

As to timing for a new release, there are a few more issues I want to be sure we close;

 

1. Adding meta-data during playback.  @ started this, not sure if it is done

2. Auto-config - again started but possibly not complete?

3. Check that the service is running

4. Detect non-UNC paths (c:\ etc) and inform the user of the problem

 

And we need more beta testers..  There are actually a lot of under-the-hood changes in the Git.

 

xnappo

Edited by xnappo
Link to comment
Share on other sites

tube82

(1) sure, having the media folders first in the xbmb3c view makes more sense anyway

 

(2) having the actor metadata script installed and enabled doesn't change anything for me. Using a regular XBMC database Arctic shows actor images but using xbmb3c it doesn't. Maybe im85288 can shed some light on this?

Edited by tube82
Link to comment
Share on other sites

xnappo

I think I want to keep the existing labels in place so nothing breaks, but will add some new properties as you suggest.  

 

Would this be fine:

xbmb3c.stdMovieNode.recentMovies
xbmb3c.stdTVNode.recentEpisodes
...
xbmb3c.stdTVNode.upcomingTV
xbmb3c.usrTVNode.0 (media folder 1, e.g. TV Shows)
xbmb3c.usrMovieNode.1 (media folder 2, e.g. Animation)
xbmb3c.ustMovieNode.x (last media folder)

Something like that?

Edited by xnappo
Link to comment
Share on other sites

xnappo

Thanks @ - I planned on doing 3 and 4 myself - just wanted to check with you on 1 and 2.  Sounds like once 3 and 4 are done and we get some more beta testers we can move forward with 0.9.0.

 

xnappo

Link to comment
Share on other sites

elcabong

what about keeping it more simple:

 

xbmb3x.stdNode.recentMovies

xbmb3x.stdNode.recentEpisodes

xbmb3x.stdNode.upcomingTV

 

 

xbmb3x.usrNode.0

xbmb3x.usrNode.1

xbmb3x.usrNode.2

xbmb3x.usrNode.x

 

this keeps stdNode/usrNode easy, unless im missing a benefit of separating the stdTVNode > stdMovieNode > stdMusicNode > etc.

Link to comment
Share on other sites

xnappo

Okay, I ended up with this:

        if section.get('sectype')=='usr':
            WINDOW.setProperty("xbmb3c.usr.%d.title"    % (usrCount) , section.get('title', 'Unknown'))
            WINDOW.setProperty("xbmb3c.usr.%d.path"     % (usrCount) , "ActivateWindow("+window+",plugin://plugin.video.xbmb3c/" + murl+",return)")
            WINDOW.setProperty("xbmb3c.usr.%d.type"     % (usrCount) , section.get('section'))
            usrCount += 1
        else:
            WINDOW.setProperty("xbmb3c.std.%d.title"    % (stdCount) , section.get('title', 'Unknown'))
            WINDOW.setProperty("xbmb3c.std.%d.path"     % (stdCount) , "ActivateWindow("+window+",plugin://plugin.video.xbmb3c/" + murl+",return)")
            WINDOW.setProperty("xbmb3c.std.%d.type"     % (stdCount) , section.get('section'))
            stdCount +=1

So separate variables for user and standard collections, but still with an index. 

 

See if that will work for you.  The old ones are still there too.

 

xnappo

  • Like 1
Link to comment
Share on other sites

tube82

I think I want to keep the existing labels in place so nothing breaks, but will add some new properties as you suggest.  

 

Would this be fine:

xbmb3c.stdMovieNode.recentMovies
xbmb3c.stdTVNode.recentEpisodes
...
xbmb3c.stdTVNode.upcomingTV
xbmb3c.usrTVNode.0 (media folder 1, e.g. TV Shows)
xbmb3c.usrMovieNode.1 (media folder 2, e.g. Animation)
xbmb3c.ustMovieNode.x (last media folder)

Something like that?

In my opinion a mix of yours and elcabongs suggestion would be good.

 

Separating the user nodes to TV and movie might be a good idea, because that would allow modded skins to include those in a default setup more easily.

It would be possible to pre-configure a skins home screen TV Shows entry with a sub menu that consists of xbmb3c.tvnode.1-9 with a condition to only show those that exist and the standard TV nodes (constant names)

 

I guess, if movie and TV user nodes are not separated, pre-configuring a skin to work on different systems would be less intuitive.

I do agree though that those names seem a little too long and complicated when they don't have to be.

 

To keep it clean and simple I'd suggest something like:

xbmb3c.movie.recent

xbmb3c.movie.recommended

xbmb3c.movie.inprogress

xbmb3c.movie.favorites

xbmb3c.movie.boxsets

xbmb3c.movie.1

xbmb3c.movie.x

 

xbmb3c.tv.recent

xbmb3c.tv.recommended

xbmb3c.tv.inprogress

xbmb3c.tv.favorites

xbmb3c.tv.boxsets

xbmb3c.tv.1
xbmb3c.tv.x
 
not sure if I missed any. If you want it to be more self-explanatory you can add a "node" behind movie/tv.
 
Just my take, but yours and elcabongs suggestion would be good as well.
 
[edit]
Didn't see your last post. Will check it out tomorrow, no more time today :)
Edited by tube82
  • Like 1
Link to comment
Share on other sites

xnappo

Changing it differently from how I did it is a pain :D  So see if it will work as I changed it.

 

xnappo

  • Like 1
Link to comment
Share on other sites

tube82

Would it be a big change to split usr.* to tv.* and movie.*?

 

[edit]

The way you did it is a big help for sure, so thanks for the new stuff :)

Edited by tube82
  • Like 1
Link to comment
Share on other sites

xnappo

Yeah, that shouldn't be a problem.  Will look at it tomorrow night.

 

xnappo

  • Like 1
Link to comment
Share on other sites

tube82

Just tested the changes. I had to look up the std node indexes (0, 2, 4, 7, 10 and 11 for movies, 1, 3, 5, 6, 8 and 9 for TV) but the separation of usr and std helps a lot. Adding or removing media folders will no longer mess up my menues, so thanks for the implementation!

Works without problems, too!

 

I'd still like a separation of movie and tv, but its not really that important. Can always just check the type via xbmb3c.usr.x.type

 

[edit]

The std indexes should be the same for everyone, right? Might be a good idea to add those to the skin support thread.

 

xbmb3c.std.0 - All Movies

xbmb3c.std.1 - All TV

xbmb3c.std.2 - Recent Movies

xbmb3c.std.3 - Recent Episodes

xbmb3c.std.4 - In Progress Movies

xbmb3c.std.5 - In Progress Episodes

xbmb3c.std.6 - Next Episodes

xbmb3c.std.7 - Favorite Movies

xbmb3c.std.8 - Favorite Episodes

xbmb3c.std.9 - Upcoming TV

xbmb3c.std.10 - BoxSets

xbmb3c.std.11 - Trailers

Edited by tube82
  • Like 1
Link to comment
Share on other sites

xnappo

I went ahead and separated them - it will make it even easier.

xbmb3c.usr.movies.%d.title
xbmb3c.usr.tvshows.%d.title
xbmb3c.std.movies.%d.title
xbmb3c.std.tvshows.%d.title

xnappo

  • Like 1
Link to comment
Share on other sites

tube82

Awesome, works as expected!

 

The std nodes are:

xbmb3c.std.movies.0 - All Movies
xbmb3c.std.movies.1 - Recently Added Movies
xbmb3c.std.movies.2 - In Progress Movies
xbmb3c.std.movies.3 - Favorite Movies
xbmb3c.std.movies.4 - BoxSets
xbmb3c.std.movies.5 - Trailers
xbmb3c.std.tvshows.0 - All TV
xbmb3c.std.tvshows.1 - Recently Added Episodes
xbmb3c.std.tvshows.2 - In Progress Episodes
xbmb3c.std.tvshows.3 - Next Episodes
xbmb3c.std.tvshows.4 - Favorite Episodes
xbmb3c.std.tvshows.5 - Upcoming TV
Edited by tube82
  • Like 2
Link to comment
Share on other sites

xnappo

Great.  Do you mind writing up a little more about how this all works for the skin thread?  I will also add usr.music.

 

xnappo

 

[EDIT] Also - can you please edit the first post in this thread to indicate it is a general thread for feature discussion?  Keep the original content, but just add an opening paragraph

 

Thanks again for your contributions.

Edited by xnappo
Link to comment
Share on other sites

elcabong

thanks for the node variable updates, working perfect.. awaiting the music section to complete the default home sub menu items.

 

 

 


As to timing for a new release, there are a few more issues I want to be sure we close;

 

1. Adding meta-data during playback.  @ started this, not sure if it is done

 

This is done mostly, I added a ListItem to the Play action that is used to show the info about the currently playing item, it currently shows name, thumb, epp Number and season if it is available. 

 

 

is this related to what data we can get from xbmc json requests?  i use a webinterface for xbmc control that displays info for the currently playing item including the cover and main fanart/background image, as well as some other info such as runtime, rating, release date/aired date, etc.  it would be awesome if a little more info was available through that if possible.

Edited by elcabong
  • Like 1
Link to comment
Share on other sites

im85288

thanks for the node variable updates, working perfect.. awaiting the music section to complete the default home sub menu items.

 

 

 

 

 

 

is this related to what data we can get from xbmc json requests?  i use a webinterface for xbmc control that displays info for the currently playing item including the cover and main fanart/background image, as well as some other info such as runtime, rating, release date/aired date, etc.  it would be awesome if a little more info was available through that if possible.

 

Some nice changes here guys, the randomness of the variables was very difficult to adapt too.

 

With regards the extra info for the play item, I also added the plot information to those null_pointer mentioned. If you have a look in default.py in the PLAY method you will see what data is added.

  • Like 1
Link to comment
Share on other sites

im85288

 

Awesome, works as expected!

 

The std nodes are:

xbmb3c.std.movies.0 - All Movies
xbmb3c.std.movies.1 - Recently Added Movies
xbmb3c.std.movies.2 - In Progress Movies
xbmb3c.std.movies.3 - Favorite Movies
xbmb3c.std.movies.4 - BoxSets
xbmb3c.std.movies.5 - Trailers
xbmb3c.std.tvshows.0 - All TV
xbmb3c.std.tvshows.1 - Recently Added Episodes
xbmb3c.std.tvshows.2 - In Progress Episodes
xbmb3c.std.tvshows.3 - Next Episodes
xbmb3c.std.tvshows.4 - Favorite Episodes
xbmb3c.std.tvshows.5 - Upcoming TV

 

@@xnappo - I added the Music and additionally included Photos and Music Videos, please test the latest in Github for any issues.

 

The new skin variables are:

xbmb3c.std.music.0 - All Music
xbmb3c.std.music.1 - Recently Added Albums
xbmb3c.std.music.2 - Frequent Played Albums
xbmb3c.std.music.3 - Music Videos

xbmb3c.std.photo.0 - Photos
Edited by im85288
  • Like 1
Link to comment
Share on other sites

xnappo

Thanks! I looked a the code and looks good to me.  

 

xnappo

 

[EDIT] Also - any comment on the actor images? 

Edited by xnappo
Link to comment
Share on other sites

im85288

Cool, I also added some more for Photos:

MB3TotalPhotos
LatestPhotoMB3.%.Title
LatestPhotoMB3.%.Thumb
LatestPhotoMB3.%.Path           
LatestPhotoMB3.%.Art(fanart)
LatestPhotoMB3.%.Art(clearlogo)
LatestPhotoMB3.%.Art(banner)
LatestPhotoMB3.%.Art(poster)
LatestPhotoMB3.%.Plot

As for the Actor Images, I'm not sure of if the add-on I stated is the solution as that may have worked due to me having a local xbmc library. I need to delete it and start again to test properly.

 

@ or @@xnappo - can you add the above variables to the thread with the skin propertys defined? I cannot edit the first post in it or would have added them myself.

Edited by im85288
  • Like 1
Link to comment
Share on other sites

tube82

I just did some testing with the Arctic skin and actor images in XBMB3C.

 

The script.metadata.actors actually works, but it doesn't provide the default XBMC functionality regarding actors. Instead, it shows additional informations.

 

Things that don't work in XBMB3C:

- When an actor is selected in the cast, the movie poster usually changes to an image of the actor. This is not the case in XBMB3C.

- When a selected actor is clicked (Enter/Return) a query is performed and a list of movies/episodes he or she appears in is shown. In XBMB3C the query always returns "No results found".

 

What works in XBMB3C when the script is installed and enabled:

- When an actor is selected in the cast and the right cursor is pressed, an online query for the actor is performed and an info screen with informations, a picture and the complete filmography is shown.

Link to comment
Share on other sites

xnappo

@@im85288 - done.

 

Probably we should just implement the MB3 native Actor functionality.  A lot of work though - probably won't make the next release.

 

I will add it to the issues list.

 

xnappo

Edited by xnappo
  • Like 2
Link to comment
Share on other sites

xnappo

I added some very rudimentary search capability.  It needs a LOT of refinement.  Please test and give implementation feedback.

 

xnappo

 

[EDIT] This needs the Input dialog box type, only available in Gotham

Edited by xnappo
  • Like 1
Link to comment
Share on other sites

elcabong

thanks for beginning to implement the search function.

 

just 1 issue so far:

cannot browse into folders (tv/seasons/collections)

 

and 2 requests:

could the list be grouped by category (movie/tv/music/artist/etc).

can you setup a variable.path so we can link a home screen button without using favorites (as favorites locks in the user id)

 

otherwise excellent start.

Link to comment
Share on other sites

tube82

After watching a few episodes of the same show, I've come up with a new suggestion/request:

 

In the skin support thread it is mentioned that the recent/next/random items are refreshed "about every 3 minutes". In itself that's fine, but could they also be refreshed when the homescreen is loaded? Or is this something that can already be done from the skin anyway?

 

When I finish watching episode S01E01 of a show and return to the home screen I would like it to update right away to display S01E02 as next episode. Waiting three minutes for a refresh kind of defeats the purpose of the "next up" shelf in that case.

 

[edit]

Something else I experienced: I marked an episode as watched from XBMC and the checkmark appeared, the episode wasn't marked as watched on the MB3 web interface when I checked later. Should this work?

Edited by tube82
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...