[mythtv] Tivo Style Ratings System (Thumbs Up/Thumbs Down)

Mister Horrible mister_horrible at hotmail.com
Thu Dec 25 22:46:13 UTC 2008


I've read through the archives a bit and I know this conversation has come up before, seemingly quite some time ago, on this mailing list.  

I've been a MythTV convert from Tivo for about a year now, however I miss the user rating and automatic suggestion recording feature in Tivo.  For those who aren't familiar with the feature, the Tivo, using these ratings, would find shows that it'd think you'd like.  It'd automatically record those shows if it wasn't doing anything else and if you had enough disk space left on the system.  I believe, but do not know for sure, that it picked the shows based off of aggregated data from users.  It'd find users who had similar tastes to yours and then look for differences between what the users were recording and make it's suggestions.  If it came up with a suggestion you didn't like, you gave it a thumbs down and it wouldn't bother you about it anymore.

First, is anyone working on this right now?  I'd love to help out in some way if someone is.  

If not, here is how I think this could work...

I think we can collect the user rating data, at least the positive thumbs up data, using the recording priority that is already available.  My thinking here is that users will typically set  shows that they love to a higher recording priority than shows they are not as fond of.  Problems here would be that shows that are shown all the time like The Daily Show may receive an artificially low rating because a user doesn't want to have the Daily Show take priority over shows that only show once a week.  This may be the way to start out though without having to do many changes inside of MythTV itself.  

The next part is getting that data from the individual users to some sort of aggregation point.  Some database stood up somewhere to collect the data.  What would need to be done is to generate a UserID and I believe that collecting from mythconverg.record the SeriesID field and the RecPriority field would get us the data we'd need.

Then on the aggregation server we'd need to grind through the data and come up with suggestions.  I think here what could be done is to compare the users and establish some sort of suggestion confidence system.  The more that individual users match the higher the confidence that's placed on the TV shows that are different between them.  So if we have User A and User B and User B has the same shows as User A except User B has one more show that they are recording then this would receive a higher number of votes for User A.  Whereas if User A and User C have only one or two shows in common, the different shows receive a lower number of votes.  Perhaps there would be a lower limit that said if there are less than "x" shows in common then no suggestions are made.  The recording priority could possibly also be worked in somehow, though I haven't given that as much thought.

Then once a day or once a week or whatever, the end user MythTV box checks in and grabs the suggestions based on that UserID.  The user can set how sensitive the suggestions are, so that they can grab the shows with the level of confidence that the choose.  These shows are scheduled for a single recording at a really low priority level.  Suggestions would need to be kept track of so that the system doesn't try and make the same suggestion again.

Anyhow, that's just sort of an overview of how I think this could work and achieve a similar or better functionality than what Tivo gives.  I don't really have the chops to carry this through myself, but if someone wants to pick this up I would love to go along for the ride and help out where I can!  

Let me know what you think or any suggestions and whatnot.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mythtv.org/pipermail/mythtv-dev/attachments/20081225/49c2c750/attachment.htm 

More information about the mythtv-dev mailing list