← Documents Documentation/userspace-api/media/glossary.rst GitHub 원문 ↗

Linux 6.18.37 · Userspace API / Media / Overview

Media API 용어집

Media userspace API에서 사용하는 hardware, API, bus와 V4L2 용어를 표준화합니다.

Source pathDocumentation/userspace-api/media/glossary.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약·해설

glossary.rst:1-217

용어를 단순 번역어로 치환하기보다 Linux Media 문맥에서 어떤 계층과 capability를 뜻하는지 설명합니다. `V4L2_CAP_IO_MC` 설정 여부가 MC-centric과 video-node-centric을 가르는 핵심 기준입니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 .. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later
2
3 ========
4 Glossary
5 ========
6
7 .. note::
8
9 The goal of this section is to standardize the terms used within the media
10 userspace API documentation. This is Work In Progress.
11
12 .. Please keep the glossary entries in alphabetical order
13
14 .. glossary::
15
16 Bridge Driver
17 A :term:`Device Driver` that implements the main logic to talk with
18 media hardware.
19
20 CEC API
21 **Consumer Electronics Control API**
22
23 An API designed to receive and transmit data via an HDMI
24 CEC interface.
25
26 See :ref:`cec`.
27
28 Data Unit
29
30 Unit of data transported by a bus. On parallel buses, the data unit
31 consists of one or more related samples while on serial buses the data
32 unit is logical. If the data unit is image data, it may also be called a
33 pixel.
34
35 Device Driver
36 Part of the Linux Kernel that implements support for a hardware
37 component.
38
39 Device Node
40 A character device node in the file system used to control and
41 transfer data in and out of a Kernel driver.
42
43 Digital TV API
44 **Previously known as DVB API**
45
46 An API designed to control a subset of the :term:`Media Hardware`
47 that implements digital TV (e. g. DVB, ATSC, ISDB, etc).
48
49 See :ref:`dvbapi`.
50
51 DSP
52 **Digital Signal Processor**
53
54 A specialized :term:`Microprocessor`, with its architecture
55 optimized for the operational needs of digital signal processing.
56
57 FPGA
58 **Field-programmable Gate Array**
59
60 An :term:`IC` circuit designed to be configured by a customer or
61 a designer after manufacturing.
62
63 See https://en.wikipedia.org/wiki/Field-programmable_gate_array.
64
65 Hardware Component
66 A subset of the :term:`Media Hardware`. For example an :term:`I²C` or
67 :term:`SPI` device, or an :term:`IP Block` inside an
68 :term:`SoC` or :term:`FPGA`.
69
70 Hardware Peripheral
71 A group of :term:`hardware components <Hardware Component>` that
72 together make a larger user-facing functional peripheral. For
73 instance, the :term:`SoC` :term:`ISP` :term:`IP Block`
74 and the external camera sensors together make a camera hardware
75 peripheral.
76
77 Also known as :term:`Peripheral`.
78
79 I²C
80 **Inter-Integrated Circuit**
81
82 A multi-master, multi-slave, packet switched, single-ended,
83 serial computer bus used to control some hardware components
84 like sub-device hardware components.
85
86 See http://www.nxp.com/docs/en/user-guide/UM10204.pdf.
87
88 IC
89 **Integrated circuit**
90
91 A set of electronic circuits on one small flat piece of
92 semiconductor material, normally silicon.
93
94 Also known as chip.
95
96 IP Block
97 **Intellectual property core**
98
99 In electronic design a semiconductor intellectual property core,
100 is a reusable unit of logic, cell, or integrated circuit layout
101 design that is the intellectual property of one party.
102 IP Blocks may be licensed to another party or can be owned
103 and used by a single party alone.
104
105 See https://en.wikipedia.org/wiki/Semiconductor_intellectual_property_core).
106
107 ISP
108 **Image Signal Processor**
109
110 A specialized processor that implements a set of algorithms for
111 processing image data. ISPs may implement algorithms for lens
112 shading correction, demosaicing, scaling and pixel format conversion
113 as well as produce statistics for the use of the control
114 algorithms (e.g. automatic exposure, white balance and focus).
115
116 Media API
117 A set of userspace APIs used to control the media hardware. It is
118 composed by:
119
120 - :term:`CEC API`;
121 - :term:`Digital TV API`;
122 - :term:`MC API`;
123 - :term:`RC API`; and
124 - :term:`V4L2 API`.
125
126 See Documentation/userspace-api/media/index.rst.
127
128 MC API
129 **Media Controller API**
130
131 An API designed to expose and control the relationships between
132 multimedia devices and sub-devices.
133
134 See :ref:`media_controller`.
135
136 MC-centric
137 :term:`V4L2 Hardware` device driver that requires :term:`MC API`.
138
139 Such drivers have ``V4L2_CAP_IO_MC`` device_caps field set
140 (see :ref:`VIDIOC_QUERYCAP`).
141
142 See :ref:`v4l2_hardware_control` for more details.
143
144 Media Hardware
145 Subset of the hardware that is supported by the Linux Media API.
146
147 This includes audio and video capture and playback hardware,
148 digital and analog TV, camera sensors, ISPs, remote controllers,
149 codecs, HDMI Consumer Electronics Control, HDMI capture, etc.
150
151 Microprocessor
152 Electronic circuitry that carries out the instructions of a
153 computer program by performing the basic arithmetic, logical,
154 control and input/output (I/O) operations specified by the
155 instructions on a single integrated circuit.
156
157 Peripheral
158 The same as :term:`Hardware Peripheral`.
159
160 RC API
161 **Remote Controller API**
162
163 An API designed to receive and transmit data from remote
164 controllers.
165
166 See :ref:`remote_controllers`.
167
168 SMBus
169 A subset of I²C, which defines a stricter usage of the bus.
170
171 SPI
172 **Serial Peripheral Interface Bus**
173
174 Synchronous serial communication interface specification used for
175 short distance communication, primarily in embedded systems.
176
177 SoC
178 **System on a Chip**
179
180 An integrated circuit that integrates all components of a computer
181 or other electronic systems.
182
183 Stream
184 A distinct flow of data (image data or metadata) from an initial source
185 to a final sink. The initial source may be e.g. an image sensor and the
186 final sink e.g. a memory buffer.
187
188 V4L2 API
189 **V4L2 userspace API**
190
191 The userspace API defined in :ref:`v4l2spec`, which is used to
192 control a V4L2 hardware.
193
194 V4L2 Device Node
195 A :term:`Device Node` that is associated to a V4L driver.
196
197 The V4L2 device node naming is specified at :ref:`v4l2_device_naming`.
198
199 V4L2 Hardware
200 Part of the media hardware which is supported by the :term:`V4L2 API`.
201
202 V4L2 Sub-device
203 V4L2 hardware components that aren't controlled by a
204 :term:`Bridge Driver`. See :ref:`subdev`.
205
206 Video-node-centric
207 V4L2 device driver that doesn't require a media controller to be used.
208
209 Such drivers have the ``V4L2_CAP_IO_MC`` device_caps field unset
210 (see :ref:`VIDIOC_QUERYCAP`).
211
212 V4L2 Sub-device API
213 Part of the :term:`V4L2 API` which control
214 :term:`V4L2 sub-devices <V4L2 Sub-device>`, like sensors,
215 HDMI receivers, scalers, deinterlacers.
216
217 See :ref:`v4l2_hardware_control` for more details.
218

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

용어집의 목적과 정렬 규칙

1-14

이 문서는 `GPL-2.0 OR GFDL-1.1-no-invariants-or-later`로 식별됩니다. 이 절의 목적은 Media userspace API 문서에서 사용하는 용어를 표준화하는 것이며, 현재도 작성 중인 작업입니다.

원문의 관리 주석은 용어집 항목을 알파벳순으로 유지하도록 요구합니다. 아래 번역도 원문의 항목 순서와 상호 참조 이름을 그대로 따릅니다.

Media API 용어 한눈에 보기
원문 용어한국어 정의
Bridge Drivermedia hardware와 통신하는 주 논리를 구현하는 Device Driver
CEC APIHDMI CEC 데이터 송수신 API
Data Unit버스가 운반하는 데이터 단위
Device Driverhardware component 지원을 구현하는 Linux Kernel 구성 요소
Device Nodedriver 제어와 데이터 전송에 쓰는 character device node
Digital TV APIdigital TV hardware 제어 API, 이전 이름은 DVB API
DSPDigital Signal Processor
FPGAField-programmable Gate Array
Hardware ComponentMedia Hardware의 개별 구성 요소
Hardware Peripheral사용자 기능 하나를 이루는 hardware component 집합
I²CInter-Integrated Circuit 직렬 버스
ICIntegrated circuit, 즉 chip
IP Block재사용 가능한 semiconductor intellectual property core
ISPImage Signal Processor
Media APImedia hardware를 제어하는 userspace API 집합
MC APIMedia Controller API
MC-centric사용에 MC API가 필요한 V4L2 driver
Media HardwareLinux Media API가 지원하는 hardware 부분집합
Microprocessor한 IC에서 program instruction을 실행하는 전자 회로
PeripheralHardware Peripheral과 같은 뜻
RC APIRemote Controller API
SMBus더 엄격한 사용 규칙을 정의한 I²C 부분집합
SPISerial Peripheral Interface Bus
SoCSystem on a Chip
Streamsource에서 sink로 흐르는 구별 가능한 데이터 흐름
V4L2 APIV4L2 hardware를 제어하는 userspace API
V4L2 Device NodeV4L driver에 연결된 Device Node
V4L2 HardwareV4L2 API가 지원하는 media hardware 부분
V4L2 Sub-deviceBridge Driver가 직접 제어하지 않는 V4L2 hardware component
Video-node-centric사용에 Media Controller가 필요하지 않은 V4L2 driver
V4L2 Sub-device APIsensor 등의 V4L2 sub-device를 제어하는 V4L2 API 부분

원문 용어와 한국어 핵심 의미를 대응시킵니다. API 이름, capability와 Sphinx 참조 이름은 번역하지 않습니다.

.. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later

========
Glossary
========

.. note::

   The goal of this section is to standardize the terms used within the media
   userspace API documentation. This is Work In Progress.

.. Please keep the glossary entries in alphabetical order

.. glossary::

Bridge Driver부터 Device Node까지

15-42

**Bridge Driver**는 media hardware와 통신하기 위한 주 논리를 구현하는 `Device Driver`입니다.

**CEC API**는 **Consumer Electronics Control API**의 약자입니다. HDMI CEC interface를 통해 데이터를 수신하고 전송하도록 설계되었으며 자세한 내용은 `cec` 참조를 봅니다.

**Data Unit**은 bus가 운반하는 데이터의 단위입니다. Parallel bus에서는 서로 관련된 sample 하나 이상으로 구성되지만 serial bus에서는 논리적인 단위입니다. 이 단위가 image data라면 pixel이라고도 부릅니다.

**Device Driver**는 hardware component 지원을 구현하는 Linux Kernel의 일부입니다. **Device Node**는 Kernel driver를 제어하고 driver 안팎으로 데이터를 전송하는 데 쓰는 file system의 character device node입니다.


    Bridge Driver
	A :term:`Device Driver` that implements the main logic to talk with
	media hardware.

    CEC API
	**Consumer Electronics Control API**

	An API designed to receive and transmit data via an HDMI
	CEC interface.

	See :ref:`cec`.

    Data Unit

	Unit of data transported by a bus. On parallel buses, the data unit
	consists of one or more related samples while on serial buses the data
	unit is logical. If the data unit is image data, it may also be called a
	pixel.

    Device Driver
	Part of the Linux Kernel that implements support for a hardware
	component.

    Device Node
	A character device node in the file system used to control and
	transfer data in and out of a Kernel driver.

Digital TV API, DSP와 FPGA

43-64

**Digital TV API**는 이전에 **DVB API**로 알려졌습니다. DVB, ATSC, ISDB 등을 구현하는 `Media Hardware` 부분집합을 제어하도록 설계된 API이며 자세한 내용은 `dvbapi` 참조에 있습니다.

**DSP**는 **Digital Signal Processor**의 약자입니다. Digital signal processing의 연산 요구에 맞게 architecture를 최적화한 특수 `Microprocessor`입니다.

**FPGA**는 **Field-programmable Gate Array**의 약자입니다. 제조한 뒤 customer나 designer가 구성할 수 있도록 설계된 `IC` 회로입니다.

FPGA에 대한 외부 참고 링크는 원문에 명시된 `https://en.wikipedia.org/wiki/Field-programmable_gate_array`입니다.

    Digital TV API
	**Previously known as DVB API**

	An API designed to control a subset of the :term:`Media Hardware`
	that implements	digital TV (e. g. DVB, ATSC, ISDB, etc).

	See :ref:`dvbapi`.

    DSP
        **Digital Signal Processor**

	A specialized :term:`Microprocessor`, with its architecture
	optimized for the operational needs of digital signal processing.

    FPGA
	**Field-programmable Gate Array**

	An :term:`IC` circuit designed to be configured by a customer or
	a designer after manufacturing.

	See https://en.wikipedia.org/wiki/Field-programmable_gate_array.

Hardware Component부터 IP Block까지

65-106

**Hardware Component**는 `Media Hardware`의 부분집합입니다. 예를 들어 `I²C` 또는 `SPI` device, `SoC`나 `FPGA` 안의 `IP Block`이 여기에 해당합니다.

**Hardware Peripheral**은 여러 `Hardware Component`가 함께 더 큰 사용자 대상 기능을 구성한 집합입니다. 예를 들어 `SoC`의 `ISP` `IP Block`과 외부 camera sensor를 합치면 camera hardware peripheral이 됩니다. **Peripheral**이라고도 부릅니다.

**I²C**는 **Inter-Integrated Circuit**의 약자입니다. Sub-device hardware component 같은 일부 hardware component를 제어하는 데 쓰는 multi-master, multi-slave, packet-switched, single-ended serial computer bus입니다.

I²C 규격 참고 링크는 `http://www.nxp.com/docs/en/user-guide/UM10204.pdf`입니다.

**IC**는 **Integrated circuit**의 약자입니다. 보통 silicon인 작고 평평한 semiconductor material 조각 위에 놓인 electronic circuit의 집합이며 chip이라고도 부릅니다.

**IP Block**은 **Intellectual property core**를 뜻합니다. Electronic design에서 한 당사자의 지식 재산인 재사용 가능한 logic, cell 또는 integrated circuit layout design 단위입니다. 다른 당사자에게 license할 수도 있고 한 당사자가 단독으로 소유하고 사용할 수도 있습니다. 참고 링크는 `https://en.wikipedia.org/wiki/Semiconductor_intellectual_property_core`입니다.

    Hardware Component
	A subset of the :term:`Media Hardware`. For example an :term:`I²C` or
	:term:`SPI` device, or an :term:`IP Block` inside an
	:term:`SoC` or :term:`FPGA`.

    Hardware Peripheral
	A group of :term:`hardware components <Hardware Component>` that
	together make a larger user-facing functional peripheral. For
	instance, the :term:`SoC` :term:`ISP` :term:`IP Block`
	and the external camera sensors together make a camera hardware
	peripheral.

	Also known as :term:`Peripheral`.

    I²C
	**Inter-Integrated Circuit**

	A  multi-master, multi-slave, packet switched, single-ended,
	serial computer bus used to control some hardware components
	like sub-device hardware components.

	See http://www.nxp.com/docs/en/user-guide/UM10204.pdf.

    IC
	**Integrated circuit**

	A set of electronic circuits on one small flat piece of
	semiconductor material, normally silicon.

	Also known as chip.

    IP Block
	**Intellectual property core**

	In electronic design a semiconductor intellectual property core,
	is a reusable unit of logic, cell, or integrated circuit layout
	design that is the intellectual property of one party.
	IP Blocks may be licensed to another party or can be owned
	and used by a single party alone.

	See https://en.wikipedia.org/wiki/Semiconductor_intellectual_property_core).

ISP와 Media API 계층

107-150

**ISP**는 **Image Signal Processor**의 약자입니다. Image data 처리 알고리즘 집합을 구현하는 특수 processor입니다. Lens shading correction, demosaicing, scaling, pixel format conversion을 구현할 수 있고 automatic exposure, white balance, focus 같은 control algorithm이 사용할 statistics도 만들 수 있습니다.

**Media API**는 media hardware를 제어하는 userspace API 집합입니다. `CEC API`, `Digital TV API`, `MC API`, `RC API`, `V4L2 API`의 다섯 부분으로 구성됩니다. 전체 색인은 `Documentation/userspace-api/media/index.rst`입니다.

Media API 구성
CEC APIDigital TV APIMC APIRC APIV4L2 API

Media userspace interface를 이루는 다섯 API를 원문의 순서대로 표시합니다.

**MC API**는 **Media Controller API**의 약자입니다. Multimedia device와 sub-device 사이의 관계를 노출하고 제어하도록 설계되었으며 `media_controller` 참조에서 설명합니다.

**MC-centric**은 `MC API`가 필요한 `V4L2 Hardware` device driver입니다. 이런 driver는 `device_caps` field에 `V4L2_CAP_IO_MC`를 설정합니다. `VIDIOC_QUERYCAP`과 `v4l2_hardware_control` 참조를 함께 봅니다.

**Media Hardware**는 Linux Media API가 지원하는 hardware 부분집합입니다. Audio/video capture와 playback hardware, digital/analog TV, camera sensor, ISP, remote controller, codec, HDMI Consumer Electronics Control, HDMI capture 등이 포함됩니다.

    ISP
	**Image Signal Processor**

	A specialized processor that implements a set of algorithms for
	processing image data. ISPs may implement algorithms for lens
	shading correction, demosaicing, scaling and pixel format conversion
	as well as produce statistics for the use of the control
	algorithms (e.g. automatic exposure, white balance and focus).

    Media API
	A set of userspace APIs used to control the media hardware. It is
	composed by:

	  - :term:`CEC API`;
	  - :term:`Digital TV API`;
	  - :term:`MC API`;
	  - :term:`RC API`; and
	  - :term:`V4L2 API`.

	See Documentation/userspace-api/media/index.rst.

    MC API
	**Media Controller API**

	An API designed to expose and control the relationships between
	multimedia devices and sub-devices.

	See :ref:`media_controller`.

    MC-centric
	:term:`V4L2 Hardware` device driver that requires :term:`MC API`.

	Such drivers have ``V4L2_CAP_IO_MC`` device_caps field set
	(see :ref:`VIDIOC_QUERYCAP`).

	See :ref:`v4l2_hardware_control` for more details.

    Media Hardware
	Subset of the hardware that is supported by the Linux Media API.

	This includes audio and video capture and playback hardware,
	digital and analog TV, camera sensors, ISPs, remote controllers,
	codecs, HDMI Consumer Electronics Control, HDMI capture, etc.

Microprocessor부터 SoC까지

151-182

**Microprocessor**는 한 integrated circuit에서 instruction이 지정한 기본 arithmetic, logical, control, input/output(I/O) operation을 수행하여 computer program의 instruction을 실행하는 electronic circuitry입니다.

**Peripheral**은 `Hardware Peripheral`과 같은 뜻입니다.

**RC API**는 **Remote Controller API**의 약자입니다. Remote controller에서 데이터를 수신하고 remote controller로 데이터를 전송하도록 설계된 API이며 `remote_controllers` 참조에 자세한 내용이 있습니다.

**SMBus**는 bus를 더 엄격하게 사용하는 방법을 정의한 I²C의 부분집합입니다.

**SPI**는 **Serial Peripheral Interface Bus**의 약자입니다. 주로 embedded system에서 짧은 거리의 통신에 사용하는 synchronous serial communication interface 규격입니다.

**SoC**는 **System on a Chip**의 약자입니다. Computer 또는 다른 electronic system의 모든 component를 하나로 통합한 integrated circuit입니다.

    Microprocessor
	Electronic circuitry that carries out the instructions of a
	computer program by performing the basic arithmetic, logical,
	control and input/output (I/O) operations specified by the
	instructions on a single integrated circuit.

    Peripheral
	The same as :term:`Hardware Peripheral`.

    RC API
	**Remote Controller API**

	An API designed to receive and transmit data from remote
	controllers.

	See :ref:`remote_controllers`.

    SMBus
	A subset of I²C, which defines a stricter usage of the bus.

    SPI
	**Serial Peripheral Interface Bus**

	Synchronous serial communication interface specification used for
	short distance communication, primarily in embedded systems.

    SoC
	**System on a Chip**

	An integrated circuit that integrates all components of a computer
	or other electronic systems.

Stream과 V4L2 용어

183-217

**Stream**은 최초 source에서 최종 sink로 이동하는, 서로 구별되는 image data 또는 metadata의 흐름입니다. 최초 source는 image sensor, 최종 sink는 memory buffer일 수 있습니다.

**V4L2 API**는 `v4l2spec`에서 정의하며 V4L2 hardware를 제어하는 userspace API입니다.

**V4L2 Device Node**는 V4L driver와 연결된 `Device Node`입니다. 이름 지정 규칙은 `v4l2_device_naming` 참조에서 정의합니다.

**V4L2 Hardware**는 `V4L2 API`가 지원하는 media hardware 부분입니다.

**V4L2 Sub-device**는 `Bridge Driver`가 제어하지 않는 V4L2 hardware component입니다. 자세한 내용은 `subdev` 참조를 봅니다.

**Video-node-centric**은 사용할 때 Media Controller가 필요하지 않은 V4L2 device driver입니다. 이런 driver는 `device_caps` field의 `V4L2_CAP_IO_MC`를 설정하지 않습니다. Capability 조회는 `VIDIOC_QUERYCAP`을 봅니다.

**V4L2 Sub-device API**는 sensor, HDMI receiver, scaler, deinterlacer 같은 `V4L2 Sub-device`를 제어하는 `V4L2 API` 부분입니다. 자세한 내용은 `v4l2_hardware_control` 참조에 있습니다.

    Stream
	A distinct flow of data (image data or metadata) from an initial source
	to a final sink. The initial source may be e.g. an image sensor and the
	final sink e.g. a memory buffer.

    V4L2 API
	**V4L2 userspace API**

	The userspace API defined in :ref:`v4l2spec`, which is used to
	control a V4L2 hardware.

    V4L2 Device Node
	A :term:`Device Node` that is associated to a V4L driver.

	The V4L2 device node naming is specified at :ref:`v4l2_device_naming`.

    V4L2 Hardware
	Part of the media hardware which is supported by the :term:`V4L2 API`.

    V4L2 Sub-device
	V4L2 hardware components that aren't controlled by a
	:term:`Bridge Driver`. See :ref:`subdev`.

    Video-node-centric
	V4L2 device driver that doesn't require a media controller to be used.

	Such drivers have the ``V4L2_CAP_IO_MC`` device_caps field unset
	(see :ref:`VIDIOC_QUERYCAP`).

    V4L2 Sub-device API
	Part of the :term:`V4L2 API` which control
	:term:`V4L2 sub-devices <V4L2 Sub-device>`, like sensors,
	HDMI receivers, scalers, deinterlacers.

	See :ref:`v4l2_hardware_control` for more details.