[mythtv-users] All tuners are equal, but some tuners are more equal than others

Michael T. Dean mtdean at thirdcontact.com
Sun Jul 5 17:08:29 UTC 2009


On 07/05/2009 01:59 AM, Yeechang Lee wrote:
> Michael T. Dean says:
>   
>>> I agree that it would be nice to be able to tell the scheduler
>>> that multiple tuners are identical in recording quality and thus
>>> completely fungible (such as in my case, where all
>>> programs--whether cable or over-the-air--are written directly to
>>> disk in pure MPEG-2 streams directly from the providers).
>>>       
>> In the case described (a couple of identical inputs), the LiveTV
>> user should just enable, "Avoid conflicts..." and Myth will
>> generally do the right thing.
>>     
>
> This isn't a comprehensive solution beyond Live TV, though. Since the
> scheduler always thinks the lowest-numbered tuner is the highest
> quality, it always wants to use it even if another tuner is
> equivalent. This causes the scheduler to be dumber than it should be.
>
> Consider the following scenario:
>
> Tuner 1, FireWire
> Tuner 2, FireWire (so, identical in quality to 1)
> Each tuner's input priority is set to 0, the default.
>
> Movie A, today at 8-10pm (only airing within the scheduling data)
> Movie B, today at 8-10pm (only airing within the scheduling data)
>
> Result:
>
> Today at 8pm:
> Tuner 1->Movie A
> Tuner 2->Movie B
>
> Now, consider:
>
> Movie A, today at 8-10pm (only airing within the scheduling data)
> Movie B, today at 8-10pm, and again in three days at 1-3pm
>
> Result:
>
> Today at 8pm:
> Tuner 1->Movie A
> Tuner 2->unused
>
> In three days at 1pm:
> Tuner 1->Movie B
> Tuner 2->unused
>
> Since the scheduler believes that the lower-numbered tuner 1 is
> superior to 2, and since it knows that B happens to air again, the
> scheduler records A at 8-10pm but delays B until the later airing so
> it can use tuner 1, even though 2 is available today. We now see that
> the scheduler only happened to do the right thing in the first
> scenario by accident.
>
> Now, consider:
>
> Movie A, today at 8-10pm (only airing within the scheduling data)
> Movie B, today at 8-10pm, and again in three days at 1-3pm
> TV show C, in three days at 1:30-2pm (only airing within the
> scheduling data)
>
> Result:
> Today at 8pm:
> Tuner 1->Movie A
> Tuner 2->Movie B
>
> In three days at 1pm:
> Tuner 1->TV show C
> Tuner 2->unused
>
> In this scenario the scheduler again does the right thing, but again
> only by accident, because it is forced to by tuner 1 not being
> available for the later airing.
>
> I tried to compensate for the scheduler's behavior by increasing each
> successive tuner's input priority by 1 (e.g., 0 for tuner 1, 1 for
> tuner 2, etc.). The scheduler then simply uses those priorities and
> seemingly ignores the tuners' order, however, which defeats the
> purpose of the compensation in the first place.

There's a reason I say that no one should /ever/ modify input priorities 
without first reading section 12.6 of the HOWTO ( 
http://www.mythtv.org/docs/mythtv-HOWTO-12.html#ss12.6 )--and, really, 
all of section 12 ( http://www.mythtv.org/docs/mythtv-HOWTO-12.html ).

This particular case is explicitly covered in 12.6.  It explains why 
when you set input priorities you may be telling Myth not to record some 
shows that your recording rules say to record.  I.e. by telling Myth to 
defer recording the movie until the better input is available, you've 
told it you don't want the movie recorded on the lesser input.  So, if 
the network changes the schedule and does not air the later showing, 
you've effectively told Myth not to record it (by saying, "if you can't 
get it on the best input, I'd rather chance missing a later showing").

Of course, one you read all of section 12, you'll know that you don't 
want to set any input priorities, so the point will be moot.

But, in this case, Myth is just doing exactly what you told it to 
do--even though you didn't know you were telling it to do so.

Mike


More information about the mythtv-users mailing list