Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] Re: Alternative v4 demux AP
Johannes Stezenbach wrote:
> I think Michael is right in that the design of the pid/TS filters
> is not optimal because it mixes different stuff in one ioctl.
> It would be possible to do the following:
> - get rid DVB_DMX_OUT_MEMORY
Agreed.
> - add DVB_DMX_SET_DECODING_FILTER to drive the special "decoder filters";
> for hardware which has no special filters these would just use
> a GP filter
Good. Would we want to issue a AUDIO/VIDEO/PCR filter setup in 1 ioctl, or
would it be better to have individual ioctls for each of the streams? What
if you want to change just the audio PID for another audio language, for
example?
> - keep DVB_DMX_SET_PID_FILTER for GP filters only (one PID per fd,
> add DVB_DMX_PAYLOAD_ONLY and DVB_DMX_TS_HEADER_ONLY)
Good, this is also how I envisaged it as well. Question, does
DVB_DMX_TS_HEADER_ONLY provide both the header and adaptation fields?
Should we add a separate DVB_DMX_TS_ADAP_FIELD flag as well for extracting
private data or PCRs?
> - add DVB_DMX_SET_RECORDING_FILTER in conjunction with
> DVB_DMX_ADD/DEL_RECORDING_PID for special purpose recording filters;
> some hardware would just use GP filters internally; this
> would also get rid of the DVB_DMX_EVENT_LOGGING flag
So DVB_DMX_SET_RECORDING_FILTER would setup a single PID filter and
DVB_DMX_ADD_RECORDING_PID/DVB_DMX_DEL_RECORDING_PID would add/del a single
PID to/from the existing fd?
Then DVB_DMX_START/STOP would synchronise the group filtering - correct?
Yup, please remove the EVENT_LOGGING flag.
> If you want to record and decode a PID at the same time you would
> need to open two fds to set the DECODING_FILTER and RECORDING_FILTER
> for the same PID.
Note that not all h/w allows this capability. You would need some way of
preventing the recording filter to be setup when a decoding filter is
active or vice versa.
> > Regarding the special PID and section filter devices I do not see a
> > real difference compared to having them all in the demux device besides
> > inflating the number of devices.
> Me too ;-)
This is inevitable, but I think my previous email helps to prove that we do
require this functionality. Again, you can group filtering capability per
demux device/logical demux device together.
e.g. /dev/dvb/adapter0/demux0/pidfilter
/dev/dvb/adapter0/demux0/secfilter
/dev/dvb/adapter0/demux0/mpgfilter
/dev/dvb/adapter0/demux1/pidfilter
In this case, demux0 can perform pid/section filtering as well as providing
PES streams for audio/video decoders. Demux1 can only provide pid
filtering (no a/v path for the decoders). Of course you would still need
the .../videoX and .../audioX devices.
Would you need to have the "dvb_dmx_output_format" struct included in the
new "dvb_dmx_decoding_filter" as I don't know of any A/V decoders that can
accept a TS packet input (only PES or ES)? Anyone know differently?
Regards,
Rob : )
--
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.
Home |
Main Index |
Thread Index