未压缩的 RGB 视频子类型
[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayer、 IMFMediaEngine 和 媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
以下子类型定义没有 alpha 通道的未压缩 RGB 格式。
一直 | 说明 |
---|---|
|
RGB,每像素 1 位 (bpp) ,淡化 |
|
RGB、4 bpp、palettized |
|
RGB,8 bpp,淡化 |
|
RGB 555,16 bpp |
|
RGB 565,16 bpp |
|
RGB,24 bpp |
|
RGB,32 bpp |
以下子类型使用 alpha 通道定义未压缩的 RGB 格式。
一直 | 说明 |
---|---|
|
带 alpha 通道的 RGB 555 |
|
带 alpha 通道的 RGB 32 |
|
具有 alpha 通道的 16 位 RGB;每个通道 4 位 |
|
具有 alpha 通道的 32 位 RGB;每个 RGB 通道 10 位,alpha 为 2 位。 |
|
具有 alpha 通道的 32 位 BGR;每个 BGR 通道 10 位,alpha 为 2 位。 |
备注
对于淡化格式,每个像素的颜色都指定为调色板中的索引。 调色板必须包含在格式块中,遵循 BITMAPINFOHEADER 结构。 对于非淡化格式,直接指定每个像素的颜色;内存布局取决于位深度:
RGB 555 使用以下内存布局:
High-order byte: Low-order byte: X R R R R R G G G G G B B B B B X = Don't care, R = Red, G = Green, B = Blue
RGB 565 使用以下内存布局:
High-order byte: Low-order byte: R R R R R G G G G G G B B B B B
对于 RGB 24,每个像素都是 RGBTRIPLE。 每种颜色都是一个字节,其值介于 0 到 255 之间(包括 0 到 255)。 内存布局为:
Layout Layout Layout Byte 0 1 2 值 蓝色 绿色 Red 对于 RGB 32,每个像素都是 RGBQUAD。 每种颜色都是一个字节,其值介于 0 到 255 之间(包括 0 到 255)。 内存布局为:
Layout Layout Layout Layout Byte 0 1 2 3 值 蓝色 绿色 Red Alpha 或“不在乎” 如果子类型MEDIASUBTYPE_ARGB32,则字节 3 包含 alpha 通道的值。 如果子类型MEDIASUBTYPE_RGB32,则应忽略字节 3。
A2R10G10B10 使用以下布局:
Layout Layout Layout Layout 位 0 - 9 10 - 19 20 - 29 30 - 31 值 蓝色 绿色 Red Alpha A2B10G10R10 使用以下布局:
Layout Layout Layout Layout 位 0 - 9 10 - 19 20 - 29 30 - 31 值 Red 绿色 蓝色 Alpha
要求
要求 | 值 |
---|---|
标头 |
|
另请参阅