[mythtv] Padding of recordings

Peter Schachte schachte at csse.unimelb.edu.au
Thu Mar 8 01:58:44 UTC 2007


Martin Long wrote:
> The problem is, that doesn't provide the required behaviour. If I add
> padding to the individual recording rules, then it would flag a conflict as
> opposed to just dropping the padding.
> 
> The (or at least my) desired behaviour is:
> 
>    - If a tuner is free, use it to preserve the padding.
>    - If a tuner isn't free, but not conflicts otherwise, drop the padding. 

Yes, I'd like something like that, too.  There is the softpad branch, but I
understand Isaac has said he will not accept it because it violates the
original purpose of Myth's soft padding.  The problem is you may not want your
soft padding to be quite that soft.  Do you really want to miss the end of a
really important program just so you can see a much less important one?

There's a rather large design space here, and a lot to take into account:

	o The original purpose of the soft padding that's there:  to give 		  slow
hardware some extra time to get ready to record.  It seems to 		  me, though,
that that should be a per-tuner configuration, not 		  global.  And I've never
seen an explanation of what the 			  after-recording soft padding was meant
for; I can't see why you'd 		  ever need to keep recording after a program ends
because of slow 		  hardware.)

	o What channel the program is on.  Some channels are notorious for 		  running
late, while others keep to schedule pretty well.

	o The priority of the program.  You might well prefer not to record a 		
lower priority program than to miss the last few minutes of a high 		  priority
show that runs late.

	o The priority of the tuners.  What if you have to choose between 		
recording two high priority shows on a high priority tuner without 		
respecting the requested extra recording time and moving one of them 		  to a
lower priority tuner and respecting the requested extra
	  recording time?

	o The existing start early/end late settings per scheduled program.

	o The existing automatic program extension for particular program
	  genres (intended for sporting programs that often run overtime).

	o The existing override setting for a particular instance of a
	  scheduled item.

So what sounds like a simple idea actually turns out to be pretty complex if
you want to cater for all needs.  I think something like this would cover it
pretty well, without making things too complicated for users:

	1. A per-tuner start early setting that specifies how long before a
	   program starts myth should start tuning the station, but has nothing
	   to do with when Myth actually starts *recording*.  This would only
	   apply when the tuner is inactive before the recording.

	2. A per-channel start early and end late setting (kind of like the
	   per-channel does-it-run-commercials setting).

	3. A global Boolean config option specifying whether to drop the
	   padding on this program if that's the only way to record it.  Also a
	   global Boolean config option specifying whether to drop padding if
	   necessary to record on a higher priority tuner (ie, which is more
	   important:  a high priority tuner or the padding?).

	4. No per-program start early and end late settings.  Keep it simple.

	5. However, there would be a program override setting for start early
	   and end late.  The difference is that the per-program settings may
	   apply to many showings on different channels, while the override
	   settings apply to a specific showing.  This give you full explicit
	   control over scheduling if you need it.

	6. After scheduling the explicit program overrides, the scheduler
	   schedules programs from highest priority to lowest,
	   allocating tuners from highest priority to lowest, and
	   dropping padding on programs if configured to do so and if it's
	   necessary to schedule that program.  Also drop padding if configured
	   to do so and if doing so allows two equal priority programs both to
	   be scheduled on a higher priority tuner.  Never drop padding on a
	   higher priority program to make room for a lower priority one.

-- 
Peter Schachte              In the post-Cold War era, the United States
schachte at cs.mu.OZ.AU        needs to promote the development of democracy
www.cs.mu.oz.au/~schachte/  and human rights, not militaries that view their
Phone: +61 3 8344 1338      own citizens as the enemy. -- Richard Durbin


More information about the mythtv-dev mailing list