[mythtv-firehose] mythtv/master commit: 637924258 by Robert McNamara (rmcnamara)

MythTV noreply at mythtv.org
Wed Jul 13 23:43:11 UTC 2011


      Author:  Robert McNamara <rmcnamara at mythtv.org>
 Change Date:  2011-07-13T16:34:54-07:00
   Push Date:  2011/07/13 16:43:05 -0700
  Repository:  mythtv
      Branch:  master
New Revision:  6379242585826f62bf1e895484de3f7a4366b544
   Changeset:  https://github.com/MythTV/mythtv/commit/637924258

Log:

Metadata Lookup:  Many, many bugfixes and improvements.

Move all the logic that was all over the place to try to determine if a programinfo/recrule was a movie, television show, or other, and centralize it.

There are now two simple functions that can be run on these classes to guess, fairly accurately, which are Television, and which are Movies.

This method uses the presence of subtitle, season, episode, inetref, category_type, as well as the same information for the associated recording's rule to decide which grabber is most likely the correct one to run first.  We still fall back to the other grabber when we get no result, but this should markedly improve accuracy.  the lookup code can now fairly accurately decide when a recording is generic (moreso when that recording's rule has been properly set up with inetref, season, and episode data-- remember, when you set season and episode on a recording rule, even if it's not accurate for the specific recording that the rule is built on, it becomes an indicator to further recordings that they should be looked up as Television.  Set up your rules!)

I've tested and retested the video edit metadata and automatic grab functionality, as well as the schedule editor and the various permutations of mythmetadatalookup, and not found any regressions-- in fact, I've fixed a number of issues with all of them as part of this fix.

Adds a new "subtype" to metadata lookups-- while the MetadataType indicator starts us down the right path, the LookupType subtype helps us to fine tune which grabbers to take, in which orders, once we're there.  The good news is that even if this guessing logic were to totally fail, it would still probably produce the right result because of the grabber fallthrough logic.

Generic recordings which are determined to be such masquerade as Season 1, Episode 1 for purposes of assigning inetref and artwork.

Modified:

   mythtv/libs/libmythbase/mythversion.h
   mythtv/libs/libmythmetadata/metadatacommon.cpp
   mythtv/libs/libmythmetadata/metadatacommon.h
   mythtv/libs/libmythmetadata/metadatadownload.cpp
   mythtv/libs/libmythmetadata/metadatadownload.h
   mythtv/libs/libmythmetadata/metadatafactory.cpp
   mythtv/libs/libmythmetadata/metadatafactory.h
   mythtv/programs/mythfrontend/editvideometadata.cpp
   mythtv/programs/mythfrontend/scheduleeditor.cpp
   mythtv/programs/mythfrontend/scheduleeditor.h
   mythtv/programs/mythmetadatalookup/lookup.cpp



More information about the mythtv-firehose mailing list