VDR automatic channel update and recording annoyance.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Josef Wolf wrote:
> ...
>>>After all, they're not likely to change right in the middle of a movie,
>>>are they?
> 
> 
> Oh, I would not be very surprised.  Lots of movies use multiple languages.

Yes, but I don't think it would make any sense to toggle the APID's language
code every time a sentence in a different language is spoken ;-)

>>I wouldn't expect them to change in the middle of a movie, but some
>>documentaries may have interviews and actual film footage in different
>>languages.
> 
> 
> About two weeks ago there was a report about Einstein where repeatedly the
> reporter started a sentence in german and interviewed persons fullfilled
> the sentence in english.  I have no clue whether the PIDs changed for that
> specific report.

As I said, I don't think this would make any sense.

>>>But then again, most broadcasters don't even get the running
>>>status in sync with the actual broadcasts, so how can we expect
>>>the PIDs to be set at the right time. Seems to me like there are
>>>a few monkeys sitting at a switchboard, plugging in cables randomly
>>>and every once in a while hitting the right spot ;-) I always thought
>>>that in today's digital playout centers things would be completely
>>>computerized...
> 
> 
> Klaus, are you that much convinced that the broadcasters are the problem that
> you start blaming on them?

Well, based on past experience I tend to ;-)

> See, there might be zillions of other reasons that could lead to the
> described effect.  Just to name one (possible) reason: the code that
> constructs tables from sections might loose sections now-and-then.  Such
> a bug would lead to the effect described here:
> 
> 
>>When PMT_SCAN_TIMEOUT is set to the default 10 seconds there is a delay
>>between event change and a PID change, as Lauri Tischler noticed.
>>
>>I changed the PMT_SCAN_TIMEOUT to 1. Now the delay is gone, and event
>>change and possible PID change happen at the same second (based on
>>syslog).
> 
> 
> BTW: Why is PMT_SCAN_TIMEOUT needed at all?  I have not looked at the
>      actual code, but the existence of such a timeout looks to me as if
>      someone once noticed a problem with table reconstruction code and
>      decided to cure the symptomps (construct table even when sections
>      are still missing, based on a timeout) instead of curing the real
>      cause (find the reason why sections get lost).  Such a "cure" would
>      be very consistent with the effect described above.

The problem is that cPatFilter::Process() processes a table of PMT PIDs
and in order to do so needs to set a filter for each of the PIDs in the
table. After the filter has been set, it needs to wait until the data
is received. Ok, this works fine as long as it is _guaranteed_ that for
every entry in the table there will be actual data broadcast. As a matter
of fact, my first implementation of this stuff didn't have this timeout,
and promptly got stuck on a channel that had PMT PID entries, but didn't
send data for at least one of them.

So I've added the PMT_SCAN_TIMEOUT, assuming that there won't be too many
such broken channels, and that 10 seconds should be long enough for any
data to arrive, but not too long so that things keep on running.

I assume that in Teemu's case there actually is such a broken table entry,
which triggers the timeout (proven by him setting PMT_SCAN_TIMEOUT to 1 and
observing that the problem was gone). So I'd still guess that it's the
broadcaster's fault.

Maybe 10 seconds is a little long, but then again we would need to know
the official repeat intervalls of this kind of data. I'm sure it's somewhere
in the DVB standards, but I don't have it at hand right now. If somebody
can come up with this number, I'd gladly set PMT_SCAN_TIMEOUT to a smaller
value.

Nevertheless, somebody should either find out why (if at all) VDR hits
PMT_SCAN_TIMEOUT unjustified - or tell that broadcaster not to send broken data.

Klaus


[Index of Archives]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Big List of Linux Books]     [Fedora Users]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux