Updated: October 28, 2024 |
Retrieve the configurable rotation angles supported for the encoded video produced by the camera
#include <camera/camera_api.h>
camera_error_t camera_get_video_rotations(camera_handle_t handle, camera_frametype_t frametype, int numasked, int *numsupported, uint32_t *rotations, bool *nonsquare)
Typical rotations are multiples of 90 degrees (called square rotations), such as 0, 90, 180, and 270. For cameras that support only square rotations, a value of false will be returned in the nonsquare argument.
The values that you retrieve using this function can be written to the CAMERA_IMGPROP_ROTATION property using the camera_set_video_property() function.
Ensure that the rotations argument points to an array that has at least numasked elements allocated. To determine an appropriate size for this array, you can invoke this function in presizing mode by setting the numasked argument to 0 or the rotations argument to NULL. The function then returns, in the numsupported argument, the maximum array size required. You can then allocate an array of this size, store its address in rotations, and invoke the function again with numasked set to that previous numsupported value.
CAMERA_EOK when the function successfully completes, otherwise another camera_error_t value that provides the reason that the call failed.