libdvbapi clarification

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

 



I'm trying to understand the dvbdemux_set_section_filter function in
dvp-apps/lib/libdvbapi/dvbdemux.c (lines 74 - 93).

It used to take 16 filter and 16 mask parameters, but then it was changed
15 months ago to take 18 filter and 18 mask parameters, then it throws
away 2 of each:

int dvbdemux_set_section_filter(int fd, int pid,
				uint8_t filter[18], uint8_t mask[18],
 				int start, int checkcrc)
{
	struct dmx_sct_filter_params sctfilter;

	memset(&sctfilter, 0, sizeof(sctfilter));
	sctfilter.pid = pid;
	memcpy(sctfilter.filter.filter, filter, 1);
	memcpy(sctfilter.filter.filter+1, filter+3, 15);
	memcpy(sctfilter.filter.mask, mask, 1);
	memcpy(sctfilter.filter.mask+1, mask+3, 15);


What is the purpose of this?

Second, how is the mask used? Would for example a filter value of 0x50 and
a mask of 0xf0 mean that all sections 0x50 - 0x5f would pass through the
section filter?

-- 
David Härdeman


_______________________________________________
linux-dvb mailing list
linux-dvb@xxxxxxxxxxx
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb


[Index of Archives]     [Linux Media]     [Video 4 Linux]     [Asterisk]     [Samba]     [Xorg]     [Xfree86]     [Linux USB]

  Powered by Linux