4f14e3272f
The extended-controls.rst file had become too big. Split it up: each control class reference gets its own rst file, and this file just describes the Extended Control API. Each control class reference is also moved up one level into the table of contents to make it easier to find e.g. the codec control reference. Finally I rearranged the order so that all camera-related control classes are grouped together, ditto for codec/jpeg and fm-rx/tx. The ext-ctrls-codec.rst is still pretty big and it is a candidate to split up further in the future, possibly per codec. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
189 lines
7.4 KiB
ReStructuredText
189 lines
7.4 KiB
ReStructuredText
.. Permission is granted to copy, distribute and/or modify this
|
|
.. document under the terms of the GNU Free Documentation License,
|
|
.. Version 1.1 or any later version published by the Free Software
|
|
.. Foundation, with no Invariant Sections, no Front-Cover Texts
|
|
.. and no Back-Cover Texts. A copy of the license is included at
|
|
.. Documentation/media/uapi/fdl-appendix.rst.
|
|
..
|
|
.. TODO: replace it to GFDL-1.1-or-later WITH no-invariant-sections
|
|
|
|
.. _fm-tx-controls:
|
|
|
|
********************************
|
|
FM Transmitter Control Reference
|
|
********************************
|
|
|
|
The FM Transmitter (FM_TX) class includes controls for common features
|
|
of FM transmissions capable devices. Currently this class includes
|
|
parameters for audio compression, pilot tone generation, audio deviation
|
|
limiter, RDS transmission and tuning power features.
|
|
|
|
|
|
.. _fm-tx-control-id:
|
|
|
|
FM_TX Control IDs
|
|
=================
|
|
|
|
``V4L2_CID_FM_TX_CLASS (class)``
|
|
The FM_TX class descriptor. Calling
|
|
:ref:`VIDIOC_QUERYCTRL` for this control will
|
|
return a description of this control class.
|
|
|
|
``V4L2_CID_RDS_TX_DEVIATION (integer)``
|
|
Configures RDS signal frequency deviation level in Hz. The range and
|
|
step are driver-specific.
|
|
|
|
``V4L2_CID_RDS_TX_PI (integer)``
|
|
Sets the RDS Programme Identification field for transmission.
|
|
|
|
``V4L2_CID_RDS_TX_PTY (integer)``
|
|
Sets the RDS Programme Type field for transmission. This encodes up
|
|
to 31 pre-defined programme types.
|
|
|
|
``V4L2_CID_RDS_TX_PS_NAME (string)``
|
|
Sets the Programme Service name (PS_NAME) for transmission. It is
|
|
intended for static display on a receiver. It is the primary aid to
|
|
listeners in programme service identification and selection. In
|
|
Annex E of :ref:`iec62106`, the RDS specification, there is a full
|
|
description of the correct character encoding for Programme Service
|
|
name strings. Also from RDS specification, PS is usually a single
|
|
eight character text. However, it is also possible to find receivers
|
|
which can scroll strings sized as 8 x N characters. So, this control
|
|
must be configured with steps of 8 characters. The result is it must
|
|
always contain a string with size multiple of 8.
|
|
|
|
``V4L2_CID_RDS_TX_RADIO_TEXT (string)``
|
|
Sets the Radio Text info for transmission. It is a textual
|
|
description of what is being broadcasted. RDS Radio Text can be
|
|
applied when broadcaster wishes to transmit longer PS names,
|
|
programme-related information or any other text. In these cases,
|
|
RadioText should be used in addition to ``V4L2_CID_RDS_TX_PS_NAME``.
|
|
The encoding for Radio Text strings is also fully described in Annex
|
|
E of :ref:`iec62106`. The length of Radio Text strings depends on
|
|
which RDS Block is being used to transmit it, either 32 (2A block)
|
|
or 64 (2B block). However, it is also possible to find receivers
|
|
which can scroll strings sized as 32 x N or 64 x N characters. So,
|
|
this control must be configured with steps of 32 or 64 characters.
|
|
The result is it must always contain a string with size multiple of
|
|
32 or 64.
|
|
|
|
``V4L2_CID_RDS_TX_MONO_STEREO (boolean)``
|
|
Sets the Mono/Stereo bit of the Decoder Identification code. If set,
|
|
then the audio was recorded as stereo.
|
|
|
|
``V4L2_CID_RDS_TX_ARTIFICIAL_HEAD (boolean)``
|
|
Sets the
|
|
`Artificial Head <http://en.wikipedia.org/wiki/Artificial_head>`__
|
|
bit of the Decoder Identification code. If set, then the audio was
|
|
recorded using an artificial head.
|
|
|
|
``V4L2_CID_RDS_TX_COMPRESSED (boolean)``
|
|
Sets the Compressed bit of the Decoder Identification code. If set,
|
|
then the audio is compressed.
|
|
|
|
``V4L2_CID_RDS_TX_DYNAMIC_PTY (boolean)``
|
|
Sets the Dynamic PTY bit of the Decoder Identification code. If set,
|
|
then the PTY code is dynamically switched.
|
|
|
|
``V4L2_CID_RDS_TX_TRAFFIC_ANNOUNCEMENT (boolean)``
|
|
If set, then a traffic announcement is in progress.
|
|
|
|
``V4L2_CID_RDS_TX_TRAFFIC_PROGRAM (boolean)``
|
|
If set, then the tuned programme carries traffic announcements.
|
|
|
|
``V4L2_CID_RDS_TX_MUSIC_SPEECH (boolean)``
|
|
If set, then this channel broadcasts music. If cleared, then it
|
|
broadcasts speech. If the transmitter doesn't make this distinction,
|
|
then it should be set.
|
|
|
|
``V4L2_CID_RDS_TX_ALT_FREQS_ENABLE (boolean)``
|
|
If set, then transmit alternate frequencies.
|
|
|
|
``V4L2_CID_RDS_TX_ALT_FREQS (__u32 array)``
|
|
The alternate frequencies in kHz units. The RDS standard allows for
|
|
up to 25 frequencies to be defined. Drivers may support fewer
|
|
frequencies so check the array size.
|
|
|
|
``V4L2_CID_AUDIO_LIMITER_ENABLED (boolean)``
|
|
Enables or disables the audio deviation limiter feature. The limiter
|
|
is useful when trying to maximize the audio volume, minimize
|
|
receiver-generated distortion and prevent overmodulation.
|
|
|
|
``V4L2_CID_AUDIO_LIMITER_RELEASE_TIME (integer)``
|
|
Sets the audio deviation limiter feature release time. Unit is in
|
|
useconds. Step and range are driver-specific.
|
|
|
|
``V4L2_CID_AUDIO_LIMITER_DEVIATION (integer)``
|
|
Configures audio frequency deviation level in Hz. The range and step
|
|
are driver-specific.
|
|
|
|
``V4L2_CID_AUDIO_COMPRESSION_ENABLED (boolean)``
|
|
Enables or disables the audio compression feature. This feature
|
|
amplifies signals below the threshold by a fixed gain and compresses
|
|
audio signals above the threshold by the ratio of Threshold/(Gain +
|
|
Threshold).
|
|
|
|
``V4L2_CID_AUDIO_COMPRESSION_GAIN (integer)``
|
|
Sets the gain for audio compression feature. It is a dB value. The
|
|
range and step are driver-specific.
|
|
|
|
``V4L2_CID_AUDIO_COMPRESSION_THRESHOLD (integer)``
|
|
Sets the threshold level for audio compression freature. It is a dB
|
|
value. The range and step are driver-specific.
|
|
|
|
``V4L2_CID_AUDIO_COMPRESSION_ATTACK_TIME (integer)``
|
|
Sets the attack time for audio compression feature. It is a useconds
|
|
value. The range and step are driver-specific.
|
|
|
|
``V4L2_CID_AUDIO_COMPRESSION_RELEASE_TIME (integer)``
|
|
Sets the release time for audio compression feature. It is a
|
|
useconds value. The range and step are driver-specific.
|
|
|
|
``V4L2_CID_PILOT_TONE_ENABLED (boolean)``
|
|
Enables or disables the pilot tone generation feature.
|
|
|
|
``V4L2_CID_PILOT_TONE_DEVIATION (integer)``
|
|
Configures pilot tone frequency deviation level. Unit is in Hz. The
|
|
range and step are driver-specific.
|
|
|
|
``V4L2_CID_PILOT_TONE_FREQUENCY (integer)``
|
|
Configures pilot tone frequency value. Unit is in Hz. The range and
|
|
step are driver-specific.
|
|
|
|
``V4L2_CID_TUNE_PREEMPHASIS``
|
|
(enum)
|
|
|
|
enum v4l2_preemphasis -
|
|
Configures the pre-emphasis value for broadcasting. A pre-emphasis
|
|
filter is applied to the broadcast to accentuate the high audio
|
|
frequencies. Depending on the region, a time constant of either 50
|
|
or 75 useconds is used. The enum v4l2_preemphasis defines possible
|
|
values for pre-emphasis. Here they are:
|
|
|
|
|
|
|
|
.. flat-table::
|
|
:header-rows: 0
|
|
:stub-columns: 0
|
|
|
|
* - ``V4L2_PREEMPHASIS_DISABLED``
|
|
- No pre-emphasis is applied.
|
|
* - ``V4L2_PREEMPHASIS_50_uS``
|
|
- A pre-emphasis of 50 uS is used.
|
|
* - ``V4L2_PREEMPHASIS_75_uS``
|
|
- A pre-emphasis of 75 uS is used.
|
|
|
|
|
|
|
|
``V4L2_CID_TUNE_POWER_LEVEL (integer)``
|
|
Sets the output power level for signal transmission. Unit is in
|
|
dBuV. Range and step are driver-specific.
|
|
|
|
``V4L2_CID_TUNE_ANTENNA_CAPACITOR (integer)``
|
|
This selects the value of antenna tuning capacitor manually or
|
|
automatically if set to zero. Unit, range and step are
|
|
driver-specific.
|
|
|
|
For more details about RDS specification, refer to :ref:`iec62106`
|
|
document, from CENELEC.
|