Mailing List archive

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

[linux-dvb] Re: Section Filters



Rolf Hakenes wrote:
(edited for proper quoting)

> Johannes Stezenbach wrote:
> >
> > Here's what's missing from the documentation of the demux device
> > of the new API:
> >
> > --------
> > The dmxFilter structure defines a section filter, i.e. a bit pattern
> > and a mask for the first bytes of a section. The filter comprises
> > 16 bytes covering byte 0 and bytes 3..17 in a section, thus excluding
> > bytes 1 and 2 (the length field of a section).
> >
> > The mask states which bits to be used for filtering, and the filter
> > states the actual value of these bits. Only the value of the bits
> > where the corresponding mask bit is 1 will be checked.
> > --------
> >
> > Byte 0 in the filter is the table id.

> many thanks for your additional documentation, but after experimenting a
> bit with this type of filter you described I found, that not only byte 1
> and 2 are uncovered by the filter, but byte 3 and 4 are ignored as well.
> Therefore byte 2 of the filter array means the section number and byte 1
> contains current/next indicator at bit position 0. Is this
> interpretation correct, or am I tricked by a strange behaviour of the
> datastream ?

I just quoted from the docs, without having tested it myself.

Byte 1 and 2 of the section contain the section_syntax_indicator (1 bit)
and the section_length (12 bits). You cannot include those in your filter
(it wouldn't make much sense, anyway).

The meaning of byte 3...x depends on the actual table type (which
corresponds to the table id). For tables which follow the common
section syntax (section_syntax_indicator == 1), bytes 3+4 from the section
(aka table_id_extended) are most important. If the filter does not
allow filtering on them, it clearly is a bug.


Johannes


--- 
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index