Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] Re: Linux DVB API 4 Q's
Rob.McConnell@Zarlink.Com wrote:
>
> > The current API only allows one filter per fd, so when converting
> > old sw to the new API it doesn't matter.
>
> We should definitely allow multiple section filters to be attached to a
> single PID. I need it for my design and I will end up implementing anyway
> (nobody else will on our team). A simple linked list of section filters
> attached to a feed is all that is required, plus the ability of the
> user-space to call the DVB_DMX_SET_SECTION_FILTER more than once with the
> same pid but different filter spec.
You can have more than one section filter per PID, but not on
the same fd. You have to open a new demux fd for each filter.
> Yes I agree, but if we have the generic OTHER type then that has to cover
> the general case of PES data, say. We have subtitle data, MHEG, MHP,
> private, etc. but we may need different ways to demux the data. Going back
> to the buffer/threshold point I made earlier, it would be nice to
> distinguish the type of data to demux so that we can setup the required
> buffer size/thresholds or other characteristics.
My experience is that it's bad to code defaults in the driver. It's
better to have buffer size/thresholds or other characteristics in the
API and have the app designer pass appropriate values.
> Please add this, for example.
>
> #define DVB_DMX_SET_BUFFER_THRESH _IO(DVB_IOCTL_BASE, 0x??)
>
> #define DVB_DMX_BUFFER_THRESH_NONE 0 /* No threshold interrupt
> generated */
> #define DVB_DMX_BUFFER_THRESH_TS_PKT 1 /* Threshold interrupt
> generated after receiving a TS packet */
> #define DVB_DMX_BUFFER_THRESH_PES_PKT 2 /* Threshold int generated
> after receiving a full PES packet */
> #define DVB_DMX_BUFFER_THRESH_1QTR 3 /* Buffer 25% full
> generates a threshold interrupt */
> #define_DVB_DMX_BUFFER_THRESH_1HALF 4 /* Buffer 50% full
> generates a threshold interrupt */
> #define DVB_DMX_BUFFER_THRESH_3QTR 5 /* Buffer 75% full
> generates a threshold interrupt */
>
> Numbers greater than say 100 would actually mean the number of bytes to
> receive before generating a threshold interrupt. e.g. If the value of 256
> is passed to the ioctl, then each time 256 bytes are received by the h/w
> you will get a threshold interrupt and this number of bytes would then be
> gobbled by the callback function.
OK.
Johannes
--
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.
Home |
Main Index |
Thread Index