1.17. JPEG 控制参考¶
JPEG 类包含用于 JPEG 编码器和解码器常见功能的控制。目前,它包括用于实现具有 Huffman 熵编码的渐进基线 DCT 压缩过程的编解码器的功能。
1.17.1. JPEG 控制 ID¶
V4L2_CID_JPEG_CLASS (类)
JPEG 类描述符。为此控件调用 ioctls VIDIOC_QUERYCTRL、VIDIOC_QUERY_EXT_CTRL 和 VIDIOC_QUERYMENU 将返回此控制类的描述。
V4L2_CID_JPEG_CHROMA_SUBSAMPLING (菜单)
色度子采样因子描述了输入图像的每个分量如何采样,相对于每个空间维度中的最大采样率。有关更多详细信息,请参阅 ITU-T.81,第 A.1.1 条。
V4L2_CID_JPEG_CHROMA_SUBSAMPLING
控制决定了在将输入图像从 RGB 转换为 Y’CbCr 色彩空间后如何对 Cb 和 Cr 分量进行下采样。
|
无色度子采样,每个像素都有 Y、Cr 和 Cb 值。 |
|
水平地将 Cr、Cb 分量以 2 的因子进行子采样。 |
|
水平和垂直地将 Cr、Cb 分量以 2 的因子进行子采样。 |
|
水平地将 Cr、Cb 分量以 4 的因子进行子采样。 |
|
水平地将 Cr、Cb 分量以 4 的因子进行子采样,垂直地以 2 的因子进行子采样。 |
|
仅使用亮度分量。 |
V4L2_CID_JPEG_RESTART_INTERVAL (整数)
重新启动间隔确定插入 RSTm 标记 (m = 0..7) 的间隔。这些标记的目的是另外重新初始化编码器进程,以便独立地处理图像的块。对于有损压缩过程,重新启动间隔单位是 MCU(最小编码单元),其值包含在 DRI(定义重新启动间隔)标记中。如果
V4L2_CID_JPEG_RESTART_INTERVAL
控制设置为 0,则不会插入 DRI 和 RSTm 标记。
V4L2_CID_JPEG_COMPRESSION_QUALITY (整数)
确定图像质量和大小之间的权衡。它为应用程序提供了一种更简单的方法来控制图像质量,而无需直接重新配置亮度和色度量化表。在驱动程序使用由应用程序直接配置的量化表的情况下,使用其他地方定义的接口,驱动程序应将
V4L2_CID_JPEG_COMPRESSION_QUALITY
控制设置为 0。此控件的值范围是特定于驱动程序的。只有正的非零值才有意义。建议范围是 1 - 100,其中较大的值对应于更好的图像质量。
V4L2_CID_JPEG_ACTIVE_MARKER (位掩码)
指定压缩流中包含哪些 JPEG 标记。此控制仅对编码器有效。
|
应用程序数据段 APP0。 |
|
应用程序数据段 APP1。 |
|
注释段。 |
|
量化表段。 |
|
Huffman 表段。 |
有关 JPEG 规范的更多详细信息,请参阅 ITU-T.81、JFIF、W3C JPEG JFIF。