1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
2
3.. _fm-rx-controls:
4
5*****************************
6FM Receiver Control Reference
7*****************************
8
9The FM Receiver (FM_RX) class includes controls for common features of
10FM Reception capable devices.
11
12
13.. _fm-rx-control-id:
14
15FM_RX Control IDs
16=================
17
18``V4L2_CID_FM_RX_CLASS (class)``
19    The FM_RX class descriptor. Calling
20    :ref:`VIDIOC_QUERYCTRL` for this control will
21    return a description of this control class.
22
23``V4L2_CID_RDS_RECEPTION (boolean)``
24    Enables/disables RDS reception by the radio tuner
25
26``V4L2_CID_RDS_RX_PTY (integer)``
27    Gets RDS Programme Type field. This encodes up to 31 pre-defined
28    programme types.
29
30``V4L2_CID_RDS_RX_PS_NAME (string)``
31    Gets the Programme Service name (PS_NAME). It is intended for
32    static display on a receiver. It is the primary aid to listeners in
33    programme service identification and selection. In Annex E of
34    :ref:`iec62106`, the RDS specification, there is a full
35    description of the correct character encoding for Programme Service
36    name strings. Also from RDS specification, PS is usually a single
37    eight character text. However, it is also possible to find receivers
38    which can scroll strings sized as 8 x N characters. So, this control
39    must be configured with steps of 8 characters. The result is it must
40    always contain a string with size multiple of 8.
41
42``V4L2_CID_RDS_RX_RADIO_TEXT (string)``
43    Gets the Radio Text info. It is a textual description of what is
44    being broadcasted. RDS Radio Text can be applied when broadcaster
45    wishes to transmit longer PS names, programme-related information or
46    any other text. In these cases, RadioText can be used in addition to
47    ``V4L2_CID_RDS_RX_PS_NAME``. The encoding for Radio Text strings is
48    also fully described in Annex E of :ref:`iec62106`. The length of
49    Radio Text strings depends on which RDS Block is being used to
50    transmit it, either 32 (2A block) or 64 (2B block). However, it is
51    also possible to find receivers which can scroll strings sized as 32
52    x N or 64 x N characters. So, this control must be configured with
53    steps of 32 or 64 characters. The result is it must always contain a
54    string with size multiple of 32 or 64.
55
56``V4L2_CID_RDS_RX_TRAFFIC_ANNOUNCEMENT (boolean)``
57    If set, then a traffic announcement is in progress.
58
59``V4L2_CID_RDS_RX_TRAFFIC_PROGRAM (boolean)``
60    If set, then the tuned programme carries traffic announcements.
61
62``V4L2_CID_RDS_RX_MUSIC_SPEECH (boolean)``
63    If set, then this channel broadcasts music. If cleared, then it
64    broadcasts speech. If the transmitter doesn't make this distinction,
65    then it will be set.
66
67``V4L2_CID_TUNE_DEEMPHASIS``
68    (enum)
69
70enum v4l2_deemphasis -
71    Configures the de-emphasis value for reception. A de-emphasis filter
72    is applied to the broadcast to accentuate the high audio
73    frequencies. Depending on the region, a time constant of either 50
74    or 75 useconds is used. The enum v4l2_deemphasis defines possible
75    values for de-emphasis. Here they are:
76
77
78
79.. flat-table::
80    :header-rows:  0
81    :stub-columns: 0
82
83    * - ``V4L2_DEEMPHASIS_DISABLED``
84      - No de-emphasis is applied.
85    * - ``V4L2_DEEMPHASIS_50_uS``
86      - A de-emphasis of 50 uS is used.
87    * - ``V4L2_DEEMPHASIS_75_uS``
88      - A de-emphasis of 75 uS is used.
89