Mailing List archive

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

[linux-dvb] Re: API V4 demux, audio and video questions






Hi Franck,

Franck Wrote:
> Could you give more details on the following flags:

> #define DVB_DMX_WAIT_FOR_PUSI   (1 << 2)

"Wait for payload unit start indicator" before outputting packet data to
hardware buffers.  This can be used for PES packets to indicate that the
first byte of the TS payload is the first byte of the PES packet. This is
useful for A/V data especially on channel change where you want to sync up
to a new frame of video/audio data.  For PSI data, it indicates that the
start of a PSI section is present in the payload.  The first byte in the
payload is then an offset to the actual first byte of the section table.

> #define DVB_DMX_OUTPUT_DUPES    (1 << 3)

If this flag is set (output duplicates), then packets with the same PID and
continuity count value are allowed through to the output buffers, otherwise
they are discarded.

> #define DVB_DMX_OUTPUT_ERRPKTS  (1 << 4)

If this flag is set (output error packets), then TS packets that have the
TEI (transport error indicator) flag set will still be allowed to be parsed
and passed through to the output buffers.

> For the buffer_treshold in dvb_dmx_recording_filter struct,
> What append when this is reach ?

The ability to indicate when a threshold has been reached in an output
buffer, was required for different types of data.  For example, with
subtitle data it did not make sense to have a large h/w buffer and to have
an interrupt occur when this was full (you would not have a/v in sync with
the subtitle data).  For high bit-rate data such as video PES, it would be
beneficial to have a threshold that was not always the same size as the h/w
buffer, otherwise you may loose data in the h/w buffer.  The threshold
simply acts as a point in which an interrupt will be generated for the data
in the h/w buffer(s) to be processed in the bottom-half handler/tasklet.
The data in the h/w buffer can then be copied to a safe place (internal
kernel buffer) to allow the h/w buffer to continue to receive packets.

> For audio and video driver,
> How do you set the value of the "speed" parameter ?

Don't know this one.

Hope this help.

Rob : )






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



Home | Main Index | Thread Index