>On Thu, May 25, 2006, christophpfister@xxxxxxxxxxx wrote: >> Arrrrgh, twice the same error :( >> >> [snip] >> >>If the transmitter broadcasts MIS, I have to set a stream_id >> >>(otherwise I'd get a garbage mix of multiple TS, right?). >> >>Do I then have to set the sismis to DVBFE_SISMIS_MULTIPLE >> >>(because it's MIS) or DVBFE_SISMIS_SINGLE (because I want >> >>to filter out just one of them)? >> [snip] >> >sismis and stream_id are only used in backward compatible mode. >> >In the mis mode both hp and lp streams are received, whereas in sis mode >> >stream_id is used to select hp or lp stream. >> [snip] >> >> sismis and stream_id are only used in backward compatible mode. >> In the sis mode there is only one stream to receive, whereas in mis mode >> stream_id is used to select hp or lp stream. >> >> Sorry for any confusion. > >I was just about to complain ;-) > > >My question was regarding the semantics of and/or naming >of the sismis flag. I'm sorry for the unclear wording, >I'll try again: > >- SIS/MIS is part of baseband signalling (BBHEADER): My understanding > is that the demod can receive the BBHEADER without prior knowledge > if it is SIS or MIS. Thus you don't have to tell it about that. > >- However, if it is MIS: You have to enable the stream-id filter in > the demod and set a stream_id (ISI), otherwise you'd get either > garbage (two or more TS mixed together) or nothing (depending > on how demod hw/fw handles this error) > >- Similarly, if it is SIS, you have to disable the stream-id > filter because you don't know the stream_id to filter on > (unless the demod hw/fw does disregard the filter anyway if > it sees the stream is SIS) > >Consequently, I would rename "enum dvbfe_sismis_flag sismis" >to a boolean "enable_stream_id_filter". Because this >type and name would reflect what it actually does. > >So, not a functional change, the drivers would use >enable_stream_id_filter in exactly the same way as >sismis, but it is easier to understand how to use >the API. > >Provided that my understanding of the matter is correct, of course. > > >Johannes Yes, you're understanding is correct. I have a nice idea about this (because sismis is only used at bc mode). What do you think of the following? [snip] +/* + * Optional Backwards Compatible Mode + * NOTE: Applies to DVB-S2 only + */ +enum dvbfe_obc_mode { + DVBFE_OBC_IGNORE = (0 << 0), + DVBFE_OBC_OFF = (1 << 0), + DVBFE_OBC_SIS = (1 << 1), + DVBFE_OBC_MIS = (1 << 2) +}; [snip] +/* + * DVB-S2 parameters + */ +struct dvbs2_params { + __u32 symbol_rate; + + enum dvbfe_modulation modulation; + enum dvbfe_fec fec; + enum dvbfe_obc_mode obc_mode; + enum dvbfe_rolloff rolloff; + __u8 stream_id; /* only used if obc_mode == DVBFE_OBC_MIS */ + + __u8 pad[32]; +}; Christoph _______________________________________________ linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb