Commit 47d23e36 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

doc-rst: linux_tv: split DVB function call documentation

Just like V4L, split the DVB function calls into one file per
system call. This is a requirement for the man pages creator
on Sphinx to work, and makes the document easier to maintain.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent bb2ade02
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_BILINGUAL_CHANNEL_SELECT:
AUDIO_BILINGUAL_CHANNEL_SELECT
==============================
Description
-----------
This ioctl is obsolete. Do not use in new drivers. It has been replaced
by the V4L2 ``V4L2_CID_MPEG_AUDIO_DEC_MULTILINGUAL_PLAYBACK`` control
for MPEG decoders controlled through V4L2.
This ioctl call asks the Audio Device to select the requested channel
for bilingual streams if possible.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_BILINGUAL_CHANNEL_SELECT, audio_channel_select_t)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_BILINGUAL_CHANNEL_SELECT for this command.
- .. row 3
- audio_channel_select_t ch
- Select the output format of the audio (mono left/right, stereo).
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_CHANNEL_SELECT:
AUDIO_CHANNEL_SELECT
====================
Description
-----------
This ioctl is for DVB devices only. To control a V4L2 decoder use the
V4L2 ``V4L2_CID_MPEG_AUDIO_DEC_PLAYBACK`` control instead.
This ioctl call asks the Audio Device to select the requested channel if
possible.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_CHANNEL_SELECT, audio_channel_select_t)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_CHANNEL_SELECT for this command.
- .. row 3
- audio_channel_select_t ch
- Select the output format of the audio (mono left/right, stereo).
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_CLEAR_BUFFER:
AUDIO_CLEAR_BUFFER
==================
Description
-----------
This ioctl call asks the Audio Device to clear all software and hardware
buffers of the audio decoder device.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_CLEAR_BUFFER)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_CLEAR_BUFFER for this command.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_CONTINUE:
AUDIO_CONTINUE
==============
Description
-----------
This ioctl restarts the decoding and playing process previously paused
with AUDIO_PAUSE command.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_CONTINUE)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_CONTINUE for this command.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _audio_fclose:
DVB audio close()
=================
Description
-----------
This system call closes a previously opened audio device.
Synopsis
--------
.. c:function:: int close(int fd)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
Return Value
------------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EBADF``
- fd is not a valid open file descriptor.
.. -*- coding: utf-8; mode: rst -*-
.. _audio_fopen:
DVB audio open()
================
Description
-----------
This system call opens a named audio device (e.g.
/dev/dvb/adapter0/audio0) for subsequent use. When an open() call has
succeeded, the device will be ready for use. The significance of
blocking or non-blocking mode is described in the documentation for
functions where there is a difference. It does not affect the semantics
of the open() call itself. A device opened in blocking mode can later be
put into non-blocking mode (and vice versa) using the F_SETFL command
of the fcntl system call. This is a standard system call, documented in
the Linux manual page for fcntl. Only one user can open the Audio Device
in O_RDWR mode. All other attempts to open the device in this mode will
fail, and an error code will be returned. If the Audio Device is opened
in O_RDONLY mode, the only ioctl call that can be used is
AUDIO_GET_STATUS. All other call will return with an error code.
Synopsis
--------
.. c:function:: int open(const char *deviceName, int flags)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- const char \*deviceName
- Name of specific audio device.
- .. row 2
- int flags
- A bit-wise OR of the following flags:
- .. row 3
-
- O_RDONLY read-only access
- .. row 4
-
- O_RDWR read/write access
- .. row 5
-
- O_NONBLOCK open in non-blocking mode
- .. row 6
-
- (blocking mode is the default)
Return Value
------------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``ENODEV``
- Device driver not loaded/available.
- .. row 2
- ``EBUSY``
- Device or resource busy.
- .. row 3
- ``EINVAL``
- Invalid argument.
.. -*- coding: utf-8; mode: rst -*-
.. _audio_fwrite:
DVB audio write()
=================
Description
-----------
This system call can only be used if AUDIO_SOURCE_MEMORY is selected
in the ioctl call AUDIO_SELECT_SOURCE. The data provided shall be in
PES format. If O_NONBLOCK is not specified the function will block
until buffer space is available. The amount of data to be transferred is
implied by count.
Synopsis
--------
.. c:function:: size_t write(int fd, const void *buf, size_t count)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- void \*buf
- Pointer to the buffer containing the PES data.
- .. row 3
- size_t count
- Size of buf.
Return Value
------------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EPERM``
- Mode AUDIO_SOURCE_MEMORY not selected.
- .. row 2
- ``ENOMEM``
- Attempted to write more data than the internal buffer can hold.
- .. row 3
- ``EBADF``
- fd is not a valid open file descriptor.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_GET_CAPABILITIES:
AUDIO_GET_CAPABILITIES
======================
Description
-----------
This ioctl call asks the Audio Device to tell us about the decoding
capabilities of the audio hardware.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_GET_CAPABILITIES, unsigned int *cap)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_GET_CAPABILITIES for this command.
- .. row 3
- unsigned int \*cap
- Returns a bit array of supported sound formats.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_GET_PTS:
AUDIO_GET_PTS
=============
Description
-----------
This ioctl is obsolete. Do not use in new drivers. If you need this
functionality, then please contact the linux-media mailing list
(`https://linuxtv.org/lists.php <https://linuxtv.org/lists.php>`__).
This ioctl call asks the Audio Device to return the current PTS
timestamp.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_GET_PTS, __u64 *pts)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_GET_PTS for this command.
- .. row 3
- __u64 \*pts
- Returns the 33-bit timestamp as defined in ITU T-REC-H.222.0 /
ISO/IEC 13818-1.
The PTS should belong to the currently played frame if possible,
but may also be a value close to it like the PTS of the last
decoded frame or the last PTS extracted by the PES parser.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_GET_STATUS:
AUDIO_GET_STATUS
================
Description
-----------
This ioctl call asks the Audio Device to return the current state of the
Audio Device.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_GET_STATUS, struct audio_status *status)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_GET_STATUS for this command.
- .. row 3
- struct audio_status \*status
- Returns the current state of Audio Device.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_PAUSE:
AUDIO_PAUSE
===========
Description
-----------
This ioctl call suspends the audio stream being played. Decoding and
playing are paused. It is then possible to restart again decoding and
playing process of the audio stream using AUDIO_CONTINUE command.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_PAUSE)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_PAUSE for this command.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_PLAY:
AUDIO_PLAY
==========
Description
-----------
This ioctl call asks the Audio Device to start playing an audio stream
from the selected source.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_PLAY)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_PLAY for this command.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_SELECT_SOURCE:
AUDIO_SELECT_SOURCE
===================
Description
-----------
This ioctl call informs the audio device which source shall be used for
the input data. The possible sources are demux or memory. If
AUDIO_SOURCE_MEMORY is selected, the data is fed to the Audio Device
through the write command.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_SELECT_SOURCE, audio_stream_source_t source)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_SELECT_SOURCE for this command.
- .. row 3
- audio_stream_source_t source
- Indicates the source that shall be used for the Audio stream.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_SET_ATTRIBUTES:
AUDIO_SET_ATTRIBUTES
====================
Description
-----------
This ioctl is intended for DVD playback and allows you to set certain
information about the audio stream.
Synopsis
--------
.. c:function:: int ioctl(fd, int request = AUDIO_SET_ATTRIBUTES, audio_attributes_t attr )
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_SET_ATTRIBUTES for this command.
- .. row 3
- audio_attributes_t attr
- audio attributes according to section ??
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EINVAL``
- attr is not a valid or supported attribute setting.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_SET_AV_SYNC:
AUDIO_SET_AV_SYNC
=================
Description
-----------
This ioctl call asks the Audio Device to turn ON or OFF A/V
synchronization.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_SET_AV_SYNC, boolean state)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_AV_SYNC for this command.
- .. row 3
- boolean state
- Tells the DVB subsystem if A/V synchronization shall be ON or OFF.
- .. row 4
-
- TRUE AV-sync ON
- .. row 5
-
- FALSE AV-sync OFF
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_SET_BYPASS_MODE:
AUDIO_SET_BYPASS_MODE
=====================
Description
-----------
This ioctl call asks the Audio Device to bypass the Audio decoder and
forward the stream without decoding. This mode shall be used if streams
that can’t be handled by the DVB system shall be decoded. Dolby
DigitalTM streams are automatically forwarded by the DVB subsystem if
the hardware can handle it.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_SET_BYPASS_MODE, boolean mode)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_SET_BYPASS_MODE for this command.
- .. row 3
- boolean mode
- Enables or disables the decoding of the current Audio stream in
the DVB subsystem.
- .. row 4
-
- TRUE Bypass is disabled
- .. row 5
-
- FALSE Bypass is enabled
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_SET_EXT_ID:
AUDIO_SET_EXT_ID
================
Description
-----------
This ioctl can be used to set the extension id for MPEG streams in DVD
playback. Only the first 3 bits are recognized.
Synopsis
--------
.. c:function:: int ioctl(fd, int request = AUDIO_SET_EXT_ID, int id)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_SET_EXT_ID for this command.
- .. row 3
- int id
- audio sub_stream_id
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EINVAL``
- id is not a valid id.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_SET_ID:
AUDIO_SET_ID
============
Description
-----------
This ioctl selects which sub-stream is to be decoded if a program or
system stream is sent to the video device. If no audio stream type is
set the id has to be in [0xC0,0xDF] for MPEG sound, in [0x80,0x87] for
AC3 and in [0xA0,0xA7] for LPCM. More specifications may follow for
other stream types. If the stream type is set the id just specifies the
substream id of the audio stream and only the first 5 bits are
recognized.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_SET_ID, int id)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_SET_ID for this command.
- .. row 3
- int id
- audio sub-stream id
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_SET_KARAOKE:
AUDIO_SET_KARAOKE
=================
Description
-----------
This ioctl allows one to set the mixer settings for a karaoke DVD.
Synopsis
--------
.. c:function:: int ioctl(fd, int request = AUDIO_SET_KARAOKE, audio_karaoke_t *karaoke)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_SET_KARAOKE for this command.
- .. row 3
- audio_karaoke_t \*karaoke
- karaoke settings according to section ??.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EINVAL``
- karaoke is not a valid or supported karaoke setting.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_SET_MIXER:
AUDIO_SET_MIXER
===============
Description
-----------
This ioctl lets you adjust the mixer settings of the audio decoder.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_SET_MIXER, audio_mixer_t *mix)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_SET_ID for this command.
- .. row 3
- audio_mixer_t \*mix
- mixer settings.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_SET_MUTE:
AUDIO_SET_MUTE
==============
Description
-----------
This ioctl is for DVB devices only. To control a V4L2 decoder use the
V4L2 :ref:`VIDIOC_DECODER_CMD` with the
``V4L2_DEC_CMD_START_MUTE_AUDIO`` flag instead.
This ioctl call asks the audio device to mute the stream that is
currently being played.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_SET_MUTE, boolean state)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_SET_MUTE for this command.
- .. row 3
- boolean state
- Indicates if audio device shall mute or not.
- .. row 4
-
- TRUE Audio Mute
- .. row 5
-
- FALSE Audio Un-mute
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_SET_STREAMTYPE:
AUDIO_SET_STREAMTYPE
====================
Description
-----------
This ioctl tells the driver which kind of audio stream to expect. This
is useful if the stream offers several audio sub-streams like LPCM and
AC3.
Synopsis
--------
.. c:function:: int ioctl(fd, int request = AUDIO_SET_STREAMTYPE, int type)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_SET_STREAMTYPE for this command.
- .. row 3
- int type
- stream type
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EINVAL``
- type is not a valid or supported stream type.
.. -*- coding: utf-8; mode: rst -*-
.. _AUDIO_STOP:
AUDIO_STOP
==========
Description
-----------
This ioctl call asks the Audio Device to stop playing the current
stream.
Synopsis
--------
.. c:function:: int ioctl(int fd, int request = AUDIO_STOP)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals AUDIO_STOP for this command.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _ca_fclose:
DVB CA close()
==============
Description
-----------
This system call closes a previously opened audio device.
Synopsis
--------
.. cpp:function:: int close(int fd)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
Return Value
------------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EBADF``
- fd is not a valid open file descriptor.
.. -*- coding: utf-8; mode: rst -*-
.. _ca_fopen:
DVB CA open()
=============
Description
-----------
This system call opens a named ca device (e.g. /dev/ost/ca) for
subsequent use.
When an open() call has succeeded, the device will be ready for use. The
significance of blocking or non-blocking mode is described in the
documentation for functions where there is a difference. It does not
affect the semantics of the open() call itself. A device opened in
blocking mode can later be put into non-blocking mode (and vice versa)
using the F_SETFL command of the fcntl system call. This is a standard
system call, documented in the Linux manual page for fcntl. Only one
user can open the CA Device in O_RDWR mode. All other attempts to open
the device in this mode will fail, and an error code will be returned.
Synopsis
--------
.. cpp:function:: int open(const char *deviceName, int flags)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- const char \*deviceName
- Name of specific video device.
- .. row 2
- int flags
- A bit-wise OR of the following flags:
- .. row 3
-
- O_RDONLY read-only access
- .. row 4
-
- O_RDWR read/write access
- .. row 5
-
- O_NONBLOCK open in non-blocking mode
- .. row 6
-
- (blocking mode is the default)
Return Value
------------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``ENODEV``
- Device driver not loaded/available.
- .. row 2
- ``EINTERNAL``
- Internal error.
- .. row 3
- ``EBUSY``
- Device or resource busy.
- .. row 4
- ``EINVAL``
- Invalid argument.
.. -*- coding: utf-8; mode: rst -*-
.. _CA_GET_CAP:
CA_GET_CAP
==========
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_GET_CAP, ca_caps_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_GET_CAP for this command.
- .. row 3
- ca_caps_t *
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _CA_GET_DESCR_INFO:
CA_GET_DESCR_INFO
=================
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_GET_DESCR_INFO, ca_descr_info_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_GET_DESCR_INFO for this command.
- .. row 3
- ca_descr_info_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _CA_GET_MSG:
CA_GET_MSG
==========
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_GET_MSG, ca_msg_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_GET_MSG for this command.
- .. row 3
- ca_msg_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _CA_GET_SLOT_INFO:
CA_GET_SLOT_INFO
================
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_GET_SLOT_INFO, ca_slot_info_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_GET_SLOT_INFO for this command.
- .. row 3
- ca_slot_info_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _CA_RESET:
CA_RESET
========
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_RESET)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_RESET for this command.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _CA_SEND_MSG:
CA_SEND_MSG
===========
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_SEND_MSG, ca_msg_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_SEND_MSG for this command.
- .. row 3
- ca_msg_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _CA_SET_DESCR:
CA_SET_DESCR
============
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_SET_DESCR, ca_descr_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_SET_DESCR for this command.
- .. row 3
- ca_descr_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _CA_SET_PID:
CA_SET_PID
==========
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_SET_PID, ca_pid_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_SET_PID for this command.
- .. row 3
- ca_pid_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
......@@ -6,567 +6,16 @@
CA Function Calls
*****************
.. _ca_fopen:
DVB CA open()
=============
Description
-----------
This system call opens a named ca device (e.g. /dev/ost/ca) for
subsequent use.
When an open() call has succeeded, the device will be ready for use. The
significance of blocking or non-blocking mode is described in the
documentation for functions where there is a difference. It does not
affect the semantics of the open() call itself. A device opened in
blocking mode can later be put into non-blocking mode (and vice versa)
using the F_SETFL command of the fcntl system call. This is a standard
system call, documented in the Linux manual page for fcntl. Only one
user can open the CA Device in O_RDWR mode. All other attempts to open
the device in this mode will fail, and an error code will be returned.
Synopsis
--------
.. cpp:function:: int open(const char *deviceName, int flags)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- const char \*deviceName
- Name of specific video device.
- .. row 2
- int flags
- A bit-wise OR of the following flags:
- .. row 3
-
- O_RDONLY read-only access
- .. row 4
-
- O_RDWR read/write access
- .. row 5
-
- O_NONBLOCK open in non-blocking mode
- .. row 6
-
- (blocking mode is the default)
Return Value
------------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``ENODEV``
- Device driver not loaded/available.
- .. row 2
- ``EINTERNAL``
- Internal error.
- .. row 3
- ``EBUSY``
- Device or resource busy.
- .. row 4
- ``EINVAL``
- Invalid argument.
.. _ca_fclose:
DVB CA close()
==============
Description
-----------
This system call closes a previously opened audio device.
Synopsis
--------
.. cpp:function:: int close(int fd)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
Return Value
------------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EBADF``
- fd is not a valid open file descriptor.
.. _CA_RESET:
CA_RESET
========
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_RESET)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_RESET for this command.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. _CA_GET_CAP:
CA_GET_CAP
==========
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_GET_CAP, ca_caps_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_GET_CAP for this command.
- .. row 3
- ca_caps_t *
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. _CA_GET_SLOT_INFO:
CA_GET_SLOT_INFO
================
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_GET_SLOT_INFO, ca_slot_info_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_GET_SLOT_INFO for this command.
- .. row 3
- ca_slot_info_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. _CA_GET_DESCR_INFO:
CA_GET_DESCR_INFO
=================
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_GET_DESCR_INFO, ca_descr_info_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_GET_DESCR_INFO for this command.
- .. row 3
- ca_descr_info_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. _CA_GET_MSG:
CA_GET_MSG
==========
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_GET_MSG, ca_msg_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_GET_MSG for this command.
- .. row 3
- ca_msg_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. _CA_SEND_MSG:
CA_SEND_MSG
===========
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_SEND_MSG, ca_msg_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_SEND_MSG for this command.
- .. row 3
- ca_msg_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. _CA_SET_DESCR:
CA_SET_DESCR
============
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_SET_DESCR, ca_descr_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_SET_DESCR for this command.
- .. row 3
- ca_descr_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. _CA_SET_PID:
CA_SET_PID
==========
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. cpp:function:: int ioctl(fd, int request = CA_SET_PID, ca_pid_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals CA_SET_PID for this command.
- .. row 3
- ca_pid_t \*
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. toctree::
:maxdepth: 1
ca-fopen
ca-fclose
ca-reset
ca-get-cap
ca-get-slot-info
ca-get-descr-info
ca-get-msg
ca-send-msg
ca-set-descr
ca-set-pid
.. -*- coding: utf-8; mode: rst -*-
.. _DMX_ADD_PID:
DMX_ADD_PID
===========
Description
-----------
This ioctl call allows to add multiple PIDs to a transport stream filter
previously set up with DMX_SET_PES_FILTER and output equal to
DMX_OUT_TSDEMUX_TAP.
Synopsis
--------
.. c:function:: int ioctl(fd, int request = DMX_ADD_PID, __u16 *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals DMX_ADD_PID for this command.
- .. row 3
- __u16 *
- PID number to be filtered.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _dmx_fclose:
DVB demux close()
=================
Description
-----------
This system call deactivates and deallocates a filter that was
previously allocated via the open() call.
Synopsis
--------
.. c:function:: int close(int fd)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
Return Value
------------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EBADF``
- fd is not a valid open file descriptor.
.. -*- coding: utf-8; mode: rst -*-
.. _dmx_fopen:
DVB demux open()
================
Description
-----------
This system call, used with a device name of /dev/dvb/adapter0/demux0,
allocates a new filter and returns a handle which can be used for
subsequent control of that filter. This call has to be made for each
filter to be used, i.e. every returned file descriptor is a reference to
a single filter. /dev/dvb/adapter0/dvr0 is a logical device to be used
for retrieving Transport Streams for digital video recording. When
reading from this device a transport stream containing the packets from
all PES filters set in the corresponding demux device
(/dev/dvb/adapter0/demux0) having the output set to DMX_OUT_TS_TAP. A
recorded Transport Stream is replayed by writing to this device.
The significance of blocking or non-blocking mode is described in the
documentation for functions where there is a difference. It does not
affect the semantics of the open() call itself. A device opened in
blocking mode can later be put into non-blocking mode (and vice versa)
using the F_SETFL command of the fcntl system call.
Synopsis
--------
.. c:function:: int open(const char *deviceName, int flags)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- const char \*deviceName
- Name of demux device.
- .. row 2
- int flags
- A bit-wise OR of the following flags:
- .. row 3
-
- O_RDWR read/write access
- .. row 4
-
- O_NONBLOCK open in non-blocking mode
- .. row 5
-
- (blocking mode is the default)
Return Value
------------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``ENODEV``
- Device driver not loaded/available.
- .. row 2
- ``EINVAL``
- Invalid argument.
- .. row 3
- ``EMFILE``
- “Too many open files”, i.e. no more filters available.
- .. row 4
- ``ENOMEM``
- The driver failed to allocate enough memory.
.. -*- coding: utf-8; mode: rst -*-
.. _dmx_fread:
DVB demux read()
================
Description
-----------
This system call returns filtered data, which might be section or PES
data. The filtered data is transferred from the driver’s internal
circular buffer to buf. The maximum amount of data to be transferred is
implied by count.
Synopsis
--------
.. c:function:: size_t read(int fd, void *buf, size_t count)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- void \*buf
- Pointer to the buffer to be used for returned filtered data.
- .. row 3
- size_t count
- Size of buf.
Return Value
------------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EWOULDBLOCK``
- No data to return and O_NONBLOCK was specified.
- .. row 2
- ``EBADF``
- fd is not a valid open file descriptor.
- .. row 3
- ``ECRC``
- Last section had a CRC error - no data returned. The buffer is
flushed.
- .. row 4
- ``EOVERFLOW``
-
- .. row 5
-
- The filtered data was not read from the buffer in due time,
resulting in non-read data being lost. The buffer is flushed.
- .. row 6
- ``ETIMEDOUT``
- The section was not loaded within the stated timeout period. See
ioctl DMX_SET_FILTER for how to set a timeout.
- .. row 7
- ``EFAULT``
- The driver failed to write to the callers buffer due to an invalid
\*buf pointer.
.. -*- coding: utf-8; mode: rst -*-
.. _dmx_fwrite:
DVB demux write()
=================
Description
-----------
This system call is only provided by the logical device
/dev/dvb/adapter0/dvr0, associated with the physical demux device that
provides the actual DVR functionality. It is used for replay of a
digitally recorded Transport Stream. Matching filters have to be defined
in the corresponding physical demux device, /dev/dvb/adapter0/demux0.
The amount of data to be transferred is implied by count.
Synopsis
--------
.. c:function:: ssize_t write(int fd, const void *buf, size_t count)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- void \*buf
- Pointer to the buffer containing the Transport Stream.
- .. row 3
- size_t count
- Size of buf.
Return Value
------------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EWOULDBLOCK``
- No data was written. This might happen if O_NONBLOCK was
specified and there is no more buffer space available (if
O_NONBLOCK is not specified the function will block until buffer
space is available).
- .. row 2
- ``EBUSY``
- This error code indicates that there are conflicting requests. The
corresponding demux device is setup to receive data from the
front- end. Make sure that these filters are stopped and that the
filters with input set to DMX_IN_DVR are started.
- .. row 3
- ``EBADF``
- fd is not a valid open file descriptor.
.. -*- coding: utf-8; mode: rst -*-
.. _DMX_GET_CAPS:
DMX_GET_CAPS
============
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. c:function:: int ioctl(fd, int request = DMX_GET_CAPS, dmx_caps_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals DMX_GET_CAPS for this command.
- .. row 3
- dmx_caps_t *
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _DMX_GET_EVENT:
DMX_GET_EVENT
=============
Description
-----------
This ioctl call returns an event if available. If an event is not
available, the behavior depends on whether the device is in blocking or
non-blocking mode. In the latter case, the call fails immediately with
errno set to ``EWOULDBLOCK``. In the former case, the call blocks until an
event becomes available.
Synopsis
--------
.. c:function:: int ioctl( int fd, int request = DMX_GET_EVENT, struct dmx_event *ev)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals DMX_GET_EVENT for this command.
- .. row 3
- struct dmx_event \*ev
- Pointer to the location where the event is to be stored.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EWOULDBLOCK``
- There is no event pending, and the device is in non-blocking mode.
.. -*- coding: utf-8; mode: rst -*-
.. _DMX_GET_PES_PIDS:
DMX_GET_PES_PIDS
================
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. c:function:: int ioctl(fd, int request = DMX_GET_PES_PIDS, __u16[5])
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals DMX_GET_PES_PIDS for this command.
- .. row 3
- __u16[5]
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _DMX_GET_STC:
DMX_GET_STC
===========
Description
-----------
This ioctl call returns the current value of the system time counter
(which is driven by a PES filter of type DMX_PES_PCR). Some hardware
supports more than one STC, so you must specify which one by setting the
num field of stc before the ioctl (range 0...n). The result is returned
in form of a ratio with a 64 bit numerator and a 32 bit denominator, so
the real 90kHz STC value is stc->stc / stc->base .
Synopsis
--------
.. c:function:: int ioctl( int fd, int request = DMX_GET_STC, struct dmx_stc *stc)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals DMX_GET_STC for this command.
- .. row 3
- struct dmx_stc \*stc
- Pointer to the location where the stc is to be stored.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EINVAL``
- Invalid stc number.
.. -*- coding: utf-8; mode: rst -*-
.. _DMX_REMOVE_PID:
DMX_REMOVE_PID
==============
Description
-----------
This ioctl call allows to remove a PID when multiple PIDs are set on a
transport stream filter, e. g. a filter previously set up with output
equal to DMX_OUT_TSDEMUX_TAP, created via either
DMX_SET_PES_FILTER or DMX_ADD_PID.
Synopsis
--------
.. c:function:: int ioctl(fd, int request = DMX_REMOVE_PID, __u16 *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals DMX_REMOVE_PID for this command.
- .. row 3
- __u16 *
- PID of the PES filter to be removed.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _DMX_SET_BUFFER_SIZE:
DMX_SET_BUFFER_SIZE
===================
Description
-----------
This ioctl call is used to set the size of the circular buffer used for
filtered data. The default size is two maximum sized sections, i.e. if
this function is not called a buffer size of 2 \* 4096 bytes will be
used.
Synopsis
--------
.. c:function:: int ioctl( int fd, int request = DMX_SET_BUFFER_SIZE, unsigned long size)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals DMX_SET_BUFFER_SIZE for this command.
- .. row 3
- unsigned long size
- Size of circular buffer.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _DMX_SET_FILTER:
DMX_SET_FILTER
==============
Description
-----------
This ioctl call sets up a filter according to the filter and mask
parameters provided. A timeout may be defined stating number of seconds
to wait for a section to be loaded. A value of 0 means that no timeout
should be applied. Finally there is a flag field where it is possible to
state whether a section should be CRC-checked, whether the filter should
be a ”one-shot” filter, i.e. if the filtering operation should be
stopped after the first section is received, and whether the filtering
operation should be started immediately (without waiting for a
DMX_START ioctl call). If a filter was previously set-up, this filter
will be canceled, and the receive buffer will be flushed.
Synopsis
--------
.. c:function:: int ioctl( int fd, int request = DMX_SET_FILTER, struct dmx_sct_filter_params *params)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals DMX_SET_FILTER for this command.
- .. row 3
- struct dmx_sct_filter_params \*params
- Pointer to structure containing filter parameters.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. -*- coding: utf-8; mode: rst -*-
.. _DMX_SET_PES_FILTER:
DMX_SET_PES_FILTER
==================
Description
-----------
This ioctl call sets up a PES filter according to the parameters
provided. By a PES filter is meant a filter that is based just on the
packet identifier (PID), i.e. no PES header or payload filtering
capability is supported.
Synopsis
--------
.. c:function:: int ioctl( int fd, int request = DMX_SET_PES_FILTER, struct dmx_pes_filter_params *params)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals DMX_SET_PES_FILTER for this command.
- .. row 3
- struct dmx_pes_filter_params \*params
- Pointer to structure containing filter parameters.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- ``EBUSY``
- This error code indicates that there are conflicting requests.
There are active filters filtering data from another input source.
Make sure that these filters are stopped before starting this
filter.
.. -*- coding: utf-8; mode: rst -*-
.. _DMX_SET_SOURCE:
DMX_SET_SOURCE
==============
Description
-----------
This ioctl is undocumented. Documentation is welcome.
Synopsis
--------
.. c:function:: int ioctl(fd, int request = DMX_SET_SOURCE, dmx_source_t *)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals DMX_SET_SOURCE for this command.
- .. row 3
- dmx_source_t *
- Undocumented.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
This diff is collapsed.
.. -*- coding: utf-8; mode: rst -*-
.. _DMX_STOP:
DMX_STOP
========
Description
-----------
This ioctl call is used to stop the actual filtering operation defined
via the ioctl calls DMX_SET_FILTER or DMX_SET_PES_FILTER and
started via the DMX_START command.
Synopsis
--------
.. c:function:: int ioctl( int fd, int request = DMX_STOP)
Arguments
----------
.. flat-table::
:header-rows: 0
:stub-columns: 0
- .. row 1
- int fd
- File descriptor returned by a previous call to open().
- .. row 2
- int request
- Equals DMX_STOP for this command.
Return Value
------------
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment