← Documents Documentation/userspace-api/media/drivers/aspeed-video.rst GitHub 원문 ↗

Linux 6.18.37 · Userspace API / Media / Drivers

ASPEED video driver

AST2400/2500/2600 Video Engine의 JPEG·AJPG format과 HQ control을 설명합니다.

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

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

1. 요약·해설

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

요약·해설

aspeed-video.rst:1-65

ASPEED Video Engine은 standard JPEG와 proprietary differential AJPG를 제공합니다. HQ mode와 quality control은 proprietary path의 품질·크기 trade-off를 조정합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 .. SPDX-License-Identifier: GPL-2.0
2
3 .. include:: <isonum.txt>
4
5 ASPEED video driver
6 ===================
7
8 ASPEED Video Engine found on AST2400/2500/2600 SoC supports high performance
9 video compressions with a wide range of video quality and compression ratio
10 options. The adopted compressing algorithm is a modified JPEG algorithm.
11
12 There are 2 types of compressions in this IP.
13
14 * JPEG JFIF standard mode: for single frame and management compression
15 * ASPEED proprietary mode: for multi-frame and differential compression.
16 Support 2-pass (high quality) video compression scheme (Patent pending by
17 ASPEED). Provide visually lossless video compression quality or to reduce
18 the network average loading under intranet KVM applications.
19
20 VIDIOC_S_FMT can be used to choose which format you want. V4L2_PIX_FMT_JPEG
21 stands for JPEG JFIF standard mode; V4L2_PIX_FMT_AJPG stands for ASPEED
22 proprietary mode.
23
24 More details on the ASPEED video hardware operations can be found in
25 *chapter 6.2.16 KVM Video Driver* of SDK_User_Guide which available on
26 `github <https://github.com/AspeedTech-BMC/openbmc/releases/>`__.
27
28 The ASPEED video driver implements the following driver-specific control:
29
30 ``V4L2_CID_ASPEED_HQ_MODE``
31 ---------------------------
32 Enable/Disable ASPEED's High quality mode. This is a private control
33 that can be used to enable high quality for aspeed proprietary mode.
34
35 .. flat-table::
36 :header-rows: 0
37 :stub-columns: 0
38 :widths: 1 4
39
40 * - ``(0)``
41 - ASPEED HQ mode is disabled.
42 * - ``(1)``
43 - ASPEED HQ mode is enabled.
44
45 ``V4L2_CID_ASPEED_HQ_JPEG_QUALITY``
46 -----------------------------------
47 Define the quality of ASPEED's High quality mode. This is a private control
48 that can be used to decide compression quality if High quality mode enabled
49 . Higher the value, better the quality and bigger the size.
50
51 .. flat-table::
52 :header-rows: 0
53 :stub-columns: 0
54 :widths: 1 4
55
56 * - ``(1)``
57 - minimum
58 * - ``(12)``
59 - maximum
60 * - ``(1)``
61 - step
62 * - ``(1)``
63 - default
64
65 **Copyright** |copy| 2022 ASPEED Technology Inc.
66

3. 한국어 전문 번역

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

Video Engine과 compression format

1-27

AST2400, AST2500, AST2600 SoC의 ASPEED Video Engine은 폭넓은 video quality와 compression ratio를 선택할 수 있는 고성능 video compression을 지원합니다. 사용하는 알고리즘은 수정된 JPEG 알고리즘입니다.

IP에는 두 compression mode가 있습니다. JPEG JFIF standard mode는 single-frame 및 management compression용이고, ASPEED proprietary mode는 multi-frame 및 differential compression용입니다.

proprietary mode는 ASPEED의 patent pending 2-pass high-quality compression을 지원합니다. intranet KVM에서 시각적으로 lossless에 가까운 품질을 제공하거나 평균 network load를 줄이는 데 사용할 수 있습니다.

`VIDIOC_S_FMT`로 format을 선택합니다. `V4L2_PIX_FMT_JPEG`은 JPEG JFIF standard mode, `V4L2_PIX_FMT_AJPG`는 ASPEED proprietary mode를 뜻합니다.

hardware 동작의 자세한 내용은 ASPEED OpenBMC release에 있는 `SDK_User_Guide`의 chapter 6.2.16, KVM Video Driver를 참고합니다.

ASPEED compression mode
Pixel formatMode용도
V4L2_PIX_FMT_JPEGJPEG JFIF standardsingle frame, management compression
V4L2_PIX_FMT_AJPGASPEED proprietarymulti-frame, differential, 2-pass HQ

V4L2 pixel format이 hardware compression 경로를 선택합니다.

ASPEED format 선택
capture format 준비VIDIOC_S_FMT 호출JPEG이면 JFIF standard pathAJPG이면 proprietary differential path선택한 mode로 frame compression

응용 프로그램의 format 요청이 compression engine mode를 결정합니다.

.. SPDX-License-Identifier: GPL-2.0

.. include:: <isonum.txt>

ASPEED video driver
===================

ASPEED Video Engine found on AST2400/2500/2600 SoC supports high performance
video compressions with a wide range of video quality and compression ratio
options. The adopted compressing algorithm is a modified JPEG algorithm.

There are 2 types of compressions in this IP.

* JPEG JFIF standard mode: for single frame and management compression
* ASPEED proprietary mode: for multi-frame and differential compression.
  Support 2-pass (high quality) video compression scheme (Patent pending by
  ASPEED). Provide visually lossless video compression quality or to reduce
  the network average loading under intranet KVM applications.

VIDIOC_S_FMT can be used to choose which format you want. V4L2_PIX_FMT_JPEG
stands for JPEG JFIF standard mode; V4L2_PIX_FMT_AJPG stands for ASPEED
proprietary mode.

More details on the ASPEED video hardware operations can be found in
*chapter 6.2.16 KVM Video Driver* of SDK_User_Guide which available on
`github <https://github.com/AspeedTech-BMC/openbmc/releases/>`__.

V4L2_CID_ASPEED_HQ_MODE

28-44

ASPEED driver는 driver-specific private control `V4L2_CID_ASPEED_HQ_MODE`를 구현합니다. ASPEED proprietary mode에서 high-quality compression을 켜거나 끕니다.

ASPEED HQ mode
동작
0ASPEED HQ mode disabled
1ASPEED HQ mode enabled

Boolean 값으로 high-quality path를 선택합니다.

The ASPEED video driver implements the following driver-specific control:

``V4L2_CID_ASPEED_HQ_MODE``
---------------------------
    Enable/Disable ASPEED's High quality mode. This is a private control
    that can be used to enable high quality for aspeed proprietary mode.

.. flat-table::
    :header-rows:  0
    :stub-columns: 0
    :widths:       1 4

    * - ``(0)``
      - ASPEED HQ mode is disabled.
    * - ``(1)``
      - ASPEED HQ mode is enabled.

V4L2_CID_ASPEED_HQ_JPEG_QUALITY

45-64

private control `V4L2_CID_ASPEED_HQ_JPEG_QUALITY`은 HQ mode가 켜졌을 때 compression quality를 정합니다. 값이 높을수록 품질이 좋아지고 결과 크기도 커집니다.

HQ JPEG quality 범위
항목설명
Minimum1
Maximum12
Step1
Default1

1부터 12까지 1단계로 조정하며 기본값은 1입니다.

HQ quality trade-off
HQ mode 활성화quality 1–12 선택값 증가visual quality 증가compressed size 증가

control 값은 품질과 전송 크기를 함께 증가시킵니다.

``V4L2_CID_ASPEED_HQ_JPEG_QUALITY``
-----------------------------------
    Define the quality of ASPEED's High quality mode. This is a private control
    that can be used to decide compression quality if High quality mode enabled
    . Higher the value, better the quality and bigger the size.

.. flat-table::
    :header-rows:  0
    :stub-columns: 0
    :widths:       1 4

    * - ``(1)``
      - minimum
    * - ``(12)``
      - maximum
    * - ``(1)``
      - step
    * - ``(1)``
      - default