昇腾社区首页
中文
注册

VideoDecodeConfig类

表1 保存视频解码的类

参数名

类型

说明

width

int

视频解码缓冲区的宽,取值范围:[128, 4096],默认值:1920,必须为偶数。并且会自动对齐到 16 (向上对齐)。

请用户根据实际的视频帧数据进行适当设置,需大于或等于实际的视频帧数据宽,否则会无解码输出,设置过大将会产生多余的内存资源开销。

height

int

视频解码缓冲区的高,取值范围:[128, 4096],默认值:1080,必须输入偶数。

请用户根据实际的视频帧数据进行适当设置,需大于或等于实际的视频帧数据高,否则会无解码输出,设置过大将会产生多余的内存资源开销。

inputVideoFormat

StreamFormat枚举类

输入的视频格式,H.264格式视频支持base.h264_baseline_level、base.h264_main_level、base.h264_high_level三种格式,H.265格式视频只支持base.h265_main_level格式。默认值为:base.h264_main_level。

outputImageFormat

image_format枚举类

解码后输出的图像格式,默认值为:base.nv12。

  • Atlas 200I/500 A2 推理产品环境只支持base.nv12、base.nv21两种格式。

skipInterval

int

视频解码的跳帧参数,取值范围:[0, 250],默认值:0。

cscMatrix

int

色域转换选项,默认值为“0”(即HI_CSC_MATRIX_BT601_WIDE)。

  • HI_CSC_MATRIX_BT601_WIDE = 0,基于BT601 wide标准的色域转换矩阵,各参数值参考如下。
    # YUV转RGB:
    # | R |   | 1.000  0.000   1.402 |   | Y - 0 |
    # | G | = | 1.000 -0.344  -0.714 | * | U - 128 | 
    # | B |   | 1.000  1.772   0.000 |   | V - 128 |
    # RGB转YUV:
    # | Y |   |-0.5  |   |  0.299  0.587  0.114  |   | R |        
    # | U | = |127.5 | + | -0.168 -0.331  0.500  | * | G | 
    # | V |   |127.5 |   |  0.500 -0.419  -0.081 |   | B | 
  • HI_CSC_MATRIX_BT601_NARROW =1,基于BT601 narrow标准的色域转换矩阵,各参数值参考如下。
    # YUV转RGB:
    # | R |   | 1.16438  0.00000   1.59602 |   | Y - 16 |
    # | G | = | 1.16438 -0.39176  -0.81297 | * | U - 128 | 
    # | B |   | 1.16438  2.01723   0.00000 |   | V - 128 |
    # RGB转YUV:
    # | Y |   |16 |   |  0.25679  0.51564  0.10014 |   | R |        
    # | U | = |128| + | -0.14491 -0.29099  0.43922 | * | G | 
    # | V |   |128|   |  0.42941 -0.36779 -0.07143 |   | B | 
  • HI_CSC_MATRIX_BT709_WIDE =2,基于BT709 wide标准的色域转换矩阵,各参数值参考如下。
    # YUV转RGB:
    # | R |   | 1.00000  0.00000   1.57480 |   | Y - 0 |
    # | G | = | 1.00000 -0.18732  -0.46812 | * | U - 128 | 
    # | B |   | 1.00000  1.85560   0.00000 |   | V - 128 |
    # RGB转YUV:
    # | Y |   |0  |   |  0.21260  0.71520  0.07220 |   | R |        
    # | U | = |128| + | -0.11457 -0.38543  0.50000 | * | G | 
    # | V |   |128|   |  0.50000 -0.45415 -0.04585 |   | B | 
  • HI_CSC_MATRIX_BT709_NARROW =3,基于BT709 narrow标准的色域转换矩阵,各参数值参考如下。
    # YUV转RGB:
    # | R |   | 1.16438  0.00000   1.79274 |   | Y - 16 |
    # | G | = | 1.16438 -0.21325  -0.53291 | * | U - 128 | 
    # | B |   | 1.16438  2.11240   0.00000 |   | V - 128 |
    # RGB转YUV:
    # | Y |   |16 |   |  0.18259  0.62825  0.06342 |   | R |        
    # | U | = |128| + | -0.09840 -0.33857  0.43922 | * | G | 
    # | V |   |128|   |  0.42941 -0.39894 -0.04027 |   | B | 
  • HI_CSC_MATRIX_BT2020_WIDE =4,基于BT2020 wide标准的色域转换矩阵,各参数值参考如下。
    # YUV转RGB:
    # | R |   | 1.00000  0.00000   1.47460 |   | Y - 0 |
    # | G | = | 1.00000 -0.16455  -0.57135 | * | U - 128 | 
    # | B |   | 1.00000  1.88140   0.00000 |   | V - 128 |
    # RGB转YUV:
    # | Y |   |0  |   |  0.26270  0.67800  0.05930 |   | R |        
    # | U | = |128| + | -0.13963 -0.36037  0.50000 | * | G | 
    # | V |   |128|   |  0.50000 -0.45979 -0.04021 |   | B | 
  • HI_CSC_MATRIX_BT2020_NARROW =5,基于BT2020 narrow标准的色域转换矩阵,各参数值参考如下。
    # YUV转RGB:
    # | R |   | 1.16438  0.00000   1.67868 |   | Y - 16 |
    # | G | = | 1.16438 -0.18733  -0.65042 | * | U - 128 | 
    # | B |   | 1.16438  2.14177   0.00000 |   | V - 128 |
    # RGB转YUV:
    # | Y |   |16 |   |  0.22564  0.59558  0.05209 |   | R |        
    # | U | = |128| + | -0.11992 -0.31656  0.43922 | * | G | 
    # | V |   |128|   |  0.42941 -0.40389 -0.03533 |   | B |