Posts: 81
Joined: Sep 2008
Reputation:
0
Hi,
Upgrade to 13 has gone well mostly - I use a shared mysql database and was using profile redirected thumbs before the 13 upgrade, but decided to copy the thumbs and textures onto the local PC and do away with redirected thumbs.
All has gone well, except that after opening, and going into the music library, XBMC said it needed to update the tags in my music library. I said yes, and now it's going through and removing all my fanart, one by one.
It seems like XBMC knows there should be fanart there, (I'm using transparency at the moment) It doesn't show the default 'you have no fanart so I'll display this image instead' image, it shows a predominanrly black background.
Where has my fanart gone?!
Posts: 81
Joined: Sep 2008
Reputation:
0
Anyone help me with this? All the little logo thumbnails for artists stay, it just gets rid of all fanart, regardless of skin.
Posts: 26,215
Joined: Oct 2003
Reputation:
187
You likely have stale links in the textures database. You could try renaming the latest version of Textures**.db in userdata/Database
Posts: 81
Joined: Sep 2008
Reputation:
0
Thanks I'll try that. How do I make XBMC re-download fanart once the textures file is removed?
Posts: 81
Joined: Sep 2008
Reputation:
0
2014-05-17, 22:50
(This post was last modified: 2014-05-17, 23:18 by ears.)
Right I think I've found the problem.
I got myself a copy of MySQL workbench and had a rummage through a newly created database, soon homing in on the 'art' table.
It appears that XBMC is creating an incorrect path to fanart and I've no idea why.
Here's an example of a line that correctly maps a thumb for an album
'43', '22', 'album', 'thumb', 'smb://<username>@<ip address>/albums/Beth Orton - Trailer Park/folder.jpg'
The albums are stored on a network share, (in)secured simply by a username. It's getting that path from a shared sources.xml file. It references the server directly by IP address, rather than server name, as I have no internal DNS or WINS servers and this databaae is shared with a Pi, that sometimes struggles to resolve names.
Anyway that's an aside - the line above is good and, sure enough, thumbnails appear without issue in the database.
Obviusly that refers to a jpg picked up locally so here's a row for an artist thumb that it's picked up from an external source.
'48', '17', 'artist', 'thumb', 'http://assets.fanart.tv/fanart/music/87c5dedd-371d-4a53-9f7f-80522fb7f3cb/artistthumb/bjrk-4ff4117ff3585.jpg'
For fanart it's a different story. Here's a db row for a fanart reference
'44', '16', 'artist', 'fanart', 'smb://<servername>'
So what you're noticing here, of course, is no actual path is stored - just the name - NOT the IP address - of the server. This is consistent throughout the 'art' table. Every line that references fanart simply stores the name of the server and nothing else.
Here's the line from the shared sources.xml that links to the albums share
<source>
<name>albums</name>
<path pathversion="1">smb://<username>@<ip address>/albums/</path>
</source>
Again edited but you get the idea.
It also appears as a location in mediasources.xml
<location id="1">smb://<username>@<ip address>/albums</location>
And all this redirecting is done in a relatively small advancedsettings.xml that has 2 entries at the top for the mysql databases, Here's the line that substitutes sources.xml as an example No surprises.
<substitute>
<from>special://profile/sources.xml</from>
<to>smb://<username>@<ip address>/XBMCData/sources.xml</to>
</substitute>
So how and why is this happening and why doesn't if affect anyone else. I can consistently recreate it with brand new profiles. The albums share contains nothing but folders, media files and folder.jpg thumbnail files from a previous XBMC library export. There are no info files or fanart.jpgs.
Please help!
Posts: 26,215
Joined: Oct 2003
Reputation:
187
I dunno why it would think you have fanart at that URL. There's nowhere I can see where it checks for an image where it's not actually an image.
I'd refresh the information for that artist, and if prompted, tell it to ignore all local information and see what happens.
Posts: 81
Joined: Sep 2008
Reputation:
0
That works and it will download the fanart and store it correctly.
I don't want to do it for hundreds of artsists though.
Having taken XBMC's sensible advice of backing up my 32 database before the upgrade, I restored it last night to have a look.
In that database, all the fanart entries have true working paths.
So upgrading and then 'updating tags' as XBMC insisted on doing on its first run, has binned all my fanart, placing in its stead paths that it seems to have invented itself.
Posts: 26,215
Joined: Oct 2003
Reputation:
187
The rescan is a rescan. It doesn't make any difference at all whether you start with an existing database or start fresh in that regard.
The trick is figuring out where those URLs come from. When you refreshed the artist, what happens if you don't tell it to ignore local information (assuming that is an option?)
At any rate, what you may want to do is just remove the database completely and rescan from scratch and see if the same thing happens. If so, we can get it reproducible and fix the fault.
Posts: 26,215
Joined: Oct 2003
Reputation:
187
What do you have in advancedsettings.xml ? Please pastebin that.
Posts: 81
Joined: Sep 2008
Reputation:
0
I'll get on with that now. bigbox has a share called albums on it. The albums folder shared simply has folders called artist - album name, with the media files stored within that folder.
I connected up the Pi, running OpenELEC 4.01 so roughly the same XBMC version and a library update on there put smb://WORKGROUP in the fanart field. Weird hey?
I'm wondering if something in mediasources.xml is throwing it, I'm going to clear that file temporarily.
The really weird thing is another share on the same server with the same folder structure - compiltations - works perfectly.
I'll get some logs together.
Posts: 81
Joined: Sep 2008
Reputation:
0
I've tried this again in RC1 and the problem is still there. It is independent of scrapers too - same thing happens with theaudiodb.