[patch] EIT decoder problem

Johann Hanne jhml at gmx.net
Mon Apr 9 19:53:11 CEST 2007


Hi Christophe,

> Your reasoning is quite correct - libdvbpsi's behaviour is indeed
> non-compliant. But for a better understanding, you should have looked a
> few paragraphs below :
>
> segment_last_section_number: This 8-bit field specifies the number of
> the last section of this segment of the sub_table. For sub_tables which
> are not segmented, this field shall be set to the same value as the
> last_section_number field.
>
> So when a section with section_number == segment_last_section_number
> arrives, there may be a gap after this section. But it can't be anywhere
> in the sub_table, and it particular section_number must still start at
> 0. A gap is only allowed after a section with section_number ==
> segment_last_section is received.

thanks for the hint. The segment_last_section_number paragraph was indeed what 
I was missing, I think I now understand what's going on. However, I really 
don't know why it's done this way, and why it only applies to the EIT. If we 
miss a single segment now (and on my test transponder a segment only consists 
of one section), there is *zero* chance to detect that error. One could count 
the sections and make a new callback if the number of sections grows while 
the version number stays the same, but this would make the code even more 
confusing...

I've attached a new patch which should be ok now. Please apply if you don't 
have any more objections.

BTW, I'd be happy if you could release a 0.1.6 now, there are quite a few bugs 
fixed compared to 0.1.5. I have a rather complex application using PAT, PMT, 
SDT and EIT and it's working fine with latest SVN, so I'd like to sync with a 
release version.

Cheers, Johann
-------------- next part --------------
A non-text attachment was scrubbed...
Name: eit-fix.patch
Type: text/x-diff
Size: 3352 bytes
Desc: not available
Url : http://mailman.videolan.org/pipermail/libdvbpsi-devel/attachments/20070409/c9a490f6/attachment.patch 


More information about the libdvbpsi-devel mailing list