[mythtv] Same old mind reading crud.

Martin Long mythtv at longhome.co.uk
Sat Apr 14 22:48:48 UTC 2007


I'm working on some ideas... but like Michael said - don't expect some
amazing solution. I'm just working on a few clever extras. Also, don't
expect them to be committed. 

1. Retain all padding where there is a tuner of the same priority
available. 

2. Where back-to-back shows exist on the same channel, schedule them on
the same tuner, and...

3. Where back to back programs are on the same channel and tuner, dump
the padded section to section to both programmes' files from the same
stream.

4. Where, because of conflicts, programs have to be scheduled
back-to-back, try and put the lowest priority shows together. 

Some of it is quite a bit of work. I've got 1 and 3 working so far, with
2 on the way, and design for 4 underway. It's all a spike solution so
far, and is going to need refining, and there's some bits and pieces
I've got to take care of. 

On Sat, 2007-04-14 at 12:28 -0400, Michael T. Dean wrote:
> On 04/14/2007 10:21 AM, Marco Nelissen wrote:
> >> For example, if I were recording The Office from 8:30 to 9:00 and CSI 
> >> and Supernatural from 9:00 to 10:00 and I had a conflict because of a 
> >> 2-minute start early/end late on each, the /right/ way to fix the 
> >> conflict is to allow end late on The Office (2 minute end late) and 
> >> start CSI 2 minutes late (-2 minute start early).  The wrong ways 
> >> (notice the plural) are to a) drop end late from The Office and drop 
> >> start early from CSI (I miss part of The Office, but don't mind missing 
> >> part of CSI), b) drop end late from The Office and drop start early from 
> >> Supernatural (I miss part of The Office /and/ Supernatural--the two I 
> >> care about), and c) keep end late from The Office and start late on 
> >> Supernatural (I miss a whole bunch of Supernatural).
> >>
> >> Now please show me the code for an algorithm that knows this /and/ knows 
> >> my personal preferences for handling all other possible scheduling overlaps.
> >>
> >> Could we make these changes automatic based on priority?  Sure, if we 
> >> want to encode some meaning into priority that's /far/ more complex for 
> >> the user to understand than simply, "Tell Myth to start the one you care 
> >> least about late..."  As a matter of fact, I spend a lot of time in 
> >> Myth's code (and figuring out how Myth works), and I /know/ I would be 
> >> confused by a priority-based approach (which, incidentally, would be 
> >> completely broken--after I spent so much time getting my priorities 
> >> straight--when some network decides to change the timeslot for a show).
> > I don't see how how a priority-based approach (i.e. "I care more about
> > THIS show than about THAT show") is confusing.
> >
> > In the example you gave, your priorities would be (1) The Office,
> > (2) Supernatural, (3) CSI (you said you cared about about The Office 
> > and Supernatural). So what would would/should happen is that it would
> > start recording The Office early and finish late. It would also start
> > recording Supernatural 2 minutes early and end 2 minutes late on your
> > second tuner. CSI, being the least important show, would start 2 minutes
> > late and end 2 minutes late. If I'm not mistaken, this is exactly what
> > you described as being "the /right/ way".
> 
> So, are you going to create the "How to schedule your recordings for 
> Myth" matrix and post it where people can print it off for use when 
> scheduling?
> 
> The right way is the way I decide to resolve this specific conflict.
> 
> With three shows, it's a "tractable" problem.  When you start to include 
> other shows, it becomes a mess.  So, When you realize that My Name is 
> Earl comes on before The Office and Grey's Anatomy comes on after The 
> Office and one of my local independent stations airs Scrubs reruns 
> before and during The Office (and Scrubs is actually more important to 
> me than The Office, but the Scrubs reruns aren't).  And then there are 
> the shows in the 10:00pm timeslot...
> 
> 7:00-7:30 - According to Jim (reruns)
> 7:30-8:00 - According to Jim (reruns)
> 8:00-8:30 - My Name is Earl
> 8:00-8:30 - Scrubs (reruns)
> 8:30-9:00 - The Office
> 8:30-9:00 - Scrubs (reruns)
> 9:00-10:00 - CSI
> 9:00-10:00 - Grey's Anatomy
> 9:00-10:00 - Supernatural
> 9:00-9:30 - 30 Rock
> 9:30-10:00 - Scrubs (new)
> 10:00-11:00 - Shark
> 10:00-11:00 - Secrets of the Dead]
> 10:00-10:30 - The King of Queens (reruns)
> 
> OK.  It's getting more complex...  I need to ensure that Scrubs has a 
> /very/ high priority.  But, I need to ensure that the Scrubs reruns 
> don't prevent my recording The Office when they overlap, so I'll need 
> two differently-prioritize Scrubs recordings.  Oh, but those Scrubs 
> reruns are shown on Wed night, too, and I'd rather get them than Bones, 
> which is followed by According to Jim (new episodes) that are important 
> to me and Criminal Minds where I don't mind missing a few minutes at the 
> beginning, which is followed by Lost, CSI: NY, and Medium.  OK, so the 
> priority of my Scrubs reruns must be greater than the priority of Bones 
> and Criminal Minds and Criminal Minds must be higher than Bones but 
> Criminal Minds must be less than Lost and CSI: NY but what about 
> Medium?  I don't care if I miss time in Criminal Minds or Medium, but...
> 
> Which means that my prioritization must be done while factoring in 
> schedule--which is bound to change very frequently throughout the 
> season.  In truth, prioritization is /supposed/ to be independent of the 
> schedules.  The, er, recording schedules are supposed to be based on the 
> schedules.  So, perhaps we could have a way to specify on a 
> per-scheduled-recording rule basis that this show--which is followed by 
> stuff of which I don't care if I miss a few minutes--should record for 
> an extra 2 minutes...  But, what if the schedules change?  Well, I'll 
> notice it when I do my fortnightly schedule review and see a conflict.
> 
> My point is that it's impossible for Myth to always do what you want it 
> to do unless you tell it what you want it to do.  If you try to take the 
> "proactive" approach--I'll define what should be done in every possible 
> situation--you have to provide too much information (and it becomes very 
> complex for the user).  (When I'm asked by a survey to prioiritize the 
> "six most important ..." I generally put the first two in order and then 
> just put numbers in the others.  I personally don't believe humans can 
> do absolute prioritization well at all--however, they do very well at 
> relative prioiritization.  I know /I/ couldn't provide an absolute 
> priority for each of my 77 recording rules.)  If, instead, you provide a 
> "look up to 2 weeks out in your schedule and react to the conflicts" 
> approach, the user simply has to specify what to do in the few 
> situations where there's an issue.  And, with 52 weeks in a year, that's 
> 26 times a user would need to take 2 minutes to verify his schedule 
> throughout the year (although I typically do it at least once a week).  
> That's not so difficult.
> 
> The best way to see the issues is to write the code to do this and post 
> it so others can critique it.  (Everyone thinks they all want the same 
> things, but they actually want different things.)  I will promise that I 
> won't write this code (even if you change my mind as to the feasibility 
> of some approach--because I don't need it), and I'm relatively certain I 
> could name a few Myth devs who won't write it, so until someone else 
> writes the code, it's probably not worth the discussion.
> 
> Mike
> 
> 
> _______________________________________________
> mythtv-dev mailing list
> mythtv-dev at mythtv.org
> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
> 



More information about the mythtv-dev mailing list