1 .. SPDX-License-Identifier: GFDL-1.1-no-invari 1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 2 .. c:namespace:: DTV.dmx 2 .. c:namespace:: DTV.dmx 3 3 4 .. _dmx_fread: 4 .. _dmx_fread: 5 5 6 ======================= 6 ======================= 7 Digital TV demux read() 7 Digital TV demux read() 8 ======================= 8 ======================= 9 9 10 Name 10 Name 11 ---- 11 ---- 12 12 13 Digital TV demux read() 13 Digital TV demux read() 14 14 15 Synopsis 15 Synopsis 16 -------- 16 -------- 17 17 18 .. c:function:: size_t read(int fd, void *buf, 18 .. c:function:: size_t read(int fd, void *buf, size_t count) 19 19 20 Arguments 20 Arguments 21 --------- 21 --------- 22 22 23 ``fd`` 23 ``fd`` 24 File descriptor returned by a previous call 24 File descriptor returned by a previous call to :c:func:`open()`. 25 25 26 ``buf`` 26 ``buf`` 27 Buffer to be filled 27 Buffer to be filled 28 28 29 ``count`` 29 ``count`` 30 Max number of bytes to read 30 Max number of bytes to read 31 31 32 Description 32 Description 33 ----------- 33 ----------- 34 34 35 This system call returns filtered data, which 35 This system call returns filtered data, which might be section or Packetized 36 Elementary Stream (PES) data. The filtered dat 36 Elementary Stream (PES) data. The filtered data is transferred from 37 the driver's internal circular buffer to ``buf 37 the driver's internal circular buffer to ``buf``. The maximum amount of data 38 to be transferred is implied by count. 38 to be transferred is implied by count. 39 39 40 .. note:: 40 .. note:: 41 41 42 if a section filter created with 42 if a section filter created with 43 :c:type:`DMX_CHECK_CRC <dmx_sct_filter_para 43 :c:type:`DMX_CHECK_CRC <dmx_sct_filter_params>` flag set, 44 data that fails on CRC check will be silent 44 data that fails on CRC check will be silently ignored. 45 45 46 Return Value 46 Return Value 47 ------------ 47 ------------ 48 48 49 On success 0 is returned. 49 On success 0 is returned. 50 50 51 On error -1 is returned, and the ``errno`` var 51 On error -1 is returned, and the ``errno`` variable is set 52 appropriately. 52 appropriately. 53 53 54 .. tabularcolumns:: |p{2.5cm}|p{15.0cm}| 54 .. tabularcolumns:: |p{2.5cm}|p{15.0cm}| 55 55 56 .. flat-table:: 56 .. flat-table:: 57 :header-rows: 0 57 :header-rows: 0 58 :stub-columns: 0 58 :stub-columns: 0 59 :widths: 1 16 59 :widths: 1 16 60 60 61 - - ``EWOULDBLOCK`` 61 - - ``EWOULDBLOCK`` 62 - No data to return and ``O_NONBLOCK`` 62 - No data to return and ``O_NONBLOCK`` was specified. 63 63 64 - - ``EOVERFLOW`` 64 - - ``EOVERFLOW`` 65 - The filtered data was not read from 65 - The filtered data was not read from the buffer in due time, 66 resulting in non-read data being los 66 resulting in non-read data being lost. The buffer is flushed. 67 67 68 - - ``ETIMEDOUT`` 68 - - ``ETIMEDOUT`` 69 - The section was not loaded within th 69 - The section was not loaded within the stated timeout period. 70 See ioctl :ref:`DMX_SET_FILTER` for 70 See ioctl :ref:`DMX_SET_FILTER` for how to set a timeout. 71 71 72 - - ``EFAULT`` 72 - - ``EFAULT`` 73 - The driver failed to write to the ca 73 - The driver failed to write to the callers buffer due to an 74 invalid \*buf pointer. 74 invalid \*buf pointer. 75 75 76 The generic error codes are described at the 76 The generic error codes are described at the 77 :ref:`Generic Error Codes <gen-errors>` chapte 77 :ref:`Generic Error Codes <gen-errors>` chapter.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.