• 1
  • 2(current)
  • 3
  • 4
  • 5
  • 15
Supporting multiple image types - need input (test build inside)
#16
I think in this point we have to make clear, what image types have to be defaults and what to considered as Extra.
IMHO the necessary image types so any view can skinned nice and easy are:

MOVIES:
ListItem.Art(fanart) - FileType: fanart.jpg
ListItem.Art(poster) - FileType (poster style): poster.jpg.
* ListItem.Art(thumb) - FileType (poster style): folder.jpg or poster.jpg if folder.jpg is missing locally.

TV SHOWS:
ListItem.Art(fanart) - FileType: fanart.jpg
ListItem.Art(banner) - FileType (banner style): banner.jpg.
ListItem.Art(poster) - FileType (poster style): poster.jpg.
ListItem.Art(landscape) - FileType (16x9 style): landscape.jpg.
* ListItem.Art(thumb) - FileType (banner style): folder.jpg or banner.jpg if folder.jpg is missing locally.

IMO the default image style for Movies and TV Shows should be Poster for Movies and Banner for TV Shows so there is a difference between them. For me always when browse TV Shows i am waiting to see banners and posters when i browse Movies, but that is just my personal taste. All the other artwork (logo.png etc) could be considered as Extra. It can be supported in the future but let the user to download them. Not the XBMC scraper.

* I don't know if is doable or sounds logical for the others but it looks best for me if the ListItem.Art(thumb) could apply only for file mode.

As for the select/download artwork dialog from a button in DialogVideoInfo i totally agree but only for artwork that are natively supported by XBMC. IMO the natively supported artwork should not be treated and be together with any artwork that can be downloaded by any add-on. If the add-on is missing or broken user it would turn to XBMC (or blame XBMC) for support and find a solution.

Cheers
Nessus
Reply
#17
Quote:-scraper should pull both poster and banner by default, with an option for posters/banners only
Why?

Quote:All additional art can be treated as ListItem.Art(foo) (use foo.jpg local files, if present on disk).
This isn't enough - doesn't handle multiple movies in a single folder. But yes, there'll be a mapping from type -> local.

Quote:Additional button in DialogVideoInfo "get more art" which would open a dialog/start artwork downloader is something that I personally would like the most as it gives possibility to skin to not use it at all.
No need for artwork downloader necessarily, but the skinner can already add a button for it if they want.

As for the rest, just because the art is available to use, doesn't mean you have to use it. To begin with, only banner, poster, thumb, fanart will likely be available as the rest aren't scraped by default anyway. But it makes sense, though, to allow support for other things by default as they become more used. I fully expect that most skins will continue to display a single image for the thumbnail along with a backdrop in most views.

The whole idea is to do it in a way that is generic enough that it allows extension a little easier. Older skins will "break" just with the poster/banner switch, if by "break" you mean "might display a poster for newly scraped shows, scraped with an updated scraper that no longer requires the poster/banner switch, where it previously might have scraped a banner".

Cheers,
Jonathan
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#18
Quote:IMO the default image style for Movies and TV Shows should be Poster for Movies and Banner for TV Shows so there is a difference between them

How does XBMC know it's a TV show when you haven't scraped yet? It doesn't. The ONLY option is for folder.jpg to be slotted into the generic "thumb". Obviously, poster.jpg and banner.jpg can be slotted into "poster" and "banner" equivalently. Skins will be expected to:

1. Use whatever they want for the particular view, eg ListItem.Art(poster).
2. Drop back to ListItem.Icon (thumb/icon/fallback) if unavailable.

Just like (I presume) all skins that use anything other than ListItem.Icon already do.

If poster.jpg or banner.jpg is available and folder.jpg is not, then "thumb" will be filled with the first we find.

Quote:It (logo.png) can be supported in the future but let the user to download them. Not the XBMC scraper.
An alternative is supporting it out of the box. After all, if the skin is expecting the information to be there, it seems silly to say "oh, you need to run this add-on before the skin will look any good".

Quote:IMO the natively supported artwork should not be treated and be together with any artwork that can be downloaded by any add-on.
The key is to ensure that the system is expandable via the add-on. Currently, it is my understanding that the add-on downloads the art to the movie folder, and the skin then loads directly from there. Instead, it would be better if the add-on could update the library with the extra art links (whether local or remote), and the skin could then use them from there instead. This avoids the need to download locally (XBMC can handle exporting to local files**, or the add-on could optionally do that).

Cheers,
Jonathan

** To do this XBMC needs to know the mapping from image type to local filename.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#19
i agree with jmarshall, banner and thumbs should definitely be treated exactly the same as all the other media stuff (logo, cdart etc) there should be no difference concerning handling from a skinner´s point of view.
ALL IMAGES should become part of the thumbnail database to also eliminate the need to spin up all drives which are used (esp. NAS) when you just browse your media.
is it correct that IsEmpty() would only work when they´re cached in database? that´s one of the things which is buggin me most, i cannot check properly if a file exists in "external" folders.
Donate: https://kodi.tv/contribute/donate (foundation), 146Gr48FqHM7TPB9q33HHv6uWpgQqdz1yk (BTC personal)
Estuary: Kodis new default skin - ExtendedInfo Script - KodiDevKit
Reply
#20
(2012-07-17, 01:30)nessus Wrote: IMO the default image style for Movies and TV Shows should be Poster for Movies and Banner for TV Shows so there is a difference between them. For me always when browse TV Shows i am waiting to see banners and posters when i browse Movies, but that is just my personal taste. All the other artwork (logo.png etc) could be considered as Extra. It can be supported in the future but let the user to download them. Not the XBMC scraper.

From a practical point of view Poster maybe makes more sense as there is always tv show poster thumb available (DVD cover), while banner has to be hand made and is not always available for older or less popular tv shows.

EDIT: Here's another one - suppose you want to show recently added episodes with tvshow thumbs and you end up with banners on home page.
My skins:

Amber
Quartz

Reply
#21
(2012-07-17, 03:39)jmarshall Wrote: -scraper should pull both poster and banner by default, with an option for posters/banners only

Why?

Aspect ratios differences between posters and banners are so huge. If you use aspectratio=keep you either end up with poster or banners that are very, very small. If you use stretch or scale you end up with thumb that is badly cropped and unusable. Users don't care about this technical background and often wonder why their art is "squished". There are many user questions about this in all skin threads. Having both available means we can always show the right one without user involvement.

Quote:All additional art can be treated as ListItem.Art(foo) (use foo.jpg local files, if present on disk).

This isn't enough - doesn't handle multiple movies in a single folder. But yes, there'll be a mapping from type -> local.

Sure, but it's the same as it is now, that's why /movie-title/ is being used in those situations (movie_title-foo.jpg)?

Quote:As for the rest, just because the art is available to use, doesn't mean you have to use it. To begin with, only banner, poster, thumb, fanart will likely be available as the rest aren't scraped by default anyway. But it makes sense, though, to allow support for other things by default as they become more used. I fully expect that most skins will continue to display a single image for the thumbnail along with a backdrop in most views.

That's theory, but real life tends to disagree with it. If additional art is available in default skin, that means scrapper support for it will shortly follow and users will try it out and you have to have additional views prepared. One's this is started you will need to provide skin and XBMC code support for it, even if it is used by 10% of users.

Let me ask differently - will additional art be supported in Confluence? I expect it needs to be if you have 1 button in DialogVideoInfo.xml labeled "Get Art" that opens up a dialog with all possible art available.

One more thing that just crossed my mind - generic "get artwork" button that offers a list of all available art makes sense only after you have scrapped, say, whole library with, say, "clear logos". Otherwise you will have only 1 extra image that you have manually DL from DialogVideoInfo and switching to Logos view will show just that one along with empty placeholders for the rest.

Quote:The whole idea is to do it in a way that is generic enough that it allows extension a little easier. Older skins will "break" just with the poster/banner switch, if by "break" you mean "might display a poster for newly scraped shows, scraped with an updated scraper that no longer requires the poster/banner switch, where it previously might have scraped a banner".

By breakage I meant that with ListItem.Art(foo) you will break movies, shows and seasons. With ListItem.Thumb in place and mapped to posters, you will break only banner views in shows and this breakage means that posters will be shown instead as opposed to ListItem.Art(foo) where you end up with empty placeholders everywhere.

We still have to use ListItem.Icon for video add-ons, episodes and plugins content in MyVideoNav.xml, right? And I suppose what we are discussing here applies to music as well (cd art, artist logo, etc)?

Currently, you fire up artwork downloader from VideoInfo (IF you like to go extra artwork route) and it fetches all extra stuff to disk. What is needed, IMHO, is that it starts library update afterwards where XBMC would map all this additional art to ListItem.Art(foo) making it available for skinners to use and check for IsEmpty(ListItem.Art(foo)). All other things can probably stay in place with exception to banners that should be DL along with posters. I would say treat banners same way as extra arts, but system support for those is there for so long and people are expecting to find them available.

My skins:

Amber
Quartz

Reply
#22
The only thing which needs to have a standard is posters and banners for tv shows. Everything else is ok for now because it's read locally anyway (and filenames are the same because of Artwork Downloader).

Because we can choose which type the tvdb scraper should download, some use posters and some banners so ListItem.Thumb is either poster or banner. In my opinion it would be enough to have ListItem.Thumb (always poster) and ListItem.Banner for tv shows. The ListItem.Art(foo) stuff could then go one step further and support more types but it's not necessary right now.
Image
Reply
#23
(2012-07-17, 13:21)`Black Wrote: The ListItem.Art(foo) stuff could then go one step further and support more types but it's not necessary right now.

As I've said I have no use of those extras but it might be better to solve it now as you would be able to use IsEmpty checks, performance would be better as extra art would be cached and media sources does not need to be online all the time.

My guess is all of this could be achieved with "saving" of those local images to library much like local fanart.jpg or folder.jpgs are being now.
My skins:

Amber
Quartz

Reply
#24
@pecinko: You're misunderstanding. I asked why there needs to be a toggle to stop the scraper downloading both banners and posters. I think everyone will agree that this is completely unnecessary - we mayaswell just download both and let the skinner choose which is appropriate for each view.

Quote:One more thing that just crossed my mind - generic "get artwork" button that offers a list of all available art makes sense only after you have scrapped, say, whole library with, say, "clear logos". Otherwise you will have only 1 extra image that you have manually DL from DialogVideoInfo and switching to Logos view will show just that one along with empty placeholders for the rest.
Well, for a start, Get Artwork would display options for "poster", "fanart", and "banner". We may restrict these as needed by type if necessary, but the point is that by default there'll be at least 2 images available to be set. If we need to restrict, then this may get a little tricky. I'm not sure what to do about "thumb". It might be that we display "thumb" only for cases where there is no specific alternative like "poster" or "banner" (e.g. for episodes or artists or actors).

My idea was that this list would be maintained in the database. Local files would be mapped using your suggestion (movie_name-<type>.jpg/png and movie_name/<type>.jpg/png). The "thumb" type would be special in that the local file would also use the previous naming for backward compatibility**. Using this system, the add-on just needs to set a new art type in the database for a particular item and it's available to set for all other items of that type. In addition, a default list would be appended to this, defined via advancedsettings.xml for each type.

Thus, deciding what to display when the user clicks on "Get Artwork" would be done as follows:

1. Lookup all image types available in the library for items of the same type.
2. Append to this list the default image types from advancedsettings for items of this type (if not already present via 1).

Cheers,
Jonathan

** Would the thumb would be exported using the existing folder.jpg/movie_name.tbn, or perhaps thumb.jpg/movie_name-thumb.jpg? Changing folder.jpg might have implications for folder thumbs, though I guess there's nothing stopping us reading thumb.jpg before folder.jpg...
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#25
(2012-07-18, 01:32)jmarshall Wrote: My idea was that this list would be maintained in the database. Local files would be mapped using your suggestion (movie_name-<type>.jpg/png and movie_name/<type>.jpg/png). The "thumb" type would be special in that the local file would also use the previous naming for backward compatibility**. Using this system, the add-on just needs to set a new art type in the database for a particular item and it's available to set for all other items of that type. In addition, a default list would be appended to this, defined via advancedsettings.xml for each type.

Thus, deciding what to display when the user clicks on "Get Artwork" would be done as follows:

1. Lookup all image types available in the library for items of the same type.
2. Append to this list the default image types from advancedsettings for items of this type (if not already present via 1).

Cheers,
Jonathan

** Would the thumb would be exported using the existing folder.jpg/movie_name.tbn, or perhaps thumb.jpg/movie_name-thumb.jpg? Changing folder.jpg might have implications for folder thumbs, though I guess there's nothing stopping us reading thumb.jpg before folder.jpg...

Allowing these artwork downloaders to add the 'extra' artwork types to the Library(s) is a good plan. It probably would be a idea to add the ability for the add-on to trigger a Thumbnail cache update(two different methods, full re-check and by library id) Sorry if this is taking this thread off topic.
Reply
#26
(2012-07-18, 01:32)jmarshall Wrote: 2. Append to this list the default image types from advancedsettings for items of this type (if not already present via 1).

So are we saying that for a user to use eg logo.jpg they'd have to first get their hands dirty with the advancedsettings.xml?

Couldn't this be determined via the skins addon.xml instead?
Reply
#27
[/quote]
(2012-07-18, 06:43)giftie Wrote: Allowing these artwork downloaders to add the 'extra' artwork types to the Library(s) is a good plan. It probably would be a idea to add the ability for the add-on to trigger a Thumbnail cache update(two different methods, full re-check and by library id) Sorry if this is taking this thread off topic.

Agree on this. The add-on should be able to trigger a re-cache of the image (not needed if it's a an url of an image because they differ in 99% of the cases).


(2012-07-18, 10:17)Hitcher Wrote:
(2012-07-18, 01:32)jmarshall Wrote: 2. Append to this list the default image types from advancedsettings for items of this type (if not already present via 1).

So are we saying that for a user to use eg logo.jpg they'd have to first get their hands dirty with the advancedsettings.xml?

Couldn't this be determined via the skins addon.xml instead?

Users should not edit the advancedsettings.xml to able to use other artwork besides banner/posters.
Or did you mean that if the script has already set several types of artwork these will be shown and only if the user wants additional types they should set them theirselves?
If we still need an add-on to download the extra artwork we could do the same as it is now. Let the skin trigger the script with the options needed and the script sets the appropiate image url in the database.


Quote:I'm not sure what to do about "thumb". It might be that we display "thumb" only for cases where there is no specific alternative like "poster" or "banner" (e.g. for episodes or artists or actors).
That would make more sense.
'Thumb' isn't really clear if that could be a poster or a banner. So keeping that for episode image and artists/actors. Or move away from the thumb and make the ListItems more clear on what they mean like ListItems.ArtistThumb (or something like that)
Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
Reply
#28
(2012-07-17, 03:49)jmarshall Wrote: How does XBMC know it's a TV show when you haven't scraped yet? It doesn't. The ONLY option is for folder.jpg to be slotted into the generic "thumb". Obviously, poster.jpg and banner.jpg can be slotted into "poster" and "banner" equivalently. Skins will be expected to:

1. Use whatever they want for the particular view, eg ListItem.Art(poster).
2. Drop back to ListItem.Icon (thumb/icon/fallback) if unavailable.

Just like (I presume) all skins that use anything other than ListItem.Icon already do.

If poster.jpg or banner.jpg is available and folder.jpg is not, then "thumb" will be filled with the first we find.
Sorry... my native language is not English and maybe i explain it wrong but that's exactly what i meant. Map "folder.jpg" to ListItem.Art(thumb) and poster.jpg and banner.jpg to ListItem.Art(poster) and ListItem.Art(banner) equivalently. I just think that the "folder.jpg" (ListItem.Art(thumb)) and "banner.jpg" (ListItem.Art(banner)) should be a banner style in TV Shows. So basically when you scrap TV Shows, scrap both "folder.jpg" and "banner.jpg" and they are the same banner style. Something like the existing scraper's options "Prefer Banners" and "Prefer Posters" to work as one.


(2012-07-17, 03:49)jmarshall Wrote: An alternative is supporting it out of the box. After all, if the skin is expecting the information to be there, it seems silly to say "oh, you need to run this add-on before the skin will look any good".
Of course I have no problem with an out of the box support of as much as possible images types but i would be more than happy with only the banner and landscape support Smile

(2012-07-17, 09:34)pecinko Wrote: From a practical point of view Poster maybe makes more sense as there is always tv show poster thumb available (DVD cover), while banner has to be hand made and is not always available for older or less popular tv shows.
The tvdb.com supports banners for all the shows. In fact in the new additions first available thumb is banner and little later the poster.

(2012-07-17, 09:34)pecinko Wrote: EDIT: Here's another one - suppose you want to show recently added episodes with tvshow thumbs and you end up with banners on home page.
Maybe i have misunderstood but when i say ListItem.Art(thumb) with banner style image in TV Shows I thought that this was applied only in TV Shows level ? Huh


In any case the important thing is to have native support for more images and i want to thank jmarshall for getting his hands dirty on this.

Cheers
Nessus



Reply
#29
(2012-07-18, 10:39)Martijn Wrote: Or move away from the thumb and make the ListItems more clear on what they mean like ListItems.ArtistThumb (or something like that)
That scratches my entire post and i think is the best way to go Nod
Reply
#30
Quote:So are we saying that for a user to use eg logo.jpg they'd have to first get their hands dirty with the advancedsettings.xml?

Only if they got the image from something other than an addon. i.e. an addon will just be able to set the "logo" image on a show item. Once that's done, XBMC will show "logo" as an option when setting content on a show. The advancedsettings is basically for the defaults XBMC supports (or, for the user who is so anal, they don't want to use artwork downloader addons, and want to do it all themselves).

And yes, in some senses, I like the idea of moving away from the general "thumb". The disadvantage is you can't re-use the same view for different things as easy.

Cheers,
Jonathan
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
  • 1
  • 2(current)
  • 3
  • 4
  • 5
  • 15

Logout Mark Read Team Forum Stats Members Help
Supporting multiple image types - need input (test build inside)2