I have/had a similar problem with my media collection. My solution, at the end of the day, was to build something myself.
As one might guess from my handle, I used PERL, and made a few web applications that serve my purpose fairly well. I have a component that scans my media directories over night and add the data to a mysql database. Another component then uses to filename to check against http://www.themoviedb.org/ and http://www.imdb.com/. If a good match is found, a poster is downloaded, and the database is populated with the title, year, dirtector, plot summary, and a list of relevant genres. The main part of the application is a web based interface that lets me search by title or keyword, or browse by genre.
If the scrapping script find no matches, or multiple matches between which my script cannot decide, it is flagged for attention. There is a CGI script that shows me these items, gives me the possible matches, and allows me to modify the search by and a bit to get to the correct listing.
I'm betting there are some packages out there that would do this all for me, but I enjoyed the experience of building it myself. I suppose if there are not other such programs, maybe with more work, and some help I could make my home grown tool available under the GPL.
"Out of register space (ugh)" -- vi