[libdvbpsi-devel] [RFC] Broken current_next handling for SI tables

Marian Ďurkovič md at bts.sk
Mon Nov 16 14:01:46 CET 2009


On Mon, Nov 16, 2009 at 01:38:36PM +0100, Christophe Massiot wrote:
> On Mon, Nov 16, 2009, Marian Ďurkovič wrote:
> 
> >    Thus I strongly believe we should remove this "feature" from libdvbpsi
> > ASAP and make it deliver correct tables at all cases without the need
> > for past-references.
> 
> I fully agree with you, and I'd even go further : we should call back
> the callback function for every table received, even if the version
> number hasn't changed. I've often had problems in production because the
> PAT version didn't change though its content changed (Anevia hardware is
> for instance affected by this bug). You can always say that the received
> stream was invalid, but the guy at the other end will say "hey it is
> valid now, why doesn't your equipment work ??".
> 
> Now if the application decides that it should ignore tables with
> identical version, that's its problem, but a library shouldn't decide
> for it, since the overhead is minimal.

Attached please find a patch which avoids sending empty table for PAT.
The same needs to be applied for other SI tables.

If we want to trigger the callback on every table received, that if() must
go away completely - we should be however prepared to receive PAT/PMT
callbacks quite often (e.g every 75 msec) and kill debug messages like
"PAT Callback called".

 
    With kind regards,

          M.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pat_curr_next.patch
Type: text/x-diff
Size: 1829 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/libdvbpsi-devel/attachments/20091116/730187aa/attachment.patch>


More information about the libdvbpsi-devel mailing list