Hi
I am trying to build a filter on my DM500+. Somehow the IOCTL always returns the error code Invalid Argument
Any ideas what is wrong?
#include <fcntl.h>
#include "/data/dreambox/tuxbox-bb/build/tmp/work/linux-dm500plus-2.6.12-r1/linux-2.6.12/include/linux/dvb/dmx.h"
#include <stdio.h>
#include <stdlib.h>
#include <sys/ioctl.h>
#include <sys/poll.h>
int main(int argc,char* argv[])
{
int fd,ca,program_number,tfd;
if ((fd = open("/dev/dvb/card0/demux0",O_RDWR|O_NONBLOCK)) < 0)
{
perror("DEMUX DEVICE");
return -1;
}
printf("DMX Filter size: %d\n", DMX_FILTER_SIZE);
//step 1: search the PAT
struct dmx_sct_filter_params sFP;
memset(&sFP.filter.filter,0,DMX_FILTER_SIZE);
memset(&sFP.filter.mask,0,DMX_FILTER_SIZE);
sFP.filter.filter[0] = 0;
sFP.filter.mask[0] = 0xff;
sFP.timeout = 15000;
sFP.flags = 4;
sFP.pid = 0;
if (ioctl(fd,DMX_SET_FILTER,&sFP < 0))
perror("DMX SET SECTION FILTER");
}
Bookmarks