Kodi Community Forum

Full Version: Artist Slideshow addon (with skin and addon integration)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(2013-07-07, 14:24)cw-kid Wrote: [ -> ]I set the path to the parent folder of the artists in AS. Which is: SMB://WHS/Music/
I changed the setting in AS to use both local and remote images.

But I am slightly confused about how things are meant to be working?

If in the Aeon MQ4 skin, I have selected from the pull down menu - Art -> Extra Fanart turned off. Then the artist background images that are displayed during playback, are the ones that it gets from TheAudioDB.com when you load / reload the artist etc. These presumably are then cached locally somewhere on the HTPC.

If I then turn back on Extra Fanart setting in the Aeon MQ4 skin, it only displays the artwork images in the artists extrafanart folder (If present) on the file server. Not a combination of both.

However if an artist doesn't have any extrafanart sub-folder present on the file server, then in that case (even when extrafanart is turned on in the skin) it will still display the artist background image obtained from TheAudioDB.com.

You really need to find the Aeon MQ4 thread and ask there. The setting you mentioned is an Aeon MQ4 setting, not as AS setting, and skin developers have a great deal of flexibility in how they implement AS. I don't use the Aeon MQ4 skin, so I'm not in a position to clarify how it works with AS.
pkscuot, I guess you missed my last post. I was trying to debug this and I see that the plugin is downloading the artist2 images. But I see artist2 very rarely. I'm using Aeon Nox skin.

I would like to know who controls the display of images - the skin or the slideshow plugin? Can I make all artists appear with equal frequency?
(2013-07-08, 04:36)rubpa Wrote: [ -> ]I would like to know who controls the display of images - the skin or the slideshow plugin? Can I make all artists appear with equal frequency?

Both the skin and Artist Slideshow control some portion of the display. Artist Slideshow controls *what* gets displayed. It does this by placing images in various directories and then telling the skin which directory it should use to display images. The skin controls *how* the images get displayed (where, for how long, etc.). The skin does that by using something called a multiimage control. There is more information on the multi-image control at:

http://wiki.xbmc.org/index.php?title=XBM...ge_Control

If you looked at the example in the link above, you'll see that the skin can control things like position and size, whether the images will be displayed randomly or in order, how long an image will stay on the screen, how long to fade between images, etc. The suggestion I make to skinners is that the multiimage control have random images displayed for 10 seconds with a 2 fade time.

Given all that, the short answer to "can I have 2 artists show up with the same frequnecy" is no.

Here's the long answer. Even if you had the same number of images for each artist, XBMC selects one at random from the list each time it gets ready to display until it's out of images. Then it starts over. Because the selection is random, it is completely possible that you will get a bunch from one artist and almost nothing from the other. The only way I could guarantee equal frequency is if I had the same number of images for each artist (meaning either duplicating images for the lesser quantity or throwing away some from the greater quantity) and I put them in the exact order I wanted to show them (alternating artists) and the skin author agreed to change the skin display from random to ordered. And at the end you would get the exact same images in the exact same order time after time after time.

As I think about it, you can achieve what you want now by modifying the Aeon Nox skin to show images in order rather than randomly (or ask them to put an option in for it). You would have to ask the Aeon Nox folks where the multiimage control is that displays the stuff from Artist Slideshow. Then set AS to use local images first and make sure any artist who shares credit on a song has images in your local images location. When naming the images, put '1-' in front of the first image you want to display from that artist. Then '2-' and so on. Do that for every artist who shared credit on any song. Then when you show the visualization you will get them with the same frequency. Unfortunately for you will always get the same images in the same order, so if you have lots of artwork you might never see the stuff at the end of the list. This would also be true for single artists as well.
Thanks for the detailed reply. Can you point me to the plugin directory that is passed to the skin for display?
There are two possibilities. One is the directory you set for local images in your settings. The other is the cache directory. The cache directory can be found in your XBMC userdata folder addon_data/script.artistslideshow/ArtistSlideshow. The directories are named using a hash of the artist name, so you may have to do some exploring if you're looking for particular images.

P.S. Your userdata folder is located somewhere different depending on the platform. Check out http://wiki.xbmc.org/index.php?title=Userdata for more information.
(2013-07-02, 04:19)pkscuot Wrote: [ -> ]
(2013-07-01, 22:42)scott967 Wrote: [ -> ]Need some tagging advice for Artist Slideshow comparability.

I'm currently on 1.5.2, sort have been watching 1.5.3 progress. My problem is that I have many Korean and Japanese artists. It seems like to get art from Last.FM you often need to have the song artist in Hangul or Katakana characters, but in most cases on Musicbrainz they will use Latin characters (but it is kind of hit or miss). For my own benefit I have entered tags with artist and album MBIDs, but I guess nothing in XBMC or addons read these so no help for this. Last.FM typically has the best results for me so I would like to keep ability to have Artist Slideshow query that source if possible. Any suggestions or pointers? I have played with editing the nfos that Artist Slideshow creates but that's kind of slow going.

1.5.3 will maintain all the last.fm functionality, so you could just leave it the way it is and you'll keep getting all the artwork, bios, and albums from last.fm. The other option is that if you can somehow get the musicbrainz ID for the given artist into the right place in the XBMC database (no, I don't know what the right place is), then in theory AS 1.5.3 will read that by using a JSON request to get it from XBMC. The thing is, I can't really test that code, as I don't have any artists that have the musicbrainz ID scraped and in the database. I believe that is suppose to be coming in XBMC 13, so I tried to code for that possibility.

Thanks. I've been digging into getting 1.5.2 running. Having a problem with the script returning "site unreachable" from last.fm, but when I copy the url into a browser it works (returns data as expected). This is on XBMC 12.2 and Ace skin 1.7.0. For testing I set an AS local folder as "testmusic" (no local data is present for this artist though). Here is my log: http://xbmclogs.com/show.php?id=35532 with AS started on thread 6816 @ line 767. I tried my api key just in case (didn't think it would matter since it works in browser) and still get "site unreachable". Near as I can tell something is going wrong with a call to urllib.urlretrieve(url,filename)? I see another user seems to have had this problem, but if couldn't tell if it was ever resolved.

So I installed 1.5.3.009 just to see what would happen and it's a little hard to follow the logs but this time it worked, even though the same url to last.fm was generated.

I did notice that 1.5.3.009 went to musicbrainz and did find the artist MBID, but when it couldn't find a matching release or recording it threw the artist MBID away (apparently). FWIW the script also logged an error on a unicode comparison. Sent a log on this to pastebin if interested. http://pastebin.com/EWVdAVGT

So from my perspective I am making progress.

scott s.
.
(2013-07-09, 03:35)scott967 Wrote: [ -> ]Thanks. I've been digging into getting 1.5.2 running. Having a problem with the script returning "site unreachable" from last.fm, but when I copy the url into a browser it works (returns data as expected). This is on XBMC 12.2 and Ace skin 1.7.0. For testing I set an AS local folder as "testmusic" (no local data is present for this artist though). Here is my log: http://xbmclogs.com/show.php?id=35532 with AS started on thread 6816 @ line 767. I tried my api key just in case (didn't think it would matter since it works in browser) and still get "site unreachable". Near as I can tell something is going wrong with a call to urllib.urlretrieve(url,filename)? I see another user seems to have had this problem, but if couldn't tell if it was ever resolved.

So I installed 1.5.3.009 just to see what would happen and it's a little hard to follow the logs but this time it worked, even though the same url to last.fm was generated.

Yea, while working on 1.5.3 I found a pretty long standing bug with last.fm URLs and Unicode. So I fixed it. I also migrated over to urllib2 at the same time. So that might be helping things too.

Quote:I did notice that 1.5.3.009 went to musicbrainz and did find the artist MBID, but when it couldn't find a matching release or recording it threw the artist MBID away (apparently). FWIW the script also logged an error on a unicode comparison. Sent a log on this to pastebin if interested. http://pastebin.com/EWVdAVGT

Musicbrainz is a special beast. Their search results default to giving you the most possible results even if there is only a small chance it's a match. So I have to do some additional comparisons, as I'd rather you get nothing back than the wrong artist. So AS checks to see if the currently playing album name is in the list of album names for a potential match. If it doesn't find anything, then it tries to find a match to the song name. If it still doesn't find anything then it gives up and passes back nothing. Without that logic about half my artists were coming back with incorrect artwork.

As to the Unicode thing, that's a bug. I'll go sacrifice another small animal to the Unicode gods and see if I can fix it. Would it be wrong of me to ask everyone to just start using Latin characters for everything? Big Grin

Disclaimer: I won't actually be sacrificing any animals, small or otherwise.
Hello,

i have a problem with this addon.
It doesnt show any slideshow in different skins. I have tried the confluence skin and the transparency! skin.

I cannot getting into addon setting from the main screen, nothing happens.

Here is the log file:

http://pastebin.com/Y4V9ketU

Have you any idea?
(2013-07-09, 09:09)Marco Wrote: [ -> ]i have a problem with this addon.
It doesnt show any slideshow in different skins. I have tried the confluence skin and the transparency! skin.

I cannot getting into addon setting from the main screen, nothing happens.

Here is the log file:

http://pastebin.com/Y4V9ketU

There is no indication in that log file that Artist Slideshow has been run or that you even played any music. You have to use a skin that supports Artist Slideshow and properly enable it. Confluence does not support AS out of the box. If you are comfortable modifying the Confluence skin, there are some instructions on the AS wiki page (see link in my signature) about that. If not, you need to find a skin that supports AS, and you should ask in the skin's support thread about how to enable that support.
Thanks for your fast response.

I will create a new log with another skin.
I've also tried Aeon nox and transperency which supports AS.

But yes, the log is from confluence.
(2013-07-09, 03:34)pkscuot Wrote: [ -> ]There are two possibilities. One is the directory you set for local images in your settings. The other is the cache directory. The cache directory can be found in your XBMC userdata folder addon_data/script.artistslideshow/ArtistSlideshow. The directories are named using a hash of the artist name, so you may have to do some exploring if you're looking for particular images.

I think I found a bug with multiple artists. Tell me if I'm right. I don't use local directories. All images are fetched from last.fm.

Assumption: _set_property("ArtistSlideshow",...) is the way of communicating the directory to the skin. I modified the code slightly to print the directory being passed to the skin.
Code:
def _set_property( self, property_name, value=""):
      if (property_name == "ArtistSlideshow"):
        log("ArtistSlideshow set to " + value)
      try:
        self.WINDOW.setProperty(property_name, value)
      except:
        pass
        log(" *************** Exception: Couldn't set propery " + property_name + " value " + value)

Test 1: Since I had some problems with thumbnails loading, I did this test after clearing all data in userdata\addon_data\script.artistslideshow, userdata\Thumbnails & userdata\Database\Textures13.db before running xbmc. I played a song with 3 artists and I understand from the logs that the final directory (about 1 min into the playback) passed was userdata\addon_data\script.artistslideshow\merge. I checked this folder and it had the images of all 3 artists. Exited XBMC. The logs are here: http://xbmclogs.com/show.php?id=36516

Test 2: Start XMBC again. Played the same song. Waited for almost 2 minutes and I saw the images of a single artist only. From the logs I see that userdata\addon_data\script.artistslideshow\merge was never passed to the skin. The logs are here: http://xbmclogs.com/show.php?id=36517

My primary system is XBMCbuntu and these tests were done on my windows laptop. But I think it explains why I have very rarely seen images of the 2nd/3rd artist.

Appreciate your time and help!
I'm pretty sure that issue is corrected in the 1.5.3 beta.
Tried it just now. Yes, it appears fixed. Thanks!
(2013-07-09, 03:45)pkscuot Wrote: [ -> ]Yea, while working on 1.5.3 I found a pretty long standing bug with last.fm URLs and Unicode. So I fixed it. I also migrated over to urllib2 at the same time. So that might be helping things too.

As to the Unicode thing, that's a bug. I'll go sacrifice another small animal to the Unicode gods and see if I can fix it. Would it be wrong of me to ask everyone to just start using Latin characters for everything? Big Grin

Disclaimer: I won't actually be sacrificing any animals, small or otherwise.

Thanks. Even as it is, I'm finding beta 009 is working very well. I haven't tried it with streaming via pandora yet but that's a nice feature as well. Meanwhile I've been re-tagging most of my music, as it seems if I use the Asian character name versions it pretty reliably hits on both Last.FM and Musicbrainz, at least using the search feature on the sites. Not sure if doing a query via api works the same (a little testing on Last.FM suggests that one does, don't know on Musicbrainz).

scott s.
.
New (and Probably Final) Beta Available

v.1.5.3.010
- stripped out all htbackdrops.com code
- set new location for .nfo files separate from image files
- added migration code to move old .nfo files to new locations and names
- fix for unbalanced Unicode compare causing a valid Musicbrainz ID to be thrown out

Available at https://github.com/pkscout/script.artist...master.zip

I'm just waiting on a couple more translations, and then we'll be back to the same number of translations we had for 1.5.2. So unless anyone finds an issue with 1.5.3.10, it will probably ship in the next week or so as 1.5.4.

A little bit on the third item in the above changelog. As AS has evolved, it has continued to generate more and more cached .nfo files, and I didn't like having them intermingled with the images. So with 1.5.3.010 moving forward you will find (if you look) 2 directories in addon_data/script.artistslideshow. One is the images (ArtistSlideshow). The other will be all the .nfo files (ArtistInformation). The one exception is the image exclusions file. That will continue to reside in the image directory with the name of _exclusions.nfo.

Given all that, I didn't want any of the currently cached info to be lost, so the first time you run 1.5.3.10, it will run some migration code to move and rename all the cached .nfo files. It WILL NOT move any images or any override .nfo files you have created. If you ever need to run the migration again for some reason, just delete the migrationcheck.nfo file in addon_data/script.artistslideshow.

Once AS 1.5.4 ships I will update the wiki with the new features as well as any tips/tricks that have been generated during the beta.