[EMAIL PROTECTED] 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 [EMAIL PROTECTED] with "unsubscribe linux-dvb" as subject.
