Mailing List archive

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

[linux-dvb] Re: Reconstruct PAT/PMT tables from TS?



Josef Wolf wrote:
> I'm trying to reconstruct PAT/PMT/NIT packets from the TS.  I have read
> through ISO-13818, ETSI/EN-300468, ETSI/ETR-211, ETSI/ETR-162 and a lot
> of material I found on google (including some threads on this list).
> But I am still pretty much confused.  The informations seem to be
> both, incomplete and contradictory.  Here is what I think I have found
> out that far:
> 
> 1. TS packets that belong to a specific PID can transport only one table.

wrong; use table_id

> 2. A table can be constructed from multiple sections.

yes

> 3. Sections can have varying size.

yes

> 4. Sections are sent in no particular order.

yes
well, en300468 "recommends" ascending order (note that EIT is special)

> 5. Sections withhin a table can be replaced independently.

wrong; when a table changes the version number of all sections is incremented;
it is invalid to assemble a table from sections with different version
numbers

> 6. Section start is marked with payload_unit_start_indicator in the TS
>    layer.

yes

> 7. Once a section is started, TS packets with the same PID transport
>    consecutive parts of the section as long as payload_unit_start_indicator
>    is zero.

yes (there is also the possibility that one TS contains multiple short
sections, or the last part of one section and the next section)

> 8. Only the last part of a section can contain an adoption field.

sections contain no adaptation field, TS packets do;
every TS packet can potentially contain one

There is plenty of source out there that implements this. You might
want to read some of it.

Johannes




Home | Main Index | Thread Index