-
Notifications
You must be signed in to change notification settings - Fork 94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
support multi video stream info and add camera cap flags #330
base: main
Are you sure you want to change the base?
Conversation
The pull request to MAVSDK will come soon |
* unify the camera and camera server stream info; * support multi camera video stream info; * add camera video stream id in camera proto VideoStreamInfo message;
5b15f81
to
a257e2d
Compare
* make the camera information same define as camera server information
enum CameraCapFlags { | ||
CAMERA_CAP_FLAGS_CAPTURE_VIDEO = 0; // Camera is able to record video | ||
CAMERA_CAP_FLAGS_CAPTURE_IMAGE = 1; // Camera is able to capture images | ||
CAMERA_CAP_FLAGS_HAS_MODES = | ||
2; // Camera has separate Video and Image/Photo modes | ||
// (MAV_CMD_SET_CAMERA_MODE) | ||
CAMERA_CAP_FLAGS_CAN_CAPTURE_IMAGE_IN_VIDEO_MODE = | ||
3; // Camera can capture images while in video mode | ||
CAMERA_CAP_FLAGS_CAN_CAPTURE_VIDEO_IN_IMAGE_MODE = | ||
4; // Camera can capture videos while in Photo/Image mode | ||
CAMERA_CAP_FLAGS_HAS_IMAGE_SURVEY_MODE = | ||
5; // Camera has image survey mode (MAV_CMD_SET_CAMERA_MODE) | ||
CAMERA_CAP_FLAGS_HAS_BASIC_ZOOM = | ||
6; // Camera has basic zoom control (MAV_CMD_SET_CAMERA_ZOOM) | ||
CAMERA_CAP_FLAGS_HAS_BASIC_FOCUS = | ||
7; // Camera has basic focus control (MAV_CMD_SET_CAMERA_FOCUS) | ||
CAMERA_CAP_FLAGS_HAS_VIDEO_STREAM = | ||
8; // Camera has video streaming capabilities (request | ||
// VIDEO_STREAM_INFORMATION with MAV_CMD_REQUEST_MESSAGE for | ||
// video streaming info) | ||
CAMERA_CAP_FLAGS_HAS_TRACKING_POINT = | ||
9; // Camera supports tracking of a point on the camera view. | ||
CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE = | ||
10; // Camera supports tracking of a selection rectangle on the | ||
// camera view. | ||
CAMERA_CAP_FLAGS_HAS_TRACKING_GEO_STATUS = | ||
11; // Camera supports tracking geo status | ||
// (CAMERA_TRACKING_GEO_STATUS). | ||
}; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The capture flags should only be internally used. They should not be visible to the user. And if we need to expose specific ones, then they have to just be boolean flags.
uint32 definition_file_version = | ||
10; // Camera definition file version (iteration) | ||
string definition_file_uri = | ||
11; // Camera definition URI (http or mavlink ftp) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is also only to be used internally.
@@ -190,7 +190,7 @@ message ModeResponse { | |||
|
|||
message SubscribeVideoStreamInfoRequest {} | |||
message VideoStreamInfoResponse { | |||
VideoStreamInfo video_stream_info = 1; // Video stream info | |||
repeated VideoStreamInfo video_stream_infos = 1; // Video stream infos |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How does this work when it's repeated? Do you get multiple video stream infos, one per video stream?
This PR contain the following features: