IMDB KeyError

Bug #357228 reported by Jamie Bennett
2
Affects Status Importance Assigned to Milestone
Entertainer Media Center
Triaged
Medium
Unassigned

Bug Description

After restarting Entertainer following Bug #357223 this it the Python output. Some videos had been index but less than 1/4 of them.

Python Output:

jamie@zander:~/Development/entertainer-trunk$ ./entertainer
Entertainer backend starting...
** Message: don't know how to handle audio/x-wma, wmaversion=(int)3, bitrate=(int)768000, depth=(int)24, rate=(int)48000, channels=(int)6, block_align=(int)32768, codec_data=(buffer)18003f0000000000000000000000e0000000
Exception in thread IndexerThread:
Traceback (most recent call last):
  File "/usr/lib/python2.5/threading.py", line 486, in __bootstrap_inner
    self.run()
  File "/home/jamie/Development/entertainer-trunk/entertainerlib/backend/components/mediacache/indexer_thread.py", line 68, in run
    cache.addDirectory(element)
  File "/home/jamie/Development/entertainer-trunk/entertainerlib/backend/components/mediacache/video_cache.py", line 132, in addDirectory
    self.addFile(os.path.join(root, name))
  File "/home/jamie/Development/entertainer-trunk/entertainerlib/backend/components/mediacache/video_cache.py", line 64, in addFile
    self._addVideoFile(filename)
  File "/home/jamie/Development/entertainer-trunk/entertainerlib/backend/components/mediacache/video_cache.py", line 238, in _addVideoFile
    thumbnailer.create_thumbnail()
  File "/home/jamie/Development/entertainer-trunk/entertainerlib/thumbnailer.py", line 303, in create_thumbnail
    img = self._play_for_thumb(sink_size, duration)
  File "/home/jamie/Development/entertainer-trunk/entertainerlib/thumbnailer.py", line 338, in _play_for_thumb
    self.set_state_blocking(self._pipeline, gst.STATE_PLAYING)
AttributeError: 'VideoThumbnailer' object has no attribute 'set_state_blocking'

Exception in thread Video metadata search thread:
Traceback (most recent call last):
  File "/usr/lib/python2.5/threading.py", line 486, in __bootstrap_inner
    self.run()
  File "/home/jamie/Development/entertainer-trunk/entertainerlib/backend/components/mediacache/video_metadata_search.py", line 119, in run
    rating = round(float(movie['rating']) / 2)
  File "/var/lib/python-support/python2.5/imdb/utils.py", line 990, in __getitem__
    rawData = self.data[key]
KeyError: 'rating'

Exception in thread Video metadata search thread:
Traceback (most recent call last):
  File "/usr/lib/python2.5/threading.py", line 486, in __bootstrap_inner
    self.run()
  File "/home/jamie/Development/entertainer-trunk/entertainerlib/backend/components/mediacache/video_metadata_search.py", line 119, in run
    rating = round(float(movie['rating']) / 2)
  File "/var/lib/python-support/python2.5/imdb/utils.py", line 990, in __getitem__
    rawData = self.data[key]
KeyError: 'rating'

Exception in thread Video metadata search thread:
Traceback (most recent call last):
  File "/usr/lib/python2.5/threading.py", line 486, in __bootstrap_inner
    self.run()
  File "/home/jamie/Development/entertainer-trunk/entertainerlib/backend/components/mediacache/video_metadata_search.py", line 119, in run
    rating = round(float(movie['rating']) / 2)
  File "/var/lib/python-support/python2.5/imdb/utils.py", line 990, in __getitem__
    rawData = self.data[key]
KeyError: 'rating'

Exception in thread Video metadata search thread:
Traceback (most recent call last):
  File "/usr/lib/python2.5/threading.py", line 486, in __bootstrap_inner
    self.run()
  File "/home/jamie/Development/entertainer-trunk/entertainerlib/backend/components/mediacache/video_metadata_search.py", line 119, in run
    rating = round(float(movie['rating']) / 2)
  File "/var/lib/python-support/python2.5/imdb/utils.py", line 990, in __getitem__
    rawData = self.data[key]
KeyError: 'rating'

Revision history for this message
Matt Layman (mblayman) wrote :

Jamie, I've seen the IMDb error that you mentioned. The problem exists because the python-imdbpy library is broken and no longer returns the rating key. We need to move away from IMDb because the broken library also violates IMDb's TOS.

The other traceback that you've submitted is interesting. I looked into the history, and I don't think that set_state_blocking has ever existed in our trunk. It's a piece of the Elisa code that never moved over. I'm not sure how we should handle that (Elisa no longer uses the thumbnailer code in the form that we have it. I think that they've moved it to some plugin that I can't seem to find).

Changed in entertainer:
importance: Undecided → Medium
status: New → Triaged
Revision history for this message
Matt Layman (mblayman) wrote :

By the way, I think that this only shows up because it will only occur when the indexer runs. This only happens now on the first run (so it's not directly related to the bug you listed, but it happens because a lack of ~/.config/entertainer causes the indexer to run) or if the cache is rebuilt.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.