213adee887
Introduce a dedicated streamer-side recording control plane instead of sharing the producer recorder API. - register streamer-owned recorder endpoints as a NATS micro service - add explicit MP4 and MCAP recorder control protobufs and subject helpers - wire recorder lifecycle handling into the pipeline runtime - add MP4 writer and depth-alignment support files used by the new recording flow
89 lines
1.7 KiB
Protocol Buffer
89 lines
1.7 KiB
Protocol Buffer
syntax = "proto3";
|
|
package cvmmap_streamer.proto;
|
|
option cc_enable_arenas = true;
|
|
|
|
enum RpcCode {
|
|
RPC_CODE_OK = 0;
|
|
RPC_CODE_INVALID_REQUEST = 1;
|
|
RPC_CODE_UNSUPPORTED = 2;
|
|
RPC_CODE_BUSY = 3;
|
|
RPC_CODE_INTERNAL = 4;
|
|
}
|
|
|
|
message Mp4RecorderState {
|
|
bool can_record = 1;
|
|
bool is_recording = 2;
|
|
bool last_frame_ok = 3;
|
|
uint32 frames_ingested = 4;
|
|
uint32 frames_encoded = 5;
|
|
string active_path = 6;
|
|
string error_message = 7;
|
|
}
|
|
|
|
message Mp4StartRequest {
|
|
string output_path = 1;
|
|
}
|
|
|
|
message Mp4StartResponse {
|
|
RpcCode code = 1;
|
|
string error_message = 2;
|
|
Mp4RecorderState state = 3;
|
|
}
|
|
|
|
message Mp4StopRequest {}
|
|
|
|
message Mp4StopResponse {
|
|
RpcCode code = 1;
|
|
string error_message = 2;
|
|
Mp4RecorderState state = 3;
|
|
}
|
|
|
|
message Mp4StatusRequest {}
|
|
|
|
message Mp4StatusResponse {
|
|
RpcCode code = 1;
|
|
string error_message = 2;
|
|
Mp4RecorderState state = 3;
|
|
}
|
|
|
|
message McapRecorderState {
|
|
bool can_record = 1;
|
|
bool is_recording = 2;
|
|
bool last_frame_ok = 3;
|
|
uint32 frames_ingested = 4;
|
|
uint32 frames_encoded = 5;
|
|
string active_path = 6;
|
|
string error_message = 7;
|
|
}
|
|
|
|
message McapStartRequest {
|
|
string output_path = 1;
|
|
optional string compression = 2;
|
|
optional string topic = 3;
|
|
optional string depth_topic = 4;
|
|
optional string body_topic = 5;
|
|
optional string frame_id = 6;
|
|
}
|
|
|
|
message McapStartResponse {
|
|
RpcCode code = 1;
|
|
string error_message = 2;
|
|
McapRecorderState state = 3;
|
|
}
|
|
|
|
message McapStopRequest {}
|
|
|
|
message McapStopResponse {
|
|
RpcCode code = 1;
|
|
string error_message = 2;
|
|
McapRecorderState state = 3;
|
|
}
|
|
|
|
message McapStatusRequest {}
|
|
|
|
message McapStatusResponse {
|
|
RpcCode code = 1;
|
|
string error_message = 2;
|
|
McapRecorderState state = 3;
|
|
}
|