€• PŒsphinx.addnodes”Œdocument”“”)”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)”}”(hhh]”(hŒ pending_xref”“”)”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…””}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ1/translations/zh_CN/userspace-api/media/v4l/tuner”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)”}”(hhh]”hŒChinese (Traditional)”…””}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ1/translations/zh_TW/userspace-api/media/v4l/tuner”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ1/translations/it_IT/userspace-api/media/v4l/tuner”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ1/translations/ja_JP/userspace-api/media/v4l/tuner”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ1/translations/ko_KR/userspace-api/media/v4l/tuner”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒSpanish”…””}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ1/translations/sp_SP/userspace-api/media/v4l/tuner”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)”}”(hŒ8SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later”h]”hŒ8SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later”…””}”hh£sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1h¡hhhžhhŸŒK/var/lib/git/docbuild/linux/Documentation/userspace-api/media/v4l/tuner.rst”h KubhŒtarget”“”)”}”(hŒ .. _tuner:”h]”h}”(h]”h ]”h"]”h$]”h&]”Œrefid”Œtuner”uh1h´h KhhhžhhŸh³ubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒTuners and Modulators”h]”hŒTuners and Modulators”…””}”(hhÉhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÇhhÄhžhhŸh³h KubhÃ)”}”(hhh]”(hÈ)”}”(hŒTuners”h]”hŒTuners”…””}”(hhÚhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÇhh×hžhhŸh³h K ubhŒ paragraph”“”)”}”(hX‹Video input devices can have one or more tuners demodulating a RF signal. Each tuner is associated with one or more video inputs, depending on the number of RF connectors on the tuner. The ``type`` field of the respective struct :c:type:`v4l2_input` returned by the :ref:`VIDIOC_ENUMINPUT` ioctl is set to ``V4L2_INPUT_TYPE_TUNER`` and its ``tuner`` field contains the index number of the tuner.”h]”(hŒ½Video input devices can have one or more tuners demodulating a RF signal. Each tuner is associated with one or more video inputs, depending on the number of RF connectors on the tuner. The ”…””}”(hhêhžhhŸNh NubhŒliteral”“”)”}”(hŒ``type``”h]”hŒtype”…””}”(hhôhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hòhhêubhŒ field of the respective struct ”…””}”(hhêhžhhŸNh Nubh)”}”(hŒ:c:type:`v4l2_input`”h]”hó)”}”(hjh]”hŒ v4l2_input”…””}”(hj hžhhŸNh Nubah}”(h]”h ]”(Œxref”Œc”Œc-type”eh"]”h$]”h&]”uh1hòhjubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”Œuserspace-api/media/v4l/tuner”Œ refdomain”jŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰Œ reftarget”Œ v4l2_input”uh1hhŸh³h K hhêubhŒ returned by the ”…””}”(hhêhžhhŸNh Nubh)”}”(hŒ:ref:`VIDIOC_ENUMINPUT`”h]”hŒinline”“”)”}”(hj/h]”hŒVIDIOC_ENUMINPUT”…””}”(hj3hžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hj-ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j=Œreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj'Œvidioc_enuminput”uh1hhŸh³h K hhêubhŒ ioctl is set to ”…””}”(hhêhžhhŸNh Nubhó)”}”(hŒ``V4L2_INPUT_TYPE_TUNER``”h]”hŒV4L2_INPUT_TYPE_TUNER”…””}”(hjShžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hòhhêubhŒ and its ”…””}”(hhêhžhhŸNh Nubhó)”}”(hŒ ``tuner``”h]”hŒtuner”…””}”(hjehžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hòhhêubhŒ. field contains the index number of the tuner.”…””}”(hhêhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hèhŸh³h K hh×hžhubhé)”}”(hŒLRadio input devices have exactly one tuner with index zero, no video inputs.”h]”hŒLRadio input devices have exactly one tuner with index zero, no video inputs.”…””}”(hj}hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hèhŸh³h Khh×hžhubhé)”}”(hXfTo query and change tuner properties applications use the :ref:`VIDIOC_G_TUNER ` and :ref:`VIDIOC_S_TUNER ` ioctls, respectively. The struct :c:type:`v4l2_tuner` returned by :ref:`VIDIOC_G_TUNER ` also contains signal status information applicable when the tuner of the current video or radio input is queried.”h]”(hŒ:To query and change tuner properties applications use the ”…””}”(hj‹hžhhŸNh Nubh)”}”(hŒ&:ref:`VIDIOC_G_TUNER `”h]”j2)”}”(hj•h]”hŒVIDIOC_G_TUNER”…””}”(hj—hžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hj“ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j¡Œreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj'Œvidioc_g_tuner”uh1hhŸh³h Khj‹ubhŒ and ”…””}”(hj‹hžhhŸNh Nubh)”}”(hŒ&:ref:`VIDIOC_S_TUNER `”h]”j2)”}”(hj¹h]”hŒVIDIOC_S_TUNER”…””}”(hj»hžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hj·ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jÅŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj'Œvidioc_g_tuner”uh1hhŸh³h Khj‹ubhŒ" ioctls, respectively. The struct ”…””}”(hj‹hžhhŸNh Nubh)”}”(hŒ:c:type:`v4l2_tuner`”h]”hó)”}”(hjÝh]”hŒ v4l2_tuner”…””}”(hjßhžhhŸNh Nubah}”(h]”h ]”(jjŒc-type”eh"]”h$]”h&]”uh1hòhjÛubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j'Œ v4l2_tuner”uh1hhŸh³h Khj‹ubhŒ returned by ”…””}”(hj‹hžhhŸNh Nubh)”}”(hŒ&:ref:`VIDIOC_G_TUNER `”h]”j2)”}”(hjh]”hŒVIDIOC_G_TUNER”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hjþubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j Œreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj'Œvidioc_g_tuner”uh1hhŸh³h Khj‹ubhŒr also contains signal status information applicable when the tuner of the current video or radio input is queried.”…””}”(hj‹hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hèhŸh³h Khh×hžhubhŒnote”“”)”}”(hXc:ref:`VIDIOC_S_TUNER ` does not switch the current tuner, when there is more than one. The tuner is solely determined by the current video input. Drivers must support both ioctls and set the ``V4L2_CAP_TUNER`` flag in the struct :c:type:`v4l2_capability` returned by the :ref:`VIDIOC_QUERYCAP` ioctl when the device has one or more tuners.”h]”hé)”}”(hXc:ref:`VIDIOC_S_TUNER ` does not switch the current tuner, when there is more than one. The tuner is solely determined by the current video input. Drivers must support both ioctls and set the ``V4L2_CAP_TUNER`` flag in the struct :c:type:`v4l2_capability` returned by the :ref:`VIDIOC_QUERYCAP` ioctl when the device has one or more tuners.”h]”(h)”}”(hŒ&:ref:`VIDIOC_S_TUNER `”h]”j2)”}”(hj4h]”hŒVIDIOC_S_TUNER”…””}”(hj6hžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hj2ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j@Œreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj'Œvidioc_g_tuner”uh1hhŸh³h K!hj.ubhŒ© does not switch the current tuner, when there is more than one. The tuner is solely determined by the current video input. Drivers must support both ioctls and set the ”…””}”(hj.hžhhŸNh Nubhó)”}”(hŒ``V4L2_CAP_TUNER``”h]”hŒV4L2_CAP_TUNER”…””}”(hjVhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hòhj.ubhŒ flag in the struct ”…””}”(hj.hžhhŸNh Nubh)”}”(hŒ:c:type:`v4l2_capability`”h]”hó)”}”(hjjh]”hŒv4l2_capability”…””}”(hjlhžhhŸNh Nubah}”(h]”h ]”(jjŒc-type”eh"]”h$]”h&]”uh1hòhjhubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j'Œv4l2_capability”uh1hhŸh³h K!hj.ubhŒ returned by the ”…””}”(hj.hžhhŸNh Nubh)”}”(hŒ:ref:`VIDIOC_QUERYCAP`”h]”j2)”}”(hjh]”hŒVIDIOC_QUERYCAP”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hj‹ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j™Œreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj'Œvidioc_querycap”uh1hhŸh³h K!hj.ubhŒ. ioctl when the device has one or more tuners.”…””}”(hj.hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hèhŸh³h K!hj*ubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hh×hžhhŸh³h Nubeh}”(h]”Œtuners”ah ]”h"]”Œtuners”ah$]”h&]”uh1hÂhhÄhžhhŸh³h K ubhÃ)”}”(hhh]”(hÈ)”}”(hŒ Modulators”h]”hŒ Modulators”…””}”(hjÆhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÇhjÃhžhhŸh³h K*ubhé)”}”(hXüVideo output devices can have one or more modulators, that modulate a video signal for radiation or connection to the antenna input of a TV set or video recorder. Each modulator is associated with one or more video outputs, depending on the number of RF connectors on the modulator. The ``type`` field of the respective struct :c:type:`v4l2_output` returned by the :ref:`VIDIOC_ENUMOUTPUT` ioctl is set to ``V4L2_OUTPUT_TYPE_MODULATOR`` and its ``modulator`` field contains the index number of the modulator.”h]”(hXVideo output devices can have one or more modulators, that modulate a video signal for radiation or connection to the antenna input of a TV set or video recorder. Each modulator is associated with one or more video outputs, depending on the number of RF connectors on the modulator. The ”…””}”(hjÔhžhhŸNh Nubhó)”}”(hŒ``type``”h]”hŒtype”…””}”(hjÜhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hòhjÔubhŒ field of the respective struct ”…””}”(hjÔhžhhŸNh Nubh)”}”(hŒ:c:type:`v4l2_output`”h]”hó)”}”(hjðh]”hŒ v4l2_output”…””}”(hjòhžhhŸNh Nubah}”(h]”h ]”(jjŒc-type”eh"]”h$]”h&]”uh1hòhjîubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j'Œ v4l2_output”uh1hhŸh³h K,hjÔubhŒ returned by the ”…””}”(hjÔhžhhŸNh Nubh)”}”(hŒ:ref:`VIDIOC_ENUMOUTPUT`”h]”j2)”}”(hjh]”hŒVIDIOC_ENUMOUTPUT”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hjubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jŒreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj'Œvidioc_enumoutput”uh1hhŸh³h K,hjÔubhŒ ioctl is set to ”…””}”(hjÔhžhhŸNh Nubhó)”}”(hŒ``V4L2_OUTPUT_TYPE_MODULATOR``”h]”hŒV4L2_OUTPUT_TYPE_MODULATOR”…””}”(hj5hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hòhjÔubhŒ and its ”…””}”(hjÔhžhhŸNh Nubhó)”}”(hŒ ``modulator``”h]”hŒ modulator”…””}”(hjGhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hòhjÔubhŒ2 field contains the index number of the modulator.”…””}”(hjÔhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hèhŸh³h K,hjÃhžhubhé)”}”(hŒRRadio output devices have exactly one modulator with index zero, no video outputs.”h]”hŒRRadio output devices have exactly one modulator with index zero, no video outputs.”…””}”(hj_hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hèhŸh³h K6hjÃhžhubhé)”}”(hXŠA video or radio device cannot support both a tuner and a modulator. Two separate device nodes will have to be used for such hardware, one that supports the tuner functionality and one that supports the modulator functionality. The reason is a limitation with the :ref:`VIDIOC_S_FREQUENCY ` ioctl where you cannot specify whether the frequency is for a tuner or a modulator.”h]”(hXA video or radio device cannot support both a tuner and a modulator. Two separate device nodes will have to be used for such hardware, one that supports the tuner functionality and one that supports the modulator functionality. The reason is a limitation with the ”…””}”(hjmhžhhŸNh Nubh)”}”(hŒ.:ref:`VIDIOC_S_FREQUENCY `”h]”j2)”}”(hjwh]”hŒVIDIOC_S_FREQUENCY”…””}”(hjyhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hjuubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jƒŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj'Œvidioc_g_frequency”uh1hhŸh³h K9hjmubhŒT ioctl where you cannot specify whether the frequency is for a tuner or a modulator.”…””}”(hjmhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hèhŸh³h K9hjÃhžhubhé)”}”(hX4To query and change modulator properties applications use the :ref:`VIDIOC_G_MODULATOR ` and :ref:`VIDIOC_S_MODULATOR ` ioctl. Note that :ref:`VIDIOC_S_MODULATOR ` does not switch the current modulator, when there is more than one at all. The modulator is solely determined by the current video output. Drivers must support both ioctls and set the ``V4L2_CAP_MODULATOR`` flag in the struct :c:type:`v4l2_capability` returned by the :ref:`VIDIOC_QUERYCAP` ioctl when the device has one or more modulators.”h]”(hŒ>To query and change modulator properties applications use the ”…””}”(hjŸhžhhŸNh Nubh)”}”(hŒ.:ref:`VIDIOC_G_MODULATOR `”h]”j2)”}”(hj©h]”hŒVIDIOC_G_MODULATOR”…””}”(hj«hžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hj§ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jµŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj'Œvidioc_g_modulator”uh1hhŸh³h K@hjŸubhŒ and ”…””}”(hjŸhžhhŸNh Nubh)”}”(hŒ.:ref:`VIDIOC_S_MODULATOR `”h]”j2)”}”(hjÍh]”hŒVIDIOC_S_MODULATOR”…””}”(hjÏhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hjËubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jÙŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj'Œvidioc_g_modulator”uh1hhŸh³h K@hjŸubhŒ ioctl. Note that ”…””}”(hjŸhžhhŸNh Nubh)”}”(hŒ.:ref:`VIDIOC_S_MODULATOR `”h]”j2)”}”(hjñh]”hŒVIDIOC_S_MODULATOR”…””}”(hjóhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hjïubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jýŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj'Œvidioc_g_modulator”uh1hhŸh³h K@hjŸubhŒ¹ does not switch the current modulator, when there is more than one at all. The modulator is solely determined by the current video output. Drivers must support both ioctls and set the ”…””}”(hjŸhžhhŸNh Nubhó)”}”(hŒ``V4L2_CAP_MODULATOR``”h]”hŒV4L2_CAP_MODULATOR”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hòhjŸubhŒ flag in the struct ”…””}”(hjŸhžhhŸNh Nubh)”}”(hŒ:c:type:`v4l2_capability`”h]”hó)”}”(hj'h]”hŒv4l2_capability”…””}”(hj)hžhhŸNh Nubah}”(h]”h ]”(jjŒc-type”eh"]”h$]”h&]”uh1hòhj%ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j'Œv4l2_capability”uh1hhŸh³h K@hjŸubhŒ returned by the ”…””}”(hjŸhžhhŸNh Nubh)”}”(hŒ:ref:`VIDIOC_QUERYCAP`”h]”j2)”}”(hjJh]”hŒVIDIOC_QUERYCAP”…””}”(hjLhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hjHubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jVŒreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj'Œvidioc_querycap”uh1hhŸh³h K@hjŸubhŒ2 ioctl when the device has one or more modulators.”…””}”(hjŸhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hèhŸh³h K@hjÃhžhubeh}”(h]”Œ modulators”ah ]”h"]”Œ modulators”ah$]”h&]”uh1hÂhhÄhžhhŸh³h K*ubhÃ)”}”(hhh]”(hÈ)”}”(hŒRadio Frequency”h]”hŒRadio Frequency”…””}”(hj}hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÇhjzhžhhŸh³h KMubhé)”}”(hX¡To get and set the tuner or modulator radio frequency applications use the :ref:`VIDIOC_G_FREQUENCY ` and :ref:`VIDIOC_S_FREQUENCY ` ioctl which both take a pointer to a struct :c:type:`v4l2_frequency`. These ioctls are used for TV and radio devices alike. Drivers must support both ioctls when the tuner or modulator ioctls are supported, or when the device is a radio device.”h]”(hŒKTo get and set the tuner or modulator radio frequency applications use the ”…””}”(hj‹hžhhŸNh Nubh)”}”(hŒ.:ref:`VIDIOC_G_FREQUENCY `”h]”j2)”}”(hj•h]”hŒVIDIOC_G_FREQUENCY”…””}”(hj—hžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hj“ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j¡Œreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj'Œvidioc_g_frequency”uh1hhŸh³h KOhj‹ubhŒ and ”…””}”(hj‹hžhhŸNh Nubh)”}”(hŒ.:ref:`VIDIOC_S_FREQUENCY `”h]”j2)”}”(hj¹h]”hŒVIDIOC_S_FREQUENCY”…””}”(hj»hžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j1hj·ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jÅŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj'Œvidioc_g_frequency”uh1hhŸh³h KOhj‹ubhŒ- ioctl which both take a pointer to a struct ”…””}”(hj‹hžhhŸNh Nubh)”}”(hŒ:c:type:`v4l2_frequency`”h]”hó)”}”(hjÝh]”hŒv4l2_frequency”…””}”(hjßhžhhŸNh Nubah}”(h]”h ]”(jjŒc-type”eh"]”h$]”h&]”uh1hòhjÛubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j'Œv4l2_frequency”uh1hhŸh³h KOhj‹ubhŒ°. These ioctls are used for TV and radio devices alike. Drivers must support both ioctls when the tuner or modulator ioctls are supported, or when the device is a radio device.”…””}”(hj‹hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hèhŸh³h KOhjzhžhubeh}”(h]”Œradio-frequency”ah ]”h"]”Œradio frequency”ah$]”h&]”uh1hÂhhÄhžhhŸh³h KMubeh}”(h]”(Œtuners-and-modulators”hÁeh ]”h"]”(Œtuners and modulators”Œtuner”eh$]”h&]”uh1hÂhhhžhhŸh³h KŒexpect_referenced_by_name”}”jh¶sŒexpect_referenced_by_id”}”hÁh¶subeh}”(h]”h ]”h"]”h$]”h&]”Œsource”h³uh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)”}”(hÇNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”j<Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”h³Œ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”hÁ]”h¶asŒnameids”}”(jhÁjjjÀj½jwjtj juŒ nametypes”}”(jˆj‰jÀ‰jw‰j ‰uh}”(hÁhÄjhÄj½h×jtjÃjjzuŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”hŒsystem_message”“”)”}”(hhh]”hé)”}”(hhh]”hŒ+Hyperlink target "tuner" is not referenced.”…””}”hj¦sbah}”(h]”h ]”h"]”h$]”h&]”uh1hèhj£ubah}”(h]”h ]”h"]”h$]”h&]”Œlevel”KŒtype”ŒINFO”Œsource”h³Œline”Kuh1j¡ubaŒ transformer”NŒ include_log”]”Œ decoration”Nhžhub.