Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1.. -*- coding: utf-8; mode: rst -*-
2
3.. _dmx_fopen:
4
5================
6DVB demux open()
7================
8
9Name
10----
11
12DVB demux open()
13
14
15Synopsis
16--------
17
18.. cpp:function:: int open(const char *deviceName, int flags)
19
20
21Arguments
22---------
23
24.. flat-table::
25 :header-rows: 0
26 :stub-columns: 0
27
28
29 - .. row 1
30
31 - const char \*deviceName
32
33 - Name of demux device.
34
35 - .. row 2
36
37 - int flags
38
39 - A bit-wise OR of the following flags:
40
41 - .. row 3
42
43 -
44 - O_RDWR read/write access
45
46 - .. row 4
47
48 -
49 - O_NONBLOCK open in non-blocking mode
50
51 - .. row 5
52
53 -
54 - (blocking mode is the default)
55
56
57Description
58-----------
59
60This system call, used with a device name of /dev/dvb/adapter0/demux0,
61allocates a new filter and returns a handle which can be used for
62subsequent control of that filter. This call has to be made for each
63filter to be used, i.e. every returned file descriptor is a reference to
64a single filter. /dev/dvb/adapter0/dvr0 is a logical device to be used
65for retrieving Transport Streams for digital video recording. When
66reading from this device a transport stream containing the packets from
67all PES filters set in the corresponding demux device
68(/dev/dvb/adapter0/demux0) having the output set to DMX_OUT_TS_TAP. A
69recorded Transport Stream is replayed by writing to this device.
70
71The significance of blocking or non-blocking mode is described in the
72documentation for functions where there is a difference. It does not
73affect the semantics of the open() call itself. A device opened in
74blocking mode can later be put into non-blocking mode (and vice versa)
75using the F_SETFL command of the fcntl system call.
76
77
78Return Value
79------------
80
81.. flat-table::
82 :header-rows: 0
83 :stub-columns: 0
84
85
86 - .. row 1
87
88 - ``ENODEV``
89
90 - Device driver not loaded/available.
91
92 - .. row 2
93
94 - ``EINVAL``
95
96 - Invalid argument.
97
98 - .. row 3
99
100 - ``EMFILE``
101
102 - “Too many open files”, i.e. no more filters available.
103
104 - .. row 4
105
106 - ``ENOMEM``
107
108 - The driver failed to allocate enough memory.