(2019-07-23, 00:03)bsoriano Wrote: @chrissix , this is really cool! What do I need to do as a skinner to add support for this in my skin? I am currently maintaining Amber. Thanks for your help.
Regards,
Bart
I am very honored that the maintainer of the well-known Amber skins is interested in it! You're one the first
First of all, the practical usability will only be given when Meta-Data & Artwork Provider does implement the API (ArtworkBeef, Media Managers...)
Content -> Database -> API -> Implementations of Meta-Data & Artwork Provider -> Skin
But you can integrate it at any time, the concept will not change, and since you will surely install a toggle button it will not have negative effects for people who do not use it yet.
____
Naming:
if sour local artwork is named "poster.jpg" then use "poster1.jpg", "poster2.jpg", ...
if your local artwork is named "Moviefilename-poster.jpg" then use "Moviefilename-poster1.jpg", "Moviefilename-poster2.jpg", ...
___
Read into Kodi Database:
for read in the database use ArtworkBeef, You can set up there up to 10 already for read in (poster10), if more use the "Addidional Art Types for Movies" button. (poster11, poster12...)
On Leia you are not forced to use ArtworkBeef, you can also use the "modify the advancedsettings.xml solution" but i haven't tested ->
337089 (thread)
___
Skinning:
You call the InfoLabel the same as main poster, just with the number added.
There are several ways you create a multiimage in skin. Depending on your needs you may or may not exclude the main poster.
You can use a fadelabel control for call them in a list or a short ArtworkHelper code with a & chain if you use ArtworkHelper.
Both ways in the ArtworkBeef/ArtworkHelper wiki described.
If you want use random mode just use these normal multiimage.
It is meant that it can also be used alternatively in the integer mode. All posters are carefully sorted.
But in a normal multiimage integer mode is only working up to poster9.jpg.
After that you will get on integer: poster1, poster10, poster11, poster2 ...
If you want to use integer then use a usual list with scroll and a control type (single) image.
Then create a toggle button to switch between integer mode and random mode.
I am no skinner professional... there are maybe better ways to achieve...
I have huge problems with the normal multiimage combining with a visible condition. (Only show sideshow if poster1 is available)
The visible conditions creates a "flickering" on each container onnext/onprevious, looks ugly and animations not useable anymore!
Workaround: I put the multimage outside and invisible of screen so the flickering isn't visible anymore, then use a slide and after the slide make it visible.
The visible delay has also to be tuned with your multiimage interval.
But for showing multiimage in a normal list in a control type (single) image should also be functional without such workaround.
____
This is a example code with the workaround for normal multiimage random. I use a ArtworkHelper Code there! (You can do same with fadelabel control)
Cause @
sualfred EmbuaryHelper is now in rapid developement i also hope there would be support for multiimage artwork type stuff.
Code:
<control type="group">
<animation type="Conditional" reversible="false" condition="![Container(51).OnNext | Container(51).OnPrevious] + !String.IsEmpty(Container.ListItem.Art(poster1))">
<effect type="slide" start="0,0" end="1014,0" time="300" tween="cubic" easing="out" />
<effect type="fade" start="0" end="100" delay="17500" time="1000"/>
<effect type="fade" start="100" end="0" delay="93500" time="1000"/>
</animation>
<!-- Extraposter AB-->
<control type="multiimage">
<left>-1007</left>
<top>103</top>
<width>338</width>
<height>513</height>
<timeperimage>6000</timeperimage>
<randomize>true</randomize>
<fadetime>FanartCrossFadeTime</fadetime>
<aspectratio align="center" aligny="top">stretch</aspectratio>
<imagepath background="true">plugin://script.artwork.helper/multiimage/?image=$INFO[Container.ListItem.Art(poster1)]&&image=$INFO[Container.ListItem.Art(poster2)]&&image=$INFO[Container.ListItem.Art(poster3)]&&image=$INFO[Container.ListItem.Art(poster4)]&&image=$INFO[Container.ListItem.Art(poster5)]&&image=$INFO[Container.ListItem.Art(poster6)]&&image=$INFO[Container.ListItem.Art(poster7)]&&image=$INFO[Container.ListItem.Art(poster8)]&&image=$INFO[Container.ListItem.Art(poster9)]</imagepath>
<visible>String.IsEqual(Skin.String(extraposter_toggle),Characterposter) + !String.IsEmpty(Container.ListItem.Art(poster1))</visible>
</control>
</control>
___
If you want it the same place as main poster and don't wanna hide main poster just use a black background between, it's looking nicer on fades.
But as i said... i'm a skinner noob and got it working nice... you're skinner pro and got it working nicer