€•²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”‰Œ c:parent_key”Œsphinx.domains.c”Œ LookupKey”“”)”}”Œdata”]”j(Œ ASTIdentifier”“”)”}”Œ identifier”ŒV4L”sbN†”asbŒ reftarget”Œ v4l2_input”uh1hhŸh³h KhhêubhŒ returned by the ”…””}”(hhêhžhhŸNh Nubh)”}”(hŒ:ref:`VIDIOC_ENUMINPUT`”h]”hŒinline”“”)”}”(hj>h]”hŒVIDIOC_ENUMINPUT”…””}”(hjBhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hj<ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jLŒreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj6Œvidioc_enuminput”uh1hhŸh³h KhhêubhŒ ioctl is set to ”…””}”(hhêhžhhŸNh Nubhó)”}”(hŒ``V4L2_INPUT_TYPE_TUNER``”h]”hŒV4L2_INPUT_TYPE_TUNER”…””}”(hjbhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hòhhêubhŒ and its ”…””}”(hhêhžhhŸNh Nubhó)”}”(hŒ ``tuner``”h]”hŒtuner”…””}”(hjthž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 Khh×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]”jA)”}”(hj¤h]”hŒVIDIOC_G_TUNER”…””}”(hj¦hžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hj¢ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j°Œreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj6Œvidioc_g_tuner”uh1hhŸh³h KhjšubhŒ and ”…””}”(hjšhžhhŸNh Nubh)”}”(hŒ&:ref:`VIDIOC_S_TUNER `”h]”jA)”}”(hjÈh]”hŒVIDIOC_S_TUNER”…””}”(hjÊhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hjÆubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jÔŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj6Œ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'j+j6Œ v4l2_tuner”uh1hhŸh³h KhjšubhŒ returned by ”…””}”(hjšhžhhŸNh Nubh)”}”(hŒ&:ref:`VIDIOC_G_TUNER `”h]”jA)”}”(hjh]”hŒVIDIOC_G_TUNER”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hj ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj6Œ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]”jA)”}”(hjCh]”hŒVIDIOC_S_TUNER”…””}”(hjEhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hjAubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jOŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj6Œ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”…””}”(hjehž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ó)”}”(hjyh]”hŒv4l2_capability”…””}”(hj{hžhhŸNh Nubah}”(h]”h ]”(jjŒc-type”eh"]”h$]”h&]”uh1hòhjwubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j'j+j6Œv4l2_capability”uh1hhŸh³h K"hj=ubhŒ returned by the ”…””}”(hj=hžhhŸNh Nubh)”}”(hŒ:ref:`VIDIOC_QUERYCAP`”h]”jA)”}”(hjœh]”hŒVIDIOC_QUERYCAP”…””}”(hjžhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hjšubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j¨Œreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj6Œ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"hj9ubah}”(h]”h ]”h"]”h$]”h&]”uh1j7hh×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”…””}”(hjhž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'j+j6Œ v4l2_output”uh1hhŸh³h K-hjãubhŒ returned by the ”…””}”(hjãhžhhŸNh Nubh)”}”(hŒ:ref:`VIDIOC_ENUMOUTPUT`”h]”jA)”}”(hj"h]”hŒVIDIOC_ENUMOUTPUT”…””}”(hj$hžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hj ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j.Œreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj6Œ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”…””}”(hjDhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hòhjãubhŒ and its ”…””}”(hjãhžhhŸNh Nubhó)”}”(hŒ ``modulator``”h]”hŒ modulator”…””}”(hjVhž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.”…””}”(hjnhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hèhŸh³h K7hjÒ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 ”…””}”(hj|hžhhŸNh Nubh)”}”(hŒ.:ref:`VIDIOC_S_FREQUENCY `”h]”jA)”}”(hj†h]”hŒVIDIOC_S_FREQUENCY”…””}”(hjˆhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hj„ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j’Œreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj6Œvidioc_g_frequency”uh1hhŸh³h K:hj|ubhŒT ioctl where you cannot specify whether the frequency is for a tuner or a modulator.”…””}”(hj|hžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hèhŸh³h K:hjÒ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]”jA)”}”(hj¸h]”hŒVIDIOC_G_MODULATOR”…””}”(hjºhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hj¶ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jÄŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj6Œvidioc_g_modulator”uh1hhŸh³h KAhj®ubhŒ and ”…””}”(hj®hžhhŸNh Nubh)”}”(hŒ.:ref:`VIDIOC_S_MODULATOR `”h]”jA)”}”(hjÜh]”hŒVIDIOC_S_MODULATOR”…””}”(hjÞhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hjÚubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jèŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj6Œvidioc_g_modulator”uh1hhŸh³h KAhj®ubhŒ ioctl. Note that ”…””}”(hj®hžhhŸNh Nubh)”}”(hŒ.:ref:`VIDIOC_S_MODULATOR `”h]”jA)”}”(hjh]”hŒVIDIOC_S_MODULATOR”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hjþubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j Œreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj6Œvidioc_g_modulator”uh1hhŸh³h KAhj®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”…””}”(hj"hž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ó)”}”(hj6h]”hŒv4l2_capability”…””}”(hj8hžhhŸNh Nubah}”(h]”h ]”(jjŒc-type”eh"]”h$]”h&]”uh1hòhj4ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j'j+j6Œv4l2_capability”uh1hhŸh³h KAhj®ubhŒ returned by the ”…””}”(hj®hžhhŸNh Nubh)”}”(hŒ:ref:`VIDIOC_QUERYCAP`”h]”jA)”}”(hjYh]”hŒVIDIOC_QUERYCAP”…””}”(hj[hžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hjWubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jeŒreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj6Œvidioc_querycap”uh1hhŸh³h KAhj®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 KAhjÒ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Çhj‰hžhhŸh³h KNubhé)”}”(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]”jA)”}”(hj¤h]”hŒVIDIOC_G_FREQUENCY”…””}”(hj¦hžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hj¢ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”j°Œreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj6Œvidioc_g_frequency”uh1hhŸh³h KPhjšubhŒ and ”…””}”(hjšhžhhŸNh Nubh)”}”(hŒ.:ref:`VIDIOC_S_FREQUENCY `”h]”jA)”}”(hjÈh]”hŒVIDIOC_S_FREQUENCY”…””}”(hjÊhžhhŸNh Nubah}”(h]”h ]”(jŒstd”Œstd-ref”eh"]”h$]”h&]”uh1j@hjÆubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”j!Œ refdomain”jÔŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆj6Œvidioc_g_frequency”uh1hhŸh³h KPhjš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'j+j6Œv4l2_frequency”uh1hhŸh³h KPhjš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 KPhj‰hžhubeh}”(h]”Œradio-frequency”ah ]”h"]”Œradio frequency”ah$]”h&]”uh1hÂhhÄhžhhŸh³h KNubeh}”(h]”(Œtuners-and-modulators”hÁeh ]”h"]”(Œtuners and modulators”Œtuner”eh$]”h&]”uh1hÂhhhžhhŸh³h KŒexpect_referenced_by_name”}”j!h¶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”jKŒ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”}”(j!hÁj jjÏjÌj†jƒjjuŒ nametypes”}”(j!ˆj ‰jωj†‰j‰uh}”(hÁhÄjhÄjÌh×jƒjÒjj‰uŒ 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.