요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
.. _tuner:
*********************
Tuners and Modulators
*********************
Tuners
======
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.
Radio input devices have exactly one tuner with index zero, no video
inputs.
To query and change tuner properties applications use the
:ref:`VIDIOC_G_TUNER <VIDIOC_G_TUNER>` and
:ref:`VIDIOC_S_TUNER <VIDIOC_G_TUNER>` ioctls, respectively. The
struct :c:type:`v4l2_tuner` returned by :ref:`VIDIOC_G_TUNER <VIDIOC_G_TUNER>`
also contains signal status information applicable when the tuner of the
current video or radio input is queried.
.. note::
:ref:`VIDIOC_S_TUNER <VIDIOC_G_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.
Modulators
==========
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.
Radio output devices have exactly one modulator with index zero, no
video outputs.
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 <VIDIOC_G_FREQUENCY>` ioctl where you
cannot specify whether the frequency is for a tuner or a modulator.
To query and change modulator properties applications use the
:ref:`VIDIOC_G_MODULATOR <VIDIOC_G_MODULATOR>` and
:ref:`VIDIOC_S_MODULATOR <VIDIOC_G_MODULATOR>` ioctl. Note that
:ref:`VIDIOC_S_MODULATOR <VIDIOC_G_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.
Radio Frequency
===============
To get and set the tuner or modulator radio frequency applications use
the :ref:`VIDIOC_G_FREQUENCY <VIDIOC_G_FREQUENCY>` and
:ref:`VIDIOC_S_FREQUENCY <VIDIOC_G_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.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
RF 신호를 복조하는 튜너
1-40비디오 입력 장치는 RF 신호를 복조하는 튜너를 하나 이상 가질 수 있습니다. RF 커넥터 수에 따라 튜너 하나가 여러 비디오 입력과 연결될 수 있으며, `VIDIOC_ENUMINPUT`이 반환한 `v4l2_input.type`은 `V4L2_INPUT_TYPE_TUNER`, `tuner` 필드는 해당 튜너 인덱스가 됩니다. 라디오 입력 장치는 비디오 입력 없이 인덱스 0인 튜너 하나만 가집니다.
`VIDIOC_G_TUNER`와 `VIDIOC_S_TUNER`는 각각 튜너 속성을 조회하고 변경합니다. 현재 비디오 또는 라디오 입력의 튜너를 조회하면 `v4l2_tuner`에 신호 상태도 포함됩니다. `VIDIOC_S_TUNER`는 여러 튜너 사이를 전환하지 않으며 현재 비디오 입력이 튜너를 결정합니다.
튜너가 하나 이상인 드라이버는 두 ioctl을 모두 지원하고 `VIDIOC_QUERYCAP`의 `v4l2_capability`에 `V4L2_CAP_TUNER`를 설정해야 합니다.
.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
.. _tuner:
*********************
Tuners and Modulators
*********************
Tuners
======
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.
Radio input devices have exactly one tuner with index zero, no video
inputs.
To query and change tuner properties applications use the
:ref:`VIDIOC_G_TUNER <VIDIOC_G_TUNER>` and
:ref:`VIDIOC_S_TUNER <VIDIOC_G_TUNER>` ioctls, respectively. The
struct :c:type:`v4l2_tuner` returned by :ref:`VIDIOC_G_TUNER <VIDIOC_G_TUNER>`
also contains signal status information applicable when the tuner of the
current video or radio input is queried.
.. note::
:ref:`VIDIOC_S_TUNER <VIDIOC_G_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.
출력 신호를 RF로 변조하는 변조기
41-75비디오 출력 장치는 송출하거나 TV 또는 비디오 레코더의 안테나 입력에 연결할 비디오 신호를 변조하는 변조기를 하나 이상 가질 수 있습니다. `VIDIOC_ENUMOUTPUT`이 반환한 `v4l2_output.type`은 `V4L2_OUTPUT_TYPE_MODULATOR`, `modulator` 필드는 변조기 인덱스입니다. 라디오 출력 장치는 비디오 출력 없이 인덱스 0인 변조기 하나만 가집니다.
장치 노드 하나는 튜너와 변조기를 동시에 지원할 수 없습니다. `VIDIOC_S_FREQUENCY`에서 주파수가 튜너용인지 변조기용인지 지정할 수 없기 때문이며, 양쪽 기능을 가진 하드웨어는 기능별 장치 노드 두 개를 사용해야 합니다.
`VIDIOC_G_MODULATOR`와 `VIDIOC_S_MODULATOR`는 변조기 속성을 조회하고 변경합니다. 설정 호출은 현재 변조기를 전환하지 않고 현재 비디오 출력이 변조기를 결정합니다. 드라이버는 두 호출을 모두 지원하고 `V4L2_CAP_MODULATOR`를 설정해야 합니다.
Modulators
==========
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.
Radio output devices have exactly one modulator with index zero, no
video outputs.
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 <VIDIOC_G_FREQUENCY>` ioctl where you
cannot specify whether the frequency is for a tuner or a modulator.
To query and change modulator properties applications use the
:ref:`VIDIOC_G_MODULATOR <VIDIOC_G_MODULATOR>` and
:ref:`VIDIOC_S_MODULATOR <VIDIOC_G_MODULATOR>` ioctl. Note that
:ref:`VIDIOC_S_MODULATOR <VIDIOC_G_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.
튜너와 변조기의 RF 주파수
76-85TV와 라디오 장치 모두 `VIDIOC_G_FREQUENCY`와 `VIDIOC_S_FREQUENCY`에 `v4l2_frequency` 포인터를 전달해 튜너 또는 변조기의 RF 주파수를 조회하고 설정합니다. 튜너·변조기 ioctl을 지원하거나 라디오 장치인 드라이버는 두 주파수 ioctl을 모두 구현해야 합니다.
입출력 방향별 구조체와 capability를 정리합니다.
Radio Frequency
===============
To get and set the tuner or modulator radio frequency applications use
the :ref:`VIDIOC_G_FREQUENCY <VIDIOC_G_FREQUENCY>` and
:ref:`VIDIOC_S_FREQUENCY <VIDIOC_G_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.
요약·해설
tuner.rst:1-85튜너·변조기 속성, RF 주파수와 필수 capability를 설명합니다.