Classes | |
| struct | ImageSelection |
| This struct provides an interface for user to determine what images to subscribe to. More... | |
Public Types | |
| enum | ReceivedImgDesc { RECV_FRONT_LEFT = 10, RECV_FRONT_RIGHT = 11, RECV_DOWN_BACK = 0, RECV_DOWN_FRONT = 1, RECV_FRONT_DEPTH = 15 } |
| This struct is used to pair img data with camera. | |
| typedef struct DJI::OSDK::AdvancedSensing::ImageSelection | ImageSelection |
| This struct provides an interface for user to determine what images to subscribe to. | |
Public Member Functions | |
| AdvancedSensing (Vehicle *vehiclePtr) | |
| void | init () |
| subscribe to QVGA (240x320) stereo images at 20 fps More... | |
| void | deinit () |
| void | subscribeStereoImages (const ImageSelection *select, VehicleCallBack callback=0, UserData userData=0) |
| subscribe to 240p stereo images at 20 fps More... | |
| void | subscribeFrontStereoVGA (const uint8_t freq, VehicleCallBack callback=0, UserData userData=0) |
| subscribe to VGA (480x640) front stereo images at 10 or 20 fps More... | |
| void | subscribeFrontStereoDisparity (VehicleCallBack callback=0, UserData userData=0) |
| subscribe to QVGA (240x320) stereo depth map at 10 fps More... | |
| void | unsubscribeStereoImages () |
| unsubscribe to QVGA (240x320) stereo depth map or images More... | |
| void | unsubscribeVGAImages () |
| unsubscribe to VGA (480x640) stereo images More... | |
| bool | startFPVCameraStream (CameraImageCallback cb=NULL, void *cbParam=NULL) |
| Start the FPV Camera Stream. More... | |
| bool | startMainCameraStream (CameraImageCallback cb=NULL, void *cbParam=NULL) |
| Start the Main Camera Stream. More... | |
| void | setAcmDevicePath (const char *acm_path) |
| Set the ACM device path, mainly for M210V2. More... | |
| void | stopFPVCameraStream () |
| Stop the FPV RGB Stream. More... | |
| void | stopMainCameraStream () |
| Stop the Main Camera RGB Stream. More... | |
| bool | newFPVCameraImageIsReady () |
| Check if a new image from the FPV camera is received. More... | |
| bool | newMainCameraImageReady () |
| Check if a new image from the main camera is received. More... | |
| bool | getFPVCameraImage (CameraRGBImage ©OfImage) |
| Get a copy of the new image from the FPV camera. More... | |
| bool | getMainCameraImage (CameraRGBImage ©OfImage) |
| Get a copy of the new image from the main camera. More... | |
| LiveView::LiveViewErrCode | changeH264Source (LiveView::LiveViewCameraPosition pos, LiveView::LiveViewCameraSource source) |
| Change the camera stream source from one payload device. (Beta API) More... | |
| LiveView::LiveViewErrCode | startH264Stream (LiveView::LiveViewCameraPosition pos, H264Callback cb, void *userData) |
| Start the FPV or Camera H264 Stream. More... | |
| LiveView::LiveViewErrCode | stopH264Stream (LiveView::LiveViewCameraPosition pos) |
| Stop the FPV or Camera H264 Stream. More... | |
| Perception::PerceptionErrCode | subscribePerceptionImage (Perception::DirectionType direction, Perception::PerceptionImageCB cb, void *userData) |
| Subscribe the perception camera image stream (Only for M300 series) More... | |
| Perception::PerceptionErrCode | unsubscribePerceptionImage (Perception::DirectionType direction) |
| Unsubscribe the perception camera image stream (Only for M300 series) More... | |
| Perception::PerceptionErrCode | triggerStereoCamParamsPushing () |
| Trigger the perception parameters to be passed to the callback which is registered by DJI::OSDK::Perception::setStereoCamParamsObserver. (Only for M300 series) More... | |
| void | setStereoCamParamsObserver (Perception::PerceptionCamParamCB cb, void *userData) |
| Set the callback to catch the perception camera parameters. (Only for M300 series) More... | |
| AdvancedSensingProtocol * | getAdvancedSensingProtocol () |
Static Public Member Functions | |
| static void | stereoCallback (Vehicle *vehiclePtr, RecvContainer recvFrame, UserData userData) |
| A default callback function for QVGA stereo images. More... | |
| static void | VGACallback (Vehicle *vehiclePtr, RecvContainer recvFrame, UserData userData) |
| A default callback function for VGA stereo images. More... | |
Public Attributes | |
| VehicleCallBackHandler | stereoHandler |
| VehicleCallBackHandler | vgaHandler |
Detailed Description
APIs to access stereo camera, FPV camera and the main gimbaled camera on M210 and M210RTK
Member Function Documentation
◆ changeH264Source()
| LiveView::LiveViewErrCode DJI::OSDK::AdvancedSensing::changeH264Source | ( | LiveView::LiveViewCameraPosition | pos, |
| LiveView::LiveViewCameraSource | source | ||
| ) |
Change the camera stream source from one payload device. (Beta API)
- Supported Platforms : M300
- Note
- Only support for payload device : H20/H20T
- Parameters
-
pos point out which camera to output the H264 stream source change to be the target camera of the payload, ref to LiveView::LiveViewCameraSource
- Returns
- Errorcode of liveivew, ref to DJI::OSDK::LiveView::LiveViewErrCode
◆ getFPVCameraImage()
| bool DJI::OSDK::AdvancedSensing::getFPVCameraImage | ( | CameraRGBImage & | copyOfImage | ) |
Get a copy of the new image from the FPV camera.
- Supported Platforms : M210V2, M300
- Parameters
-
copyOfImage A copy of the new available image will be put here. It is safe for user to manipulate this image.
- Note
- If a new image is not ready upon calling this function, it will wait for 30ms till timeout.
- Returns
- true if a new image frame is ready, false if timeout
◆ getMainCameraImage()
| bool DJI::OSDK::AdvancedSensing::getMainCameraImage | ( | CameraRGBImage & | copyOfImage | ) |
Get a copy of the new image from the main camera.
- Supported Platforms : M210V2, M300
- Parameters
-
A copy of the new available image will be put here. It is safe for user to manipulate this image.
- Note
- If a new image is not ready upon calling this function, it will wait for 30ms till timeout.
- Returns
- true if a new image frame is ready, false if timeout
◆ init()
| void DJI::OSDK::AdvancedSensing::init | ( | ) |
subscribe to QVGA (240x320) stereo images at 20 fps
- Parameters
-
images to subscribe callback callback function userData user data (void ptr)
◆ newFPVCameraImageIsReady()
| bool DJI::OSDK::AdvancedSensing::newFPVCameraImageIsReady | ( | ) |
Check if a new image from the FPV camera is received.
- Supported Platforms : M210V2, M300
- Returns
- true if a new image frame is ready, false otherwise
◆ newMainCameraImageReady()
| bool DJI::OSDK::AdvancedSensing::newMainCameraImageReady | ( | ) |
Check if a new image from the main camera is received.
- Supported Platforms : M210V2, M300
- Returns
- true if a new image frame is ready, false otherwise
◆ setAcmDevicePath()
| void DJI::OSDK::AdvancedSensing::setAcmDevicePath | ( | const char * | acm_path | ) |
Set the ACM device path, mainly for M210V2.
- Supported Platforms : M210V2
◆ setStereoCamParamsObserver()
| void DJI::OSDK::AdvancedSensing::setStereoCamParamsObserver | ( | Perception::PerceptionCamParamCB | cb, |
| void * | userData | ||
| ) |
Set the callback to catch the perception camera parameters. (Only for M300 series)
- Supported Platforms : M300
- Note
- The callback will be triggered by calling DJI::OSDK::Perception::triggerStereoCamParamsPushing() or when the parameters of perception cameras are refreshed.
- Parameters
-
cb callback function that is called in a callback thread when the getting the parameters of perception cameras. userData a void pointer that users can manipulate inside the callback
◆ startFPVCameraStream()
| bool DJI::OSDK::AdvancedSensing::startFPVCameraStream | ( | CameraImageCallback | cb = NULL, |
| void * | cbParam = NULL |
||
| ) |
Start the FPV Camera Stream.
- Supported Platforms : M210V2, M300
- Parameters
-
cb callback function that is called in a callback thread when a new image is received and decoded cbParam a void pointer that users can manipulate inside the callback
- Returns
- true if successfully started, false otherwise
◆ startH264Stream()
| LiveView::LiveViewErrCode DJI::OSDK::AdvancedSensing::startH264Stream | ( | LiveView::LiveViewCameraPosition | pos, |
| H264Callback | cb, | ||
| void * | userData | ||
| ) |
Start the FPV or Camera H264 Stream.
- Supported Platforms : M210V2, M300
- Note
- For M210 V2 series, only OSDK_CAMERA_POSITION_NO_1 and OSDK_CAMERA_POSITION_FPV are supported.
- For M300, all the poss are supported.
- Parameters
-
pos point out which camera to output the H264 stream cb callback function that is called in a callback thread when a new h264 frame is received cbParam a void pointer that users can manipulate inside the callback
- Returns
- Errorcode of liveivew, ref to DJI::OSDK::LiveView::LiveViewErrCode
◆ startMainCameraStream()
| bool DJI::OSDK::AdvancedSensing::startMainCameraStream | ( | CameraImageCallback | cb = NULL, |
| void * | cbParam = NULL |
||
| ) |
Start the Main Camera Stream.
- Supported Platforms : M210V2, M300
- Parameters
-
cb callback function that is called in a callback thread when a new image is received and decoded cbParam a void pointer that users can manipulate inside the callback
- Returns
- true if successfully started, false otherwise
◆ stereoCallback()
|
static |
A default callback function for QVGA stereo images.
- Parameters
-
vehicle pointer recvFrame the data comes with the callback function userData a void ptr that user can manipulate inside the callback
◆ stopFPVCameraStream()
| void DJI::OSDK::AdvancedSensing::stopFPVCameraStream | ( | ) |
Stop the FPV RGB Stream.
- Supported Platforms : M210V2, M300
◆ stopH264Stream()
| LiveView::LiveViewErrCode DJI::OSDK::AdvancedSensing::stopH264Stream | ( | LiveView::LiveViewCameraPosition | pos | ) |
Stop the FPV or Camera H264 Stream.
- Supported Platforms : M210V2, M300
- Note
- For M210 V2 series, only OSDK_CAMERA_POSITION_NO_1 and OSDK_CAMERA_POSITION_FPV are supported.
- For M300, all the poss are supported.
- Parameters
-
pos point out which camera to output the H264 stream
- Returns
- Errorcode of liveivew, ref to DJI::OSDK::LiveView::LiveViewErrCode
◆ stopMainCameraStream()
| void DJI::OSDK::AdvancedSensing::stopMainCameraStream | ( | ) |
Stop the Main Camera RGB Stream.
- Supported Platforms : M210V2, M300
◆ subscribeFrontStereoDisparity()
| void DJI::OSDK::AdvancedSensing::subscribeFrontStereoDisparity | ( | VehicleCallBack | callback = 0, |
| UserData | userData = 0 |
||
| ) |
subscribe to QVGA (240x320) stereo depth map at 10 fps
- Supported Platforms : M210V2
- Parameters
-
callback callback function userData user data (void ptr)
◆ subscribeFrontStereoVGA()
| void DJI::OSDK::AdvancedSensing::subscribeFrontStereoVGA | ( | const uint8_t | freq, |
| VehicleCallBack | callback = 0, |
||
| UserData | userData = 0 |
||
| ) |
subscribe to VGA (480x640) front stereo images at 10 or 20 fps
- Supported Platforms : M210V2, M300
- Parameters
-
frequency of images using enum from AdvancedSensingProtocol::FREQ callback callback function userData user data (void ptr)
◆ subscribePerceptionImage()
| Perception::PerceptionErrCode DJI::OSDK::AdvancedSensing::subscribePerceptionImage | ( | Perception::DirectionType | direction, |
| Perception::PerceptionImageCB | cb, | ||
| void * | userData | ||
| ) |
Subscribe the perception camera image stream (Only for M300 series)
- Supported Platforms : M300
- Parameters
-
direction point out which direction's stream need to be subscribed cb callback function that is called in a callback thread when a perception image frame is received userData a void pointer that users can manipulate inside the callback
- Returns
- Errorcode of liveivew, ref to DJI::OSDK::LiveView::LiveViewErrCode
◆ subscribeStereoImages()
| void DJI::OSDK::AdvancedSensing::subscribeStereoImages | ( | const ImageSelection * | select, |
| VehicleCallBack | callback = 0, |
||
| UserData | userData = 0 |
||
| ) |
subscribe to 240p stereo images at 20 fps
- Supported Platforms : M210V2
- Parameters
-
select the choice of the image direction, ref to AdvancedSensing::ImageSelection callback callback function userData user data (void ptr)
◆ triggerStereoCamParamsPushing()
| Perception::PerceptionErrCode DJI::OSDK::AdvancedSensing::triggerStereoCamParamsPushing | ( | ) |
Trigger the perception parameters to be passed to the callback which is registered by DJI::OSDK::Perception::setStereoCamParamsObserver. (Only for M300 series)
- Supported Platforms : M300
- Returns
- Errorcode of liveivew, ref to DJI::OSDK::LiveView::LiveViewErrCode
◆ unsubscribePerceptionImage()
| Perception::PerceptionErrCode DJI::OSDK::AdvancedSensing::unsubscribePerceptionImage | ( | Perception::DirectionType | direction | ) |
Unsubscribe the perception camera image stream (Only for M300 series)
- Supported Platforms : M300
- Parameters
-
direction point out which direction's stream need to be unsubscribed
- Returns
- Errorcode of liveivew, ref to DJI::OSDK::LiveView::LiveViewErrCode
◆ unsubscribeStereoImages()
| void DJI::OSDK::AdvancedSensing::unsubscribeStereoImages | ( | ) |
unsubscribe to QVGA (240x320) stereo depth map or images
- Supported Platforms : M210V2, M300
◆ unsubscribeVGAImages()
| void DJI::OSDK::AdvancedSensing::unsubscribeVGAImages | ( | ) |
unsubscribe to VGA (480x640) stereo images
- Supported Platforms : M210V2, M300
◆ VGACallback()
|
static |
A default callback function for VGA stereo images.
- Parameters
-
vehicle pointer recvFrame the data comes with the callback function userData a void ptr that user can manipulate inside the callback
The documentation for this class was generated from the following file:
- osdk-core/advanced-sensing/api/inc/dji_advanced_sensing.hpp