#define TS_DEMUX 8 /* in case TS_PACKET is set, send the TS to
the demux device, not to the dvr device */
-/* PES type for filters which write to built-in decoder */
-/* these should be kept identical to the types in dmx.h */
-
-enum dmx_ts_pes
-{ /* also send packets to decoder (if it exists) */
- DMX_TS_PES_AUDIO0,
- DMX_TS_PES_VIDEO0,
- DMX_TS_PES_TELETEXT0,
- DMX_TS_PES_SUBTITLE0,
- DMX_TS_PES_PCR0,
-
- DMX_TS_PES_AUDIO1,
- DMX_TS_PES_VIDEO1,
- DMX_TS_PES_TELETEXT1,
- DMX_TS_PES_SUBTITLE1,
- DMX_TS_PES_PCR1,
-
- DMX_TS_PES_AUDIO2,
- DMX_TS_PES_VIDEO2,
- DMX_TS_PES_TELETEXT2,
- DMX_TS_PES_SUBTITLE2,
- DMX_TS_PES_PCR2,
-
- DMX_TS_PES_AUDIO3,
- DMX_TS_PES_VIDEO3,
- DMX_TS_PES_TELETEXT3,
- DMX_TS_PES_SUBTITLE3,
- DMX_TS_PES_PCR3,
-
- DMX_TS_PES_OTHER
-};
-
-#define DMX_TS_PES_AUDIO DMX_TS_PES_AUDIO0
-#define DMX_TS_PES_VIDEO DMX_TS_PES_VIDEO0
-#define DMX_TS_PES_TELETEXT DMX_TS_PES_TELETEXT0
-#define DMX_TS_PES_SUBTITLE DMX_TS_PES_SUBTITLE0
-#define DMX_TS_PES_PCR DMX_TS_PES_PCR0
-
-
struct dmx_ts_feed {
int is_filtering; /* Set to non-zero when filtering in progress */
struct dmx_demux *parent; /* Back-pointer */
dmx_output_t otype;
int ret;
int ts_type;
- dmx_pes_type_t ts_pes;
+ enum dmx_ts_pes ts_pes;
struct dmx_ts_feed *tsfeed;
feed->ts = NULL;
return -ERESTARTSYS;
if (ts_type & TS_DECODER) {
- if (pes_type >= DMX_TS_PES_OTHER) {
+ if (pes_type >= DMX_PES_OTHER) {
mutex_unlock(&demux->mutex);
return -EINVAL;
}
feed->pid = 0xffff;
- if (feed->ts_type & TS_DECODER && feed->pes_type < DMX_TS_PES_OTHER)
+ if (feed->ts_type & TS_DECODER && feed->pes_type < DMX_PES_OTHER)
demux->pesfilter[feed->pes_type] = NULL;
mutex_unlock(&demux->mutex);
INIT_LIST_HEAD(&dvbdemux->frontend_list);
- for (i = 0; i < DMX_TS_PES_OTHER; i++) {
+ for (i = 0; i < DMX_PES_OTHER; i++) {
dvbdemux->pesfilter[i] = NULL;
dvbdemux->pids[i] = 0xffff;
}
struct list_head frontend_list;
- struct dvb_demux_feed *pesfilter[DMX_TS_PES_OTHER];
- u16 pids[DMX_TS_PES_OTHER];
+ struct dvb_demux_feed *pesfilter[DMX_PES_OTHER];
+ u16 pids[DMX_PES_OTHER];
int playing;
int recording;
ret = priv->tsfeed->set(priv->tsfeed,
priv->pid, /* pid */
TS_PACKET, /* type */
- DMX_TS_PES_OTHER, /* pes type */
+ DMX_PES_OTHER, /* pes type */
32768, /* circular buffer size */
timeout /* timeout */
);
if (dvbdmxfeed->type == DMX_TYPE_TS) {
switch (dvbdmxfeed->pes_type) {
- case DMX_TS_PES_VIDEO:
- case DMX_TS_PES_AUDIO:
- case DMX_TS_PES_TELETEXT:
- case DMX_TS_PES_PCR:
- case DMX_TS_PES_OTHER:
+ case DMX_PES_VIDEO:
+ case DMX_PES_AUDIO:
+ case DMX_PES_TELETEXT:
+ case DMX_PES_PCR:
+ case DMX_PES_OTHER:
c = alloc_channel(fdtv);
break;
default:
(demux->dmx.frontend->source != DMX_MEMORY_FE))) {
if (dvbdmxfeed->ts_type & TS_DECODER) {
- if (dvbdmxfeed->pes_type >= DMX_TS_PES_OTHER ||
+ if (dvbdmxfeed->pes_type >= DMX_PES_OTHER ||
!demux->pesfilter[dvbdmxfeed->pes_type])
return -EINVAL;
}
if (!(dvbdmxfeed->ts_type & TS_DECODER &&
- dvbdmxfeed->pes_type < DMX_TS_PES_OTHER))
+ dvbdmxfeed->pes_type < DMX_PES_OTHER))
return 0;
}
if (feed->type == DMX_TYPE_TS) {
if ((feed->ts_type & TS_DECODER) &&
- (feed->pes_type <= DMX_TS_PES_PCR)) {
+ (feed->pes_type <= DMX_PES_PCR)) {
switch (demux->dmx.frontend->source) {
case DMX_MEMORY_FE:
if (feed->ts_type & TS_DECODER)
if (feed->type == DMX_TYPE_TS) {
if (feed->ts_type & TS_DECODER) {
- if (feed->pes_type >= DMX_TS_PES_OTHER ||
+ if (feed->pes_type >= DMX_PES_OTHER ||
!demux->pesfilter[feed->pes_type])
return -EINVAL;
demux->pids[feed->pes_type] |= 0x8000;
demux->pesfilter[feed->pes_type] = NULL;
}
if (feed->ts_type & TS_DECODER &&
- feed->pes_type < DMX_TS_PES_OTHER) {
+ feed->pes_type < DMX_PES_OTHER) {
ret = dvb_feed_stop_pid(feed);
} else
if ((feed->ts_type & TS_PACKET) &&
if (dvbdmxfeed->type == DMX_TYPE_TS) {
switch (dvbdmxfeed->pes_type) {
- case DMX_TS_PES_VIDEO:
- case DMX_TS_PES_AUDIO:
- case DMX_TS_PES_TELETEXT:
- case DMX_TS_PES_PCR:
- case DMX_TS_PES_OTHER:
+ case DMX_PES_VIDEO:
+ case DMX_PES_AUDIO:
+ case DMX_PES_TELETEXT:
+ case DMX_PES_PCR:
+ case DMX_PES_OTHER:
break;
default:
return -EINVAL;
switch (dvbdmxfeed->pes_type) {
- case DMX_TS_PES_VIDEO:
- dprintk(" pes_type: DMX_TS_PES_VIDEO\n");
+ case DMX_PES_VIDEO:
+ dprintk(" pes_type: DMX_PES_VIDEO\n");
dec->pid[DMX_PES_PCR] = dvbdmxfeed->pid;
dec->pid[DMX_PES_VIDEO] = dvbdmxfeed->pid;
dec->video_filter = dvbdmxfeed->filter;
ttusb_dec_set_pids(dec);
break;
- case DMX_TS_PES_AUDIO:
- dprintk(" pes_type: DMX_TS_PES_AUDIO\n");
+ case DMX_PES_AUDIO:
+ dprintk(" pes_type: DMX_PES_AUDIO\n");
dec->pid[DMX_PES_AUDIO] = dvbdmxfeed->pid;
dec->audio_filter = dvbdmxfeed->filter;
ttusb_dec_set_pids(dec);
break;
- case DMX_TS_PES_TELETEXT:
+ case DMX_PES_TELETEXT:
dec->pid[DMX_PES_TELETEXT] = dvbdmxfeed->pid;
- dprintk(" pes_type: DMX_TS_PES_TELETEXT(not supported)\n");
+ dprintk(" pes_type: DMX_PES_TELETEXT(not supported)\n");
return -ENOSYS;
- case DMX_TS_PES_PCR:
- dprintk(" pes_type: DMX_TS_PES_PCR\n");
+ case DMX_PES_PCR:
+ dprintk(" pes_type: DMX_PES_PCR\n");
dec->pid[DMX_PES_PCR] = dvbdmxfeed->pid;
ttusb_dec_set_pids(dec);
break;
- case DMX_TS_PES_OTHER:
- dprintk(" pes_type: DMX_TS_PES_OTHER(not supported)\n");
+ case DMX_PES_OTHER:
+ dprintk(" pes_type: DMX_PES_OTHER(not supported)\n");
return -ENOSYS;
default:
} dmx_input_t;
-typedef enum
+typedef enum dmx_ts_pes
{
DMX_PES_AUDIO0,
DMX_PES_VIDEO0,