mythtv meta grabber problems

Print
Category: Techie
24 Apr 2014
Written by Andy Hits: 8794

I was on my mythtv media server last night, and I noticed that no matter what I did, I was not getting metadata back when lookups were being done for tv shows recorded off the air, and for any video files I tried either.  Looking in the frontend logs (/var/log/mythtv/mythfrontend.log) I could see some interesting results when I tried refreshing the metadata for one of the video files:

Apr 23 22:31:46 inception mythfrontend.real: mythfrontend[7669]: 
I MetadataDownload metadatadownload.cpp:280 (runGrabber) Running
Grabber: /usr/share/mythtv -l en -a GB -D 25957
Apr 23 22:31:46 inception mythfrontend.real: mythfrontend[7669]:
I MetadataDownload metadatadownload.cpp:186 (run) Metadata
Lookup Failed: No Results Clear Skies 0 0
Apr 23 22:31:46 inception mythfrontend.real: mythfrontend[7669]: 
I CoreContext videodlg.cpp:3340 (customEvent) No results found for
Clear Skies 0 0

Now the path  /usr/share/mythtv is a valid path on my system, with various things, like the backup tool and such like.  However, it isn't an executable, so consequently, when the system tried to run a directory as an executable, nothing happened.  Finding why this location was being used instead of an actual script took a little bit of digging.

I looked in various places (including the config entries available via mythweb) and tried changing a few things, but it wasn't until I investigated the mythmetadatalookup command/utility, and ran it at full debug that I made any progress.  Understandably it returned a lot of lines, but the following one put me in the beginnings of the right direction:

MSqlQuery::exec(DBManager1) SELECT data FROM settings 
WHERE value = 'moviegrabber' AND hostname IS NULL
<<<< Returns 1 row(s)

I fired up mysql client to investigate, and found that there was no data:

mysql> select * from  settings WHERE value = 'moviegrabber';
+--------------+------+----------+
| value        | data | hostname |
+--------------+------+----------+
| MovieGrabber |      | NULL     |
+--------------+------+----------+

My other reading around had suggested that the tmdb3.py script would be required script for video / movie lookup. However, only a relative path to /usr/share/mythtv is required.  
The tv grabber is also affected.  The following sql got both grabbers running correctly:

UPDATE settings SET data='/metadata/Movie/tmdb3.py' 
WHERE value ='MovieGrabber';
UPDATE settings SET data='metadata/Television/ttvdb.py' 
WHERE value ='TelevisionGrabber';

Once I'd made those changes, only badly formatted titles posed problems!