162306a36Sopenharmony_ci.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
262306a36Sopenharmony_ci
362306a36Sopenharmony_ci.. _fm-rx-controls:
462306a36Sopenharmony_ci
562306a36Sopenharmony_ci*****************************
662306a36Sopenharmony_ciFM Receiver Control Reference
762306a36Sopenharmony_ci*****************************
862306a36Sopenharmony_ci
962306a36Sopenharmony_ciThe FM Receiver (FM_RX) class includes controls for common features of
1062306a36Sopenharmony_ciFM Reception capable devices.
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci.. _fm-rx-control-id:
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ciFM_RX Control IDs
1662306a36Sopenharmony_ci=================
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci``V4L2_CID_FM_RX_CLASS (class)``
1962306a36Sopenharmony_ci    The FM_RX class descriptor. Calling
2062306a36Sopenharmony_ci    :ref:`VIDIOC_QUERYCTRL` for this control will
2162306a36Sopenharmony_ci    return a description of this control class.
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ci``V4L2_CID_RDS_RECEPTION (boolean)``
2462306a36Sopenharmony_ci    Enables/disables RDS reception by the radio tuner
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ci``V4L2_CID_RDS_RX_PTY (integer)``
2762306a36Sopenharmony_ci    Gets RDS Programme Type field. This encodes up to 31 pre-defined
2862306a36Sopenharmony_ci    programme types.
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci``V4L2_CID_RDS_RX_PS_NAME (string)``
3162306a36Sopenharmony_ci    Gets the Programme Service name (PS_NAME). It is intended for
3262306a36Sopenharmony_ci    static display on a receiver. It is the primary aid to listeners in
3362306a36Sopenharmony_ci    programme service identification and selection. In Annex E of
3462306a36Sopenharmony_ci    :ref:`iec62106`, the RDS specification, there is a full
3562306a36Sopenharmony_ci    description of the correct character encoding for Programme Service
3662306a36Sopenharmony_ci    name strings. Also from RDS specification, PS is usually a single
3762306a36Sopenharmony_ci    eight character text. However, it is also possible to find receivers
3862306a36Sopenharmony_ci    which can scroll strings sized as 8 x N characters. So, this control
3962306a36Sopenharmony_ci    must be configured with steps of 8 characters. The result is it must
4062306a36Sopenharmony_ci    always contain a string with size multiple of 8.
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ci``V4L2_CID_RDS_RX_RADIO_TEXT (string)``
4362306a36Sopenharmony_ci    Gets the Radio Text info. It is a textual description of what is
4462306a36Sopenharmony_ci    being broadcasted. RDS Radio Text can be applied when broadcaster
4562306a36Sopenharmony_ci    wishes to transmit longer PS names, programme-related information or
4662306a36Sopenharmony_ci    any other text. In these cases, RadioText can be used in addition to
4762306a36Sopenharmony_ci    ``V4L2_CID_RDS_RX_PS_NAME``. The encoding for Radio Text strings is
4862306a36Sopenharmony_ci    also fully described in Annex E of :ref:`iec62106`. The length of
4962306a36Sopenharmony_ci    Radio Text strings depends on which RDS Block is being used to
5062306a36Sopenharmony_ci    transmit it, either 32 (2A block) or 64 (2B block). However, it is
5162306a36Sopenharmony_ci    also possible to find receivers which can scroll strings sized as 32
5262306a36Sopenharmony_ci    x N or 64 x N characters. So, this control must be configured with
5362306a36Sopenharmony_ci    steps of 32 or 64 characters. The result is it must always contain a
5462306a36Sopenharmony_ci    string with size multiple of 32 or 64.
5562306a36Sopenharmony_ci
5662306a36Sopenharmony_ci``V4L2_CID_RDS_RX_TRAFFIC_ANNOUNCEMENT (boolean)``
5762306a36Sopenharmony_ci    If set, then a traffic announcement is in progress.
5862306a36Sopenharmony_ci
5962306a36Sopenharmony_ci``V4L2_CID_RDS_RX_TRAFFIC_PROGRAM (boolean)``
6062306a36Sopenharmony_ci    If set, then the tuned programme carries traffic announcements.
6162306a36Sopenharmony_ci
6262306a36Sopenharmony_ci``V4L2_CID_RDS_RX_MUSIC_SPEECH (boolean)``
6362306a36Sopenharmony_ci    If set, then this channel broadcasts music. If cleared, then it
6462306a36Sopenharmony_ci    broadcasts speech. If the transmitter doesn't make this distinction,
6562306a36Sopenharmony_ci    then it will be set.
6662306a36Sopenharmony_ci
6762306a36Sopenharmony_ci``V4L2_CID_TUNE_DEEMPHASIS``
6862306a36Sopenharmony_ci    (enum)
6962306a36Sopenharmony_ci
7062306a36Sopenharmony_cienum v4l2_deemphasis -
7162306a36Sopenharmony_ci    Configures the de-emphasis value for reception. A de-emphasis filter
7262306a36Sopenharmony_ci    is applied to the broadcast to accentuate the high audio
7362306a36Sopenharmony_ci    frequencies. Depending on the region, a time constant of either 50
7462306a36Sopenharmony_ci    or 75 useconds is used. The enum v4l2_deemphasis defines possible
7562306a36Sopenharmony_ci    values for de-emphasis. Here they are:
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ci
7862306a36Sopenharmony_ci
7962306a36Sopenharmony_ci.. flat-table::
8062306a36Sopenharmony_ci    :header-rows:  0
8162306a36Sopenharmony_ci    :stub-columns: 0
8262306a36Sopenharmony_ci
8362306a36Sopenharmony_ci    * - ``V4L2_DEEMPHASIS_DISABLED``
8462306a36Sopenharmony_ci      - No de-emphasis is applied.
8562306a36Sopenharmony_ci    * - ``V4L2_DEEMPHASIS_50_uS``
8662306a36Sopenharmony_ci      - A de-emphasis of 50 uS is used.
8762306a36Sopenharmony_ci    * - ``V4L2_DEEMPHASIS_75_uS``
8862306a36Sopenharmony_ci      - A de-emphasis of 75 uS is used.
89