Kodi Community Forum
[RELEASE] Artist Slideshow addon (for skin integration) - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: Add-on Support (https://forum.kodi.tv/forumdisplay.php?fid=27)
+---- Forum: Program Add-ons (https://forum.kodi.tv/forumdisplay.php?fid=151)
+---- Thread: [RELEASE] Artist Slideshow addon (for skin integration) (/showthread.php?tid=102703)

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19


- liltee89 - 2012-02-10

Zombie thread but, how can I put my personal images in ..\AppData\Roaming\XBMC\userdata\addon_data\script.artistslideshow ?

I mean that I've some artist not very famous so no backdrops is downloaded and I see only a black screen :/ that's very ugly!! How can I put just one fanart for that artist? It doesn't matter if there's no slideshow but it's better to have no black screen...

I've tried to see how it works, but the script saves all the images in folder with random name and the images are with random names too... thank you!


- ronie - 2012-02-10

liltee89 Wrote:Zombie thread but, how can I put my personal images in ..\AppData\Roaming\XBMC\userdata\addon_data\script.artistslideshow ?

I mean that I've some artist not very famous so no backdrops is downloaded and I see only a black screen :/ that's very ugly!! How can I put just one fanart for that artist? It doesn't matter if there's no slideshow but it's better to have no black screen...

I've tried to see how it works, but the script saves all the images in folder with random name and the images are with random names too... thank you!

i don't think there's an easy way to add your own images.
you need to do some kind of crc-32 hashing on the artist name to find the folder name.

the options i can think of:
- upload your images to last-fm
- the skin you're using can fallback to a generic image when no last-fm images are available.


- liltee89 - 2012-02-10

ronie Wrote:i don't think there's an easy way to add your own images.
you need to do some kind of crc-32 hashing on the artist name to find the folder name.

the options i can think of:
- upload your images to last-fm
- the skin you're using can fallback to a generic image when no last-fm images are available.

Infact I was just thinkin' of a fallback to the fanart.jpg wich is in every artist folder if there's no image on htbackdrops or last.fm ... do you know how can I do? O I have to contact Big_Noid (I'm using Aeon Nox) ...


- ronie - 2012-02-10

liltee89 Wrote:Infact I was just thinkin' of a fallback to the fanart.jpg wich is in every artist folder if there's no image on htbackdrops or last.fm ... do you know how can I do?

fallback to the artist fanart image might be possible, but you'd need to test a few workarounds to know for sure.

falling back to a generic backdrop is easy though.


Feature Request (with patch) - pkscout - 2012-02-22

I had an itch, and I found a few people with a similar request. That is to be able to play a slideshow of images (not tied to the specific song playing) behind the fullscreen music. Since this script already has all the pieces needed (and I didn't want skin devs to have to support two different scripts), I patched this script to add an option in the prefs to point to a specific folder of images. If you set that it basically ignores everything else.

Anyway, I was wondering if this could be merged in? The code changes (and a patch file) are available at https://github.com/pkscout/script.artistslideshow. If not, no big deal. The modifications are working fine for my needs.


- Oddsodz - 2012-02-23

Hey all.

I See I am not the only one asking for a "Fallback" option of some kind for when "last-FM" or "Ht-Backdrops.com" have no images of the artist you are playing. Some time ago I asked if it can be done. And Ronie said he would look into it when Eden is out of beta. So to get this now is a nice bonus. I Will give it a test run.

And if you do get time Ronie....... I Also need some Time travel systems making. No hurry


- bossanova808 - 2012-02-23

While we're doing requests - being able to call the script with a supplied artist name would mean the script would be callable in other contexts rather than just when the XBMC player is playing...I could just add the skin control and call the script using data from an info label set by my other script...

(e.g. I could use it in my XSqueeze add on Wink - http://forum.xbmc.org/showthread.php?tid=122199


- pkscout - 2012-02-23

Oddsodz Wrote:Hey all.

I See I am not the only one asking for a "Fallback" option of some kind for when "last-FM" or "Ht-Backdrops.com" have no images of the artist you are playing. Some time ago I asked if it can be done. And Ronie said he would look into it when Eden is out of beta. So to get this now is a nice bonus. I Will give it a test run.

I should note that the patch, as written, is not a fallback. It's instead of the artist download. If you set the path, then the images come from there and nothing ever gets downloaded. And it's just a slideshow, not at all tied to the artist playing. I think I could figure out a way to have it also fall back if no images are found, but I think to have it fall back to local images of a specific artist might be harder, if only because I'd have to make assumptions about the naming conventions for the local artists folder.

I'll take another poke at it in the morning.


- pkscout - 2012-02-23

Never mind the morning. I 'm too ADD to let it wait. I've updated my github with new code that now includes an option to provide a path to a fallback folder. I've tested it for about 10 minutes and it seems to do what I expect. The hardest part was finding artists in my library that weren't in either download spot.

It is in no way tied to the artist playing, but at least you can put some images in so you don't ever have blank screens. It's still at https://github.com/pkscout/script.artistslideshow. I did not rev the version number or change the name, so if Ronnie updates this in the main repo, it will overwrite these changes.

There are two additional options now in the settings. Override slideshow folder will show the specified folder of images instead of downloading images. The Fallback slideshow folder will be used if no cached or downloaded artist images can be found.

edit at 9:44pm EST: The patch file is now up-to-date as well.


- Oddsodz - 2012-02-23

pkscuot Wrote:I should note that the patch, as written, is not a fallback. It's instead of the artist download.

Yeh, I knew that when I downloaded it the 1st time. You did state that that is what happends. I Just wanted to have look Nod

But if you have made changes to it now. I will have another poke around with it. I Did like it.

The next and best step I think is (and I have no idea if it can be done) is to have a 3 stage system for when and how the addon works.

This part is called "Stage 1 Look up". So amusing you are playing some fine tunes from Pink Floyd. The addon starts running and goes and downloads some nice Pink Floyd artwork.

Now you have changed your mind about listening to Pink Floyd. So you move on to playing some mp3 (or .flac for them that are cool) that is a recording from a local pub/bar gig of your mates band. Now there is no way that your mates band is on "Last-FM" or "HD-Backdrops.com". So it would nice if the addon had the power to look inside the local artist folder for a "ExtraFanArt" folder and use them images (the skin "Cirrus Extended v2" http://forum.xbmc.org/showpost.php?p=802989&postcount=1 makes use of this when you are browsing your music library). Now I will called that "Stage 2 lookup".

}{ Side note - This is most likely the hardest thing to pull off as it will involve end users having a set type of folder structure for there audio files

z:\MusicFolder\Pink Floyd
--->z:\MusicFolder\Pink Floyd\Dark Side Of The Moon
--->z:\MusicFolder\Pink Floyd\ExtraFanArt
z:\MusicFolder\Gun n Roses
--->z:\MusicFolder\Gun n Roses\Appetite for Destruction
--->z:\MusicFolder\Gun n Roses\Lies
--->z:\MusicFolder\ExtraFanArt

and so on.
}{ End of Side note

Now "Stage 3 lookup" will come into play if "Stage 1 LookUp" and "Stage 2 LookUp" failed to find any images to show. "Stage 3 LookUp" will be the "Fallback Folder". A Folder with just a bunch of cool images that you have. Could be any folder end user sets it to.

So the addon will go and start at "Stage 1 LookUp". If it don't find anything. It moves on to "Stage 2 LookUp". If again it fails to find anything to display. It then goes to "Stage 3 LookUp".

That is my wish list anyway. And so far (yet to test the new patch from pkscuot) we have "Stage 1 LookUp" and "Stage 3 LookUp". Just need that little bit of extra magic for "Stage 2 LookUp". And I will be a very happy man/geek/nerd and the be the envy of all my mates when they come round to party. This thing looks epic on my projector system.

Thank's for taking the time to read and the skill for making it.

Oddsodz


- pkscout - 2012-02-23

Oddsodz Wrote:That is my wish list anyway. And so far (yet to test the new patch from pkscuot) we have "Stage 1 LookUp" and "Stage 3 LookUp". Just need that little bit of extra magic for "Stage 2 LookUp". And I will be a very happy man/geek/nerd and the be the envy of all my mates when they come round to party. This thing looks epic on my projector system.

I was thinking about that this morning as well. I figure while Ronnie is making Eden safe for the world I might take a stab at that. It's going to require a "standard" structure, and I'm probably going to follow what Artwork Downloader uses (i.e. artist/extrafanart). I can probably make it case insensitive for the path so that Extrafanart or ExtraFanArt would work as well. I'd also like to add the ability to decide the priority. For me, I would want to use my local artist stuff first, then do a lookup, then use the fallback folder.


- pkscout - 2012-02-23

pkscuot Wrote:There are two additional options now in the settings. Override slideshow folder will show the specified folder of images instead of downloading images. The Fallback slideshow folder will be used if no cached or downloaded artist images can be found.

Just a note for anyone testing this. I found a problem this morning (only on Windows) where once you have set the override or fallback folder there is no way to remove it. You can change it, you just can't remove it. On my Mac I could "blank out" the setting by traversing up the directory tree to root. At that point the setting was empty again. On Windows when you get to root it forces you to choose a drive letter.

The workaround if you are on Windows and need to remove the override folder setting is to use the DEFAULTS button on the settings. Unfortunately that resets all your choices.


- Oddsodz - 2012-02-23

pkscuot Wrote:I was thinking about that this morning as well. I figure while Ronnie is making Eden safe for the world I might take a stab at that. It's going to require a "standard" structure, and I'm probably going to follow what Artwork Downloader uses (i.e. artist/extrafanart). I can probably make it case insensitive for the path so that Extrafanart or ExtraFanArt would work as well. I'd also like to add the ability to decide the priority. For me, I would want to use my local artist stuff first, then do a lookup, then use the fallback folder.

Can I just say YES YES, oh and YES AngryAngryAngryNod


- pkscout - 2012-02-24

I've got an updated fork at https://github.com/pkscout/script.artistslideshow. As before, the version number has not been revised, so when the script gets updated in the repo, these changes will get overwritten. I've been testing this all afternoon, and it appears to be working fine. The one exception is that the first time a download cache directory is created the slideshow will only show the first image downloaded until the artist plays again. I walked the code by hand, and I see where the refresh is suppose to happen, and I even see it happen on my screen (you see black for a second). But it just doesn't budge that first image. I don't think anything I did has altered the behavior, so I just decided to call it a feature that already existed in the plugin and move on with my life.

The settings now has a GENERAL and ADVANCED tab. The GENERAL tab is all the stuff that's always been there. I made one change to the GENERAL tab. In looking through the code, it looks like last.fm doesn't let you do minimum image size, so I set the min height and width options to show only if you select htbackdrops as a download option. The ADVANCED tab has all the stuff for the fallback options.

The script now does a three phase test to determine what images are shown.

1- If you set the Override folder path, those images will get shown and no artwork will be downloaded. This slideshow just runs in the background no matter what artist is playing.

2- If you set the Local artist folder by default the script will use those only if it can't find any images to download. If you set Prioritize local artist artwork, then the script will use the local stuff and only try to download images if it can't find any local artwork. In either case, what you see depends on the artist being played at the moment.

3- If you set the Fallback slideshow path, it will show that if the script can find local or remote artwork that matches.

The Override and Fallback folders must be a non-nested folder of images.

The Local artist folder has to be in the form of path/artist/extrafanart/. When you set the Local artist folder, you just set it up to path/. The artist directory name must match exactly what the script is getting from the tags of the music file.

On my Mac and Windows machine, the python call that gets the directory appears to be case insensitive. I don't have a Linux machine to test with, so it's possible that if you have something like Extrafanart or ExtraFanArt that the script won't find any local artwork. If someone could check that and let me know that would be great.

The only other thing I'd like to do is have the script set the fade time and image time for the slideshow, but that would require skin changes. I think I'll wait until Ronnie has a chance to look at what I've done before I take on anything else.

One last thing. These changes now let you use local images, but I still encourage people to upload their images to last.fm or htbackdrops so other folks get the benefit of your images. I mostly use the local stuff in cases where the script downloads either stuff I don't like or the wrong stuff (i.e. I got a bunch of Pink Floyd images when I was listening to Pink).


- kiboy6 - 2012-02-24

Wow...pkscout...thanks so much for this cool update.

While I have always loved this script, the one sadness for me was the inability to make use of the extrafanart images I had painstakingly collected.

One further request for the Advanced Options: Is there any chance of adding the option to show a slideshow comprising BOTH local and downloaded images. (ie not using one as a fallback for the other). That would be my perfect scenario.


pkscuot Wrote:The one exception is that the first time a download cache directory is created the slideshow will only show the first image downloaded until the artist plays again. I walked the code by hand, and I see where the refresh is suppose to happen, and I even see it happen on my screen (you see black for a second). But it just doesn't budge that first image. I don't think anything I did has altered the behavior, so I just decided to call it a feature that already existed in the plugin and move on with my life.
.

Yes this is a longstanding problem, which is especially problematic with a slow or otherwise occupied internet connection. Problem is, i think, that that one image, or else slideshow of some previously downloaded images for one artist will keep displaying until all further images for that artist are downloaded. On a slow connection this regularly leads to the wrong artists images being displayed for several subsequent artists.

It may not be noticeable on a good connection, but there is definitley major room for improvement in this script when used on a slow connection. This was discussed with Ronie earlier in this thread. IIRC the timing of the image display refreshing was based on completed downloads, not on a new song playing becuase Ronie was unable to have a separate python thread monitoring changes to the now playing song. (or something like that!)

If this is an issue you were able to lend your expertise to it would be a massive help Smile

Thanks again for all your valuable work on this!