Add QSV hardware encoding support to FFmpeg and upgrade to v6.1
This commit is contained in:
parent
e77c2cfea8
commit
e3726e5a98
@ -93,7 +93,7 @@ device_manager {
|
||||
id: "aubo_arm"
|
||||
type: DEVICE_TYPE_ROBOT_ARM
|
||||
config_file: "devices/arm/aubo_arm.pb.txt"
|
||||
enable: false
|
||||
enable: true
|
||||
}
|
||||
|
||||
devices {
|
||||
|
||||
@ -28,7 +28,7 @@ task_manager {
|
||||
run_mode: TASK_RUN_MODE_BLOCKING_SERVICE
|
||||
config_file: "tasks/quic_edge_task/quic_edge_task.pb.txt"
|
||||
# Host-development default: no QUIC Gateway or physical media devices.
|
||||
enable: false
|
||||
enable: true
|
||||
}
|
||||
tasks {
|
||||
id: "ume_teleop"
|
||||
|
||||
@ -3,11 +3,11 @@ quic_edge {
|
||||
|
||||
# Task enablement is controlled by manager/task_manager.pb.txt. Configure a
|
||||
# reachable QUIC Gateway and TLS policy before enabling the task there.
|
||||
server_host: "quic-gateway.example.com"
|
||||
server_host: "192.168.0.222"
|
||||
server_port: 4433
|
||||
alpn: "cmvr-quic-edge/1"
|
||||
node_id: "cmvr-edge"
|
||||
robot_id: "CN-CMVR-MBLRV1-CHAGAN-20260731-001"
|
||||
robot_id: "CN-CMVR-MBLRV1-AIMA-20260806-001"
|
||||
software_version: "0.1"
|
||||
|
||||
# The existing cmvr-es gRPC server remains the robot-control endpoint. "auto"
|
||||
@ -24,10 +24,8 @@ quic_edge {
|
||||
control_response_timeout_ms: 1000
|
||||
|
||||
tls {
|
||||
ca_file: "certs/quic_gateway_ca.pem"
|
||||
certificate_file: "certs/cmvr_edge_cert.pem"
|
||||
private_key_file: "certs/cmvr_edge_key.pem"
|
||||
server_name: "quic-gateway.example.com"
|
||||
ca_file: "certs/cmvr-quic-ca.crt"
|
||||
server_name: "192.168.0.222"
|
||||
allow_insecure: false
|
||||
}
|
||||
|
||||
|
||||
@ -256,17 +256,48 @@ AgvResult SeerRobokitAgv::uploadMap(const std::string& map_name, const std::stri
|
||||
return result.ok() ? resultFromResponse_(response) : result;
|
||||
}
|
||||
|
||||
AgvResult SeerRobokitAgv::downloadMap(const std::string& map_name, std::string& content) const
|
||||
// AgvResult SeerRobokitAgv::downloadMap(const std::string& map_name, std::string& content) const
|
||||
// {
|
||||
// Json::Value payload(Json::objectValue);
|
||||
// jsonMember(payload, "map_name") = map_name;
|
||||
// Json::Value response;
|
||||
// auto result = sendCommand_(sock_config_, kRobotConfigDownloadMap, payload, &response);
|
||||
// if (!result.ok()) return result;
|
||||
// content = jsonGet(response, "map_content", jsonGet(response, "content", "")).asString();
|
||||
// return resultFromResponse_(response);
|
||||
// }
|
||||
|
||||
AgvResult SeerRobokitAgv::downloadMap(
|
||||
const std::string& map_name,
|
||||
std::string& content) const
|
||||
{
|
||||
Json::Value payload(Json::objectValue);
|
||||
jsonMember(payload, "map_name") = map_name;
|
||||
|
||||
Json::Value response;
|
||||
auto result = sendCommand_(sock_config_, kRobotConfigDownloadMap, payload, &response);
|
||||
auto result = sendCommand_(
|
||||
sock_config_,
|
||||
kRobotConfigDownloadMap,
|
||||
payload,
|
||||
&response);
|
||||
if (!result.ok()) return result;
|
||||
content = jsonGet(response, "map_content", jsonGet(response, "content", "")).asString();
|
||||
|
||||
// 4011 失败响应包含 ret_code;成功响应本身就是完整地图 JSON。
|
||||
if (hasNumericControllerRetCode(response)) {
|
||||
return resultFromResponse_(response);
|
||||
}
|
||||
|
||||
content = toJsonString_(response);
|
||||
if (content.empty()) {
|
||||
return AgvResult::failure(
|
||||
AgvErrorCode::CommandFailed,
|
||||
"SEER Robokit downloaded map content is empty");
|
||||
}
|
||||
|
||||
return AgvResult::success();
|
||||
}
|
||||
|
||||
|
||||
AgvResult SeerRobokitAgv::startMapping(const AgvMappingOptions& options)
|
||||
{
|
||||
auto result = ensureOtherSocket_();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user