Home
last modified time | relevance | path

Searched full:demux (Results 1 – 25 of 160) sorted by relevance

1234567

/linux/drivers/media/platform/st/sti/c8sectpfe/
H A Dc8sectpfe-common.c34 static int register_dvb(struct stdemux *demux, struct dvb_adapter *adap, in register_dvb() argument
40 demux->dvb_demux.dmx.capabilities = DMX_TS_FILTERING | in register_dvb()
44 demux->dvb_demux.priv = demux; in register_dvb()
45 demux->dvb_demux.filternum = C8SECTPFE_MAXCHANNEL; in register_dvb()
46 demux->dvb_demux.feednum = C8SECTPFE_MAXCHANNEL; in register_dvb()
48 demux->dvb_demux.start_feed = start_feed; in register_dvb()
49 demux->dvb_demux.stop_feed = stop_feed; in register_dvb()
50 demux->dvb_demux.write_to_decoder = NULL; in register_dvb()
52 result = dvb_dmx_init(&demux->dvb_demux); in register_dvb()
59 demux->dmxdev.filternum = demux->dvb_demux.filternum; in register_dvb()
[all …]
/linux/drivers/media/dvb-core/
H A Ddvb_demux.c3 * dvb_demux.c - DVB kernel demux API
158 struct dvb_demux *demux = feed->demux; in dvb_dmx_swfilter_section_feed() local
172 demux->check_crc32(feed, sec->secbuf, sec->seclen)) { in dvb_dmx_swfilter_section_feed()
214 * Losless Section Demux 1.4.1 by Emard
226 * when demux is started, let feed->pusi_seen = false to
234 struct dvb_demux *demux = feed->demux; in dvb_dmx_swfilter_section_copy_dump() local
252 demux->memcopy(feed, sec->secbuf_base + sec->tsfeedp, buf, len); in dvb_dmx_swfilter_section_copy_dump()
384 if (feed->demux->write_to_decoder) in dvb_dmx_swfilter_packet_type()
385 feed->demux->write_to_decoder(feed, buf, 188); in dvb_dmx_swfilter_packet_type()
405 static void dvb_dmx_swfilter_packet(struct dvb_demux *demux, const u8 *buf) in dvb_dmx_swfilter_packet() argument
[all …]
H A Ddmxdev.c102 static struct dmx_frontend *get_fe(struct dmx_demux *demux, int type) in get_fe() argument
106 head = demux->get_frontends(demux); in get_fe()
179 dmxdev->dvr_orig_fe = dmxdev->demux->frontend; in dvb_dvr_open()
181 if (!dmxdev->demux->write) { in dvb_dvr_open()
186 front = get_fe(dmxdev->demux, DMX_MEMORY_FE); in dvb_dvr_open()
192 dmxdev->demux->disconnect_frontend(dmxdev->demux); in dvb_dvr_open()
193 dmxdev->demux->connect_frontend(dmxdev->demux, front); in dvb_dvr_open()
208 dmxdev->demux->disconnect_frontend(dmxdev->demux); in dvb_dvr_release()
209 dmxdev->demux->connect_frontend(dmxdev->demux, in dvb_dvr_release()
249 if (!dmxdev->demux->write) in dvb_dvr_write()
[all …]
/linux/include/media/
H A Ddemux.h2 * demux.h
4 * The Kernel Digital TV Demux kABI defines a driver-internal interface for
6 * demux layer.
70 * @TS_DEMUX: In case TS_PACKET is set, send the TS to the demux
90 * A TS feed is typically mapped to a hardware PID filter on the demux chip.
147 * the demux. It should only be called when no filtering
159 * A TS feed is typically mapped to a hardware PID filter on the demux chip.
190 * typedef dmx_ts_cb - DVB demux TS filter callback function prototype
202 * This function callback prototype, provided by the client of the demux API,
203 * is called from the demux code. The function is only called when filtering
[all …]
H A Ddvb_demux.h2 * dvb_demux.h: DVB kernel demux API
27 #include <media/demux.h>
30 * enum dvb_dmx_filter_type - type of demux feed.
41 * enum dvb_dmx_state - state machine for a demux filter.
64 * struct dvb_demux_filter - Describes a DVB demux section filter.
72 * @index: index of the used demux filter.
111 * @demux: pointer to &struct dvb_demux.
126 * @list_head: head for the list of digital TV demux feeds.
141 struct dvb_demux *demux; member
165 * struct dvb_demux - represents a digital TV demux
[all …]
H A Ddmxdev.h35 #include <media/demux.h>
40 * enum dmxdev_type - type of demux filter type.
155 * struct dmxdev - Describes a digital TV demux device.
158 * the demux device node.
162 * @demux: pointer to &struct dmx_demux.
164 * @capabilities: demux capabilities as defined by &enum dmx_demux_caps.
166 * @exit: flag to indicate that the demux is being released.
178 struct dmx_demux *demux; member
198 * dvb_dmxdev_init - initializes a digital TV demux and registers both demux
207 * dvb_dmxdev_release - releases a digital TV demux and unregisters it.
/linux/Documentation/driver-api/media/
H A Ddtv-demux.rst3 Digital TV Demux kABI
6 Digital TV Demux
9 The Kernel Digital TV Demux kABI defines a driver-internal interface for
11 demux layer. It is only of interest for Digital TV device driver writers.
12 The header file for this kABI is named ``demux.h`` and located in
15 The demux kABI should be implemented for each demux in the system. It is
16 used to select the TS source of a demux and to manage the demux resources.
17 When the demux client allocates a resource via the demux kABI, it receives
20 Each demux receives its TS input from a DVB front-end or from memory, as
21 set via this demux kABI. In a system with more than one front-end, the kABI
[all …]
/linux/drivers/media/firewire/
H A Dfiredtv-dvb.c51 struct firedtv *fdtv = dvbdmxfeed->demux->priv; in fdtv_start_feed()
121 struct dvb_demux *demux = dvbdmxfeed->demux; in fdtv_stop_feed() local
122 struct firedtv *fdtv = demux->priv; in fdtv_stop_feed()
128 (demux->dmx.frontend->source != DMX_MEMORY_FE))) { in fdtv_stop_feed()
132 !demux->pesfilter[dvbdmxfeed->pes_type]) in fdtv_stop_feed()
135 demux->pids[dvbdmxfeed->pes_type] |= 0x8000; in fdtv_stop_feed()
136 demux->pesfilter[dvbdmxfeed->pes_type] = NULL; in fdtv_stop_feed()
170 fdtv->demux.dmx.capabilities = 0; in fdtv_dvb_register()
172 fdtv->demux.priv = fdtv; in fdtv_dvb_register()
173 fdtv->demux.filternum = 16; in fdtv_dvb_register()
[all …]
/linux/drivers/media/common/b2c2/
H A Dflexcop.c47 struct flexcop_device *fc = dvbdmxfeed->demux->priv; in flexcop_dvb_start_feed()
53 struct flexcop_device *fc = dvbdmxfeed->demux->priv; in flexcop_dvb_stop_feed()
68 fc->demux.dmx.capabilities = (DMX_TS_FILTERING | DMX_SECTION_FILTERING in flexcop_dvb_init()
70 fc->demux.priv = fc; in flexcop_dvb_init()
71 fc->demux.filternum = fc->demux.feednum = FC_MAX_FEED; in flexcop_dvb_init()
72 fc->demux.start_feed = flexcop_dvb_start_feed; in flexcop_dvb_init()
73 fc->demux.stop_feed = flexcop_dvb_stop_feed; in flexcop_dvb_init()
74 fc->demux.write_to_decoder = NULL; in flexcop_dvb_init()
76 ret = dvb_dmx_init(&fc->demux); in flexcop_dvb_init()
84 fc->dmxdev.filternum = fc->demux.feednum; in flexcop_dvb_init()
[all …]
/linux/drivers/media/common/videobuf2/
H A Dvideobuf2-dvb.c6 * (i.e. we are using the software demux, ...). Also uses vb2
31 dvb_dmx_swfilter(&dvb->demux, vb2_plane_vaddr(vb, 0), in dvb_fnc()
38 struct dvb_demux *demux = feed->demux; in vb2_dvb_start_feed() local
39 struct vb2_dvb *dvb = demux->priv; in vb2_dvb_start_feed()
42 if (!demux->dmx.frontend) in vb2_dvb_start_feed()
61 struct dvb_demux *demux = feed->demux; in vb2_dvb_stop_feed() local
62 struct vb2_dvb *dvb = demux->priv; in vb2_dvb_stop_feed()
115 /* register demux stuff */ in vb2_dvb_register_frontend()
116 dvb->demux.dmx.capabilities = in vb2_dvb_register_frontend()
119 dvb->demux.priv = dvb; in vb2_dvb_register_frontend()
[all …]
/linux/drivers/media/pci/mantis/
H A Dmantis_dvb.c93 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in mantis_dvb_start_feed()
116 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in mantis_dvb_stop_feed()
155 mantis->demux.dmx.capabilities = DMX_TS_FILTERING | in mantis_dvb_init()
159 mantis->demux.priv = mantis; in mantis_dvb_init()
160 mantis->demux.filternum = 256; in mantis_dvb_init()
161 mantis->demux.feednum = 256; in mantis_dvb_init()
162 mantis->demux.start_feed = mantis_dvb_start_feed; in mantis_dvb_init()
163 mantis->demux.stop_feed = mantis_dvb_stop_feed; in mantis_dvb_init()
164 mantis->demux.write_to_decoder = NULL; in mantis_dvb_init()
167 result = dvb_dmx_init(&mantis->demux); in mantis_dvb_init()
[all …]
/linux/drivers/media/usb/au0828/
H A Dau0828-dvb.c149 /* Feed the transport payload into the kernel demux */ in urb_completion()
150 dvb_dmx_swfilter_packets(&dev->dvb.demux, in urb_completion()
275 struct dvb_demux *demux = feed->demux; in au0828_dvb_start_feed() local
276 struct au0828_dev *dev = demux->priv; in au0828_dvb_start_feed()
282 if (!demux->dmx.frontend) in au0828_dvb_start_feed()
307 struct dvb_demux *demux = feed->demux; in au0828_dvb_stop_feed() local
308 struct au0828_dev *dev = demux->priv; in au0828_dvb_stop_feed()
447 /* register demux stuff */ in dvb_register()
448 dvb->demux.dmx.capabilities = in dvb_register()
451 dvb->demux.priv = dev; in dvb_register()
[all …]
/linux/drivers/media/spi/
H A Dcxd2880-spi.c47 struct dvb_demux demux; member
300 dvb_dmx_swfilter(&dvb_spi->demux, in cxd2880_ts_read()
310 dvb_dmx_swfilter(&dvb_spi->demux, in cxd2880_ts_read()
326 struct dvb_demux *demux = NULL; in cxd2880_start_feed() local
334 demux = feed->demux; in cxd2880_start_feed()
335 if (!demux) { in cxd2880_start_feed()
336 pr_err("feed->demux is NULL\n"); in cxd2880_start_feed()
339 dvb_spi = demux->priv; in cxd2880_start_feed()
424 struct dvb_demux *demux = NULL; in cxd2880_stop_feed() local
432 demux = feed->demux; in cxd2880_stop_feed()
[all …]
/linux/drivers/media/pci/saa7164/
H A Dsaa7164-dvb.c282 struct dvb_demux *demux = feed->demux; in saa7164_dvb_start_feed() local
283 struct saa7164_port *port = demux->priv; in saa7164_dvb_start_feed()
290 if (!demux->dmx.frontend) in saa7164_dvb_start_feed()
309 struct dvb_demux *demux = feed->demux; in saa7164_dvb_stop_feed() local
310 struct saa7164_port *port = demux->priv; in saa7164_dvb_stop_feed()
401 /* register demux stuff */ in dvb_register()
402 dvb->demux.dmx.capabilities = in dvb_register()
405 dvb->demux.priv = port; in dvb_register()
406 dvb->demux.filternum = 256; in dvb_register()
407 dvb->demux.feednum = 256; in dvb_register()
[all …]
/linux/drivers/media/usb/dvb-usb/
H A Ddvb-usb-dvb.c16 struct dvb_usb_adapter *adap = dvbdmxfeed->demux->priv; in dvb_usb_ctrl_feed()
172 adap->demux.dmx.capabilities = DMX_TS_FILTERING | DMX_SECTION_FILTERING; in dvb_usb_adapter_dvb_init()
173 adap->demux.priv = adap; in dvb_usb_adapter_dvb_init()
175 adap->demux.filternum = 0; in dvb_usb_adapter_dvb_init()
177 if (adap->demux.filternum < adap->fe_adap[i].max_feed_count) in dvb_usb_adapter_dvb_init()
178 adap->demux.filternum = adap->fe_adap[i].max_feed_count; in dvb_usb_adapter_dvb_init()
180 adap->demux.feednum = adap->demux.filternum; in dvb_usb_adapter_dvb_init()
181 adap->demux.start_feed = dvb_usb_start_feed; in dvb_usb_adapter_dvb_init()
182 adap->demux.stop_feed = dvb_usb_stop_feed; in dvb_usb_adapter_dvb_init()
183 adap->demux.write_to_decoder = NULL; in dvb_usb_adapter_dvb_init()
[all …]
/linux/drivers/media/usb/pvrusb2/
H A Dpvrusb2-dvb.c41 &adap->demux, in pvr2_dvb_feed_func()
192 struct pvr2_dvb_adapter *adap = dvbdmxfeed->demux->priv; in pvr2_dvb_ctrl_feed()
202 "start feeding demux"); in pvr2_dvb_ctrl_feed()
211 "stop feeding demux"); in pvr2_dvb_ctrl_feed()
256 adap->demux.dmx.capabilities = DMX_TS_FILTERING | in pvr2_dvb_adapter_init()
259 adap->demux.priv = adap; in pvr2_dvb_adapter_init()
260 adap->demux.filternum = 256; in pvr2_dvb_adapter_init()
261 adap->demux.feednum = 256; in pvr2_dvb_adapter_init()
262 adap->demux.start_feed = pvr2_dvb_start_feed; in pvr2_dvb_adapter_init()
263 adap->demux.stop_feed = pvr2_dvb_stop_feed; in pvr2_dvb_adapter_init()
[all …]
/linux/drivers/media/usb/cx231xx/
H A Dcx231xx-dvb.c59 struct dvb_demux demux; member
232 dvb_dmx_swfilter(&dev->dvb->demux, in dvb_isoc_copy()
255 /* Feed the transport payload into the kernel demux */ in dvb_bulk_copy()
256 dvb_dmx_swfilter(&dev->dvb->demux, in dvb_bulk_copy()
309 struct dvb_demux *demux = feed->demux; in start_feed() local
310 struct cx231xx_dvb *dvb = demux->priv; in start_feed()
313 if (!demux->dmx.frontend) in start_feed()
332 struct dvb_demux *demux = feed->demux; in stop_feed() local
333 struct cx231xx_dvb *dvb = demux->priv; in stop_feed()
503 /* register demux stuff */ in register_dvb()
[all …]
/linux/drivers/media/pci/bt8xx/
H A Ddvb-bt8xx.c51 (&card->demux, in dvb_bt8xx_work()
62 struct dvb_demux*dvbdmx = dvbdmxfeed->demux; in dvb_bt8xx_start_feed()
83 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in dvb_bt8xx_stop_feed()
730 memset(&card->demux, 0, sizeof(struct dvb_demux)); in dvb_bt8xx_load_card()
732 …card->demux.dmx.capabilities = DMX_TS_FILTERING | DMX_SECTION_FILTERING | DMX_MEMORY_BASED_FILTERI… in dvb_bt8xx_load_card()
734 card->demux.priv = card; in dvb_bt8xx_load_card()
735 card->demux.filternum = 256; in dvb_bt8xx_load_card()
736 card->demux.feednum = 256; in dvb_bt8xx_load_card()
737 card->demux.start_feed = dvb_bt8xx_start_feed; in dvb_bt8xx_load_card()
738 card->demux.stop_feed = dvb_bt8xx_stop_feed; in dvb_bt8xx_load_card()
[all …]
/linux/Documentation/userspace-api/media/dvb/
H A Ddmx-fwrite.rst7 Digital TV demux write()
13 Digital TV demux write()
36 ``/dev/dvb/adapter?/dvr?``, associated with the physical demux device that
39 in the corresponding physical demux device, ``/dev/dvb/adapter?/demux?``.
65 corresponding demux device is setup to receive data from the
H A Ddmx-fopen.rst7 Digital TV demux open()
13 Digital TV demux open()
24 Name of specific Digital TV demux device.
52 This system call, used with a device name of ``/dev/dvb/adapter?/demux?``,
59 all PES filters set in the corresponding demux device
60 (``/dev/dvb/adapter?/demux?``) having the output set to ``DMX_OUT_TS_TAP``.
/linux/drivers/media/test-drivers/vidtv/
H A Dvidtv_bridge.h37 * @demux: The demux used by the dvb_dmx_swfilter_packets() call.
38 * @dmx_dev: Represents a demux device.
39 * @dmx_fe: The frontends associated with the demux.
53 struct dvb_demux demux; member
/linux/drivers/media/pci/ttpci/
H A Dbudget-core.c200 dvb_dmx_swfilter_packets(&budget->demux, mem + olddma, count / 188); in vpeirq()
203 dvb_dmx_swfilter_packets(&budget->demux, mem + olddma, count / 188); in vpeirq()
205 dvb_dmx_swfilter_packets(&budget->demux, mem, newdma / 188); in vpeirq()
313 struct dvb_demux *demux = feed->demux; in budget_start_feed() local
314 struct budget *budget = demux->priv; in budget_start_feed()
319 if (!demux->dmx.frontend) in budget_start_feed()
332 struct dvb_demux *demux = feed->demux; in budget_stop_feed() local
333 struct budget *budget = demux->priv; in budget_stop_feed()
347 struct dvb_demux *dvbdemux = &budget->demux; in budget_register()
363 dvb_dmx_init(&budget->demux); in budget_register()
[all …]
/linux/drivers/media/pci/pt3/
H A Dpt3.c502 adap = container_of(feed->demux, struct pt3_adapter, demux); in pt3_start_feed()
515 adap = container_of(feed->demux, struct pt3_adapter, demux); in pt3_stop_feed()
552 adap->demux.dmx.capabilities = DMX_TS_FILTERING | DMX_SECTION_FILTERING; in pt3_alloc_adapter()
553 adap->demux.priv = adap; in pt3_alloc_adapter()
554 adap->demux.feednum = 256; in pt3_alloc_adapter()
555 adap->demux.filternum = 256; in pt3_alloc_adapter()
556 adap->demux.start_feed = pt3_start_feed; in pt3_alloc_adapter()
557 adap->demux.stop_feed = pt3_stop_feed; in pt3_alloc_adapter()
558 ret = dvb_dmx_init(&adap->demux); in pt3_alloc_adapter()
565 adap->dmxdev.demux = &adap->demux.dmx; in pt3_alloc_adapter()
[all …]
/linux/drivers/staging/media/av7110/
H A Dav7110.c4 * - initialization and demux stuff
77 MODULE_PARM_DESC(pids_off, "clear video/audio/PCR PID filters when demux is closed");
275 if (!dvbdmxfilter->feed->demux->dmx.frontend) in DvbDmxFilterCallback()
277 if (dvbdmxfilter->feed->demux->dmx.frontend->source == DMX_MEMORY_FE) in DvbDmxFilterCallback()
368 dvb_dmx_swfilter_packets(&av7110->demux, in debiirq()
375 if (av7110->demux.recording) in debiirq()
761 struct av7110 *av7110 = dvbdmxfeed->demux->priv; in StartHWFilter()
811 struct av7110 *av7110 = dvbdmxfilter->feed->demux->priv; in StopHWFilter()
846 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in dvb_feed_start_pid()
892 struct dvb_demux *dvbdmx = dvbdmxfeed->demux; in dvb_feed_stop_pid()
[all …]
/linux/drivers/media/usb/dvb-usb-v2/
H A Ddvb_usb_core.c204 dvb_dmx_swfilter(&adap->demux, buf, len); in dvb_usb_data_complete()
211 dvb_dmx_swfilter_204(&adap->demux, buf, len); in dvb_usb_data_complete_204()
218 dvb_dmx_swfilter_raw(&adap->demux, buf, len); in dvb_usb_data_complete_raw()
243 struct dvb_usb_adapter *adap = dvbdmxfeed->demux->priv; in dvb_usb_start_feed()
331 struct dvb_usb_adapter *adap = dvbdmxfeed->demux->priv; in dvb_usb_stop_feed()
466 adap->demux.dmx.capabilities = DMX_TS_FILTERING | DMX_SECTION_FILTERING; in dvb_usbv2_adapter_dvb_init()
467 adap->demux.priv = adap; in dvb_usbv2_adapter_dvb_init()
468 adap->demux.filternum = 0; in dvb_usbv2_adapter_dvb_init()
469 adap->demux.filternum = adap->max_feed_count; in dvb_usbv2_adapter_dvb_init()
470 adap->demux.feednum = adap->demux.filternum; in dvb_usbv2_adapter_dvb_init()
[all …]

1234567