V4L/DVB (12275): Add two new ioctls: DMX_ADD_PID and DMX_REMOVE_PID
authorAndreas Oberritter <obi@linuxtv.org>
Tue, 14 Jul 2009 23:28:50 +0000 (20:28 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sat, 12 Sep 2009 15:17:43 +0000 (12:17 -0300)
commit1cb662a3144992259edfd3cf9f54a6b25a913a0f
treedc3336680a9a3a143bac1056aae51315c3cec68f
parenta98f6af96ec5b22453054b36eaa325ebf20ea429
V4L/DVB (12275): Add two new ioctls: DMX_ADD_PID and DMX_REMOVE_PID

DMX_ADD_PID allows to add multiple PIDs to a transport stream filter
previously set up with DMX_SET_PES_FILTER and output=DMX_OUT_TSDEMUX_TAP.

DMX_REMOVE_PID is used to drop a PID from a filter.

These ioctls are to be used by readers of /dev/dvb/adapterX/demuxY. They
may be called at any time, i.e. before or after the first filter on the
shared file descriptor was started.

They make it possible to record multiple services without the need to de-
or re-multiplex TS packets.

To accomplish this, dmxdev_filter->feed.ts has been converted to a list
of struct dmxdev_feeds, each containing a PID value and a pointer to a
struct dmx_ts_feed.

Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/dvb/dvb-core/dmxdev.c
drivers/media/dvb/dvb-core/dmxdev.h
include/linux/dvb/dmx.h