Skip to main content

MxDataInput

VideoEncodeConfig类

参数名类型说明
widthint编码后视频帧数据的宽,默认值:1920,必须与待编码图片的宽(original_width)一致。
- Atlas 200I/500 A2 推理产品,取值范围:[128, 1920],输入的视频宽需要对齐16。
heightint编码后视频帧数据的高,默认值:1080,必须与待编码图片的高(original_height)一致。
- Atlas 200I/500 A2 推理产品,取值范围:[128, 1920],输入的视频高需要对齐2。
outputVideoFormatStreamFormat枚举类编码后输出的视频格式,默认值为:base.h264_main_level。
inputImageFormatimage_format枚举类输入的图像格式,只支持base.nv12、base.nv21两种格式,默认值为:base.nv12。
keyFrameIntervalint视频I帧间隔大小,默认为30,取值范围[1, 2000]。
srcRateint输入码流帧率,单位fps,默认为30。
- Atlas 200I/500 A2 推理产品,取值范围:[1, 120]。
rcModeint指定码率控制模式,默认值为0,取值如下:
- 0:默认模式,Atlas 200I/500 A2 推理产品默认为CBR模式。
- 1:变码率VBR模式。
- 2:定码率CBR模式。
maxBitRateint输出码率,单位kbps,默认值为300。
- Atlas 200I/500 A2 推理产品,取值范围:[10, 30000]。
ipPropint一个GOP内单个I帧bit数和单个P帧bit数的比例,默认值为70,取值范围[1, 100]。

推荐配置

以下为视频采集场景下推荐的参数配置,可以保证较好的视频编码质量,其他场景下请根据实际应用对应调整。

画质/分辨率srcRatekeyFrameIntervalmaxBitRate
4K 3840 * 2160/4096 * 216025或3050或60- H.264: 8000 ~ 12000
- H.265: 8000 ~ 12000
2K 2560 * 144025或3050或60- H.264: 6000 ~ 10000
- H.265: 6000 ~ 10000
1080P(蓝光) 1920 * 108025或3050或60- H.264: 20006000
- H.265: 1000
4000
720P(高清) 1280 * 72025或3050或60- H.264: 10003000
- H.265: 800
2000
480P/D1_N(标清) 854 * 480/720 * 48025或3050或60- H.264: 6001400
- H.265: 300
700
576P/D1 (标清) 720 * 57625或3050或60- H.264: 6001400
- H.265: 300
700
270P(流畅) 480 * 27025或3050或60-
CIF P/N 352 * 288/320 * 24025或3050或60- H.264: 250
- H.265: 250

父主题: 通用枚举类型/数据类

RoiBox

功能

裁剪框的定义。

结构定义

class RoiBox:
def __init__(self):
self.x0 = None
self.y0 = None
self.x1 = None
self.y1 = None

参数说明

参数名类型说明
x0float左上角横坐标。
y0float左上角纵坐标。
x1float右下角横坐标。
y1float右下角纵坐标。

父主题: 流程编排数据类

RoiBoxVector

功能

RoiBox的Vector类,实现了Vector的通用操作。

结构定义

由swig生成,仅展示部分业务相关接口,具体请参考“StreamManagerApi.py”。

class RoiBoxVector:
def push_back(self, x):
pass
def pop_back(self):
pass
def pop(self):
pass

父主题: 流程编排数据类

MxDataInput

功能

Stream接收的数据结构定义。

结构定义

class MxDataInput :
def __init__(self):
self.data = None
self.fragmentId = None
self.customParam = None
self.roiBoxs = list() # list

参数说明

参数名类型说明
databytes图像数据。
fragmentIdint分块ID,保留参数。
customParambytes自定义的参数,保留参数。
roiBoxsRoiBoxVector裁剪框坐标数组。

父主题: 流程编排数据类

MxDataOutput

功能

推理业务输出数据定义。

结构定义

class MxDataOutput:
def __init__(self):
self.errorCode = None
self.data = None

参数说明

参数名类型说明
errorCodeint输出错误码。
databytes输出结果数据。

父主题: 流程编排数据类

MxProtobufIn

功能

推理业务输入protobuf数据定义。

结构定义

class MxProtobufIn:
def __init__(self):
self.key= None
self.type= None
self.protobuf= None

参数说明

参数名类型说明
keybytes输入protobuf的key。
typebytes输入protobuf数据的类型。
protobufbytes输入protobuf的value数据,需要反序列化为与类型对应的数据。

父主题: 流程编排数据类

MxProtobufOut

功能

推理业务输出数据定义。

结构定义

class MxProtobufOut:
def __init__(self):
self.errorCode = None
self.messageName= None
self.messageBuf= None

参数说明

参数名类型说明
errorCodeint输出错误码。
messageNamebytes输出protobuf数据的key。
messageBufbytes输出protobuf数据的value,需要反序列化为与类型对应的数据。

父主题: 流程编排数据类

在线提单