cmvr-es/protos/cmvr/config/camera_config/camera_config.proto

139 lines
2.8 KiB
Protocol Buffer

// camera_config.proto - 所有配置都在这里
syntax = "proto3";
package cmvr.config;
// 枚举定义
enum CameraMode {
CAMERA_MODE_PHOTO = 0;
CAMERA_MODE_VIDEO = 1;
}
enum StreamMode {
STREAM_MODE_RGB = 0;
STREAM_MODE_RGBD = 1;
STREAM_MODE_DEPTH = 2;
}
enum AlignMode {
ALIGN_MODE_COLOR = 0;
ALIGN_MODE_DEPTH = 1;
}
message CameraCaptureConfig {
int32 width = 1;
int32 height = 2;
int32 fps = 3;
StreamMode stream_mode = 4;
}
message CameraRenderConfig {
int32 width = 1;
int32 height = 2;
int32 fps = 3;
StreamMode stream_mode = 4;
}
message CameraEncoderConfig {
int32 width = 1;
int32 height = 2;
int32 fps = 3;
string codec = 4;
bool enable_stream_timestamp = 5;
int32 buffer_size = 6;
}
message MujocoViewerPipConfig {
bool enable = 1;
int32 left = 2;
int32 bottom = 3;
int32 width = 4;
int32 height = 5;
}
// RealSense摄像头
message RealSenseCameraConfig {
string id = 1;
string serialNumber = 2;
CameraMode camera_mode = 3;
CameraCaptureConfig capture = 4;
CameraEncoderConfig encoder = 5;
AlignMode align_mode = 6;
bool sync = 7;
}
// UVC摄像头
message UVCCameraConfig {
string id = 1;
string usb = 2; // 或者叫 device_path
CameraMode camera_mode = 3;
CameraCaptureConfig capture = 4;
CameraEncoderConfig encoder = 5;
}
// MechMind工业相机
message MechMindCameraConfig {
reserved 5;
string id = 1;
string ip = 2;
optional bool align = 3;
string image2d_type = 4;
}
message MujocoCameraConfig {
string id = 1;
string world_id = 2;
string camera_name = 3;
CameraRenderConfig render = 4;
CameraEncoderConfig encoder = 5;
bool consume_new_frame_only = 6;
MujocoViewerPipConfig viewer_pip = 7;
}
message HikvisionCameraConfig {
string id = 1;
string ip = 2;
int32 port = 3;
string username = 4;
string password = 5;
int32 channel = 6;
int32 stream_type = 7;
int32 link_mode = 8;
int32 width = 9;
int32 height = 10;
int32 fps = 11;
string codec = 12;
CameraMode camera_mode = 13;
StreamMode stream_mode = 14;
int32 buffer_size = 15;
int32 encode_width = 16;
int32 encode_height = 17;
string sdk_path = 18;
float fx = 19;
float fy = 20;
float cx = 21;
float cy = 22;
repeated float coeffs = 23;
}
message CameraDeviceConfig {
string id = 1;
reserved 2;
oneof backend {
UVCCameraConfig uvc = 10;
RealSenseCameraConfig realsense = 11;
MechMindCameraConfig mechmind = 12;
MujocoCameraConfig mujoco = 13;
HikvisionCameraConfig hikvision = 14;
}
}
message CameraConfig {
repeated CameraDeviceConfig cameras = 1;
}
message CameraRootConfig {
CameraConfig camera = 1;
}