DJI Mobile SDK Documentation

      class Lens

      class Lens
      Package:dji.sdk.camera
      Description:

      The class is used to manage all lens feature. It is only supported by Zenmuse H20 Series and Mavic 2 Enterprise Advanced.

      Class Members:
      Lens Type
      method
      method getType
      SettingsDefinitions.LensType getType()
      Package:dji.sdk.camera
      Description:

      Gets the type of the current lens.

      Return:
      SettingsDefinitions.LensTypeAn object value of LensType
      Camera Index
      method
      method getCameraIndex
      int getCameraIndex()
      Package:dji.sdk.camera
      Description:

      Gets the index of the camera where the lens is located.

      Return:
      intAn int value.
      Lens Index
      method
      method getIndex
      int getIndex()
      Package:dji.sdk.camera
      Description:

      Gets the index of the current lens.

      Return:
      intAn int value.
      Display Name
      method
      method getDisplayName
      String getDisplayName()
      Package:dji.sdk.camera
      Description:

      Gets the name of the current lens.

      Return:
      StringAn String instance of display name.
      Capabilities
      method
      method getCapabilities
      LensCapabilities getCapabilities()
      Package:dji.sdk.camera
      Description:

      Lens capabilities. Supported by Zenmuse H20 Series.

      Return:
      LensCapabilitiesAn object of LensCapabilities.

      Video

      Video Standard
      method
      method setVideoStandard
      void setVideoStandard(@NonNull SettingsDefinitions.VideoStandard videoStandard, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the lens' analog video standard. Setting the video standard to PAL or NTSC will limit the available resolutions and frame rates to those compatible with the chosen video standard.

      Input Parameters:
      @NonNull SettingsDefinitions.VideoStandard videoStandardVideo standard value to be set for the lens.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getVideoStandard
      void getVideoStandard(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.VideoStandard> callback)
      Package:dji.sdk.camera
      Description:

      Gets the lens' video standard value.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.VideoStandard> callbackThe execution callback with the returned value(s).
      Video Resolution And Frame Rate
      method
      method setVideoResolutionAndFrameRate
      void setVideoResolutionAndFrameRate(@NonNull ResolutionAndFrameRate resolutionAndFrameRate,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the video resolution and frame rate of the current lens. @warning The supported resolutions and frame rates for the two different analog television standards PAL and NTSC are below:
      NTSC:
      Resolution_4096x2160, FrameRate_24fps
      Resolution_3840x2160, FrameRate_30fps
      Resolution_3840x2160, FrameRate_24fps
      Resolution_2704X1520, FrameRate_30fps
      Resolution_2704X1520, FrameRate_24fps
      Resolution_1920x1080, FrameRate_120fps (Slow Motion)
      Resolution_1920x1080, FrameRate_60fps
      Resolution_1920x1080, FrameRate_48fps
      Resolution_1920x1080, FrameRate_30fps
      Resolution_1920x1080, FrameRate_24fps
      Resolution_1280x720, FrameRate_60fps
      Resolution_1280x720, FrameRate_48fps
      Resolution_1280x720, FrameRate_30fps
      Resolution_1280x720, FrameRate_24fps
      PAL:
      Resolution_4096x2160, FrameRate_25fps
      Resolution_4096x2160, FrameRate_24fps
      Resolution_3840x2160, FrameRate_25fps
      Resolution_3840x2160, FrameRate_24fps
      Resolution_2704X1520, FrameRate_25fps
      Resolution_2704X1520, FrameRate_24fps
      Resolution_1920x1080, FrameRate_120fps (Slow Motion)
      Resolution_1920x1080, FrameRate_50fps
      Resolution_1920x1080, FrameRate_48fps
      Resolution_1920x1080, FrameRate_25fps
      Resolution_1920x1080, FrameRate_24fps
      Resolution_1280x720, FrameRate_50fps
      Resolution_1280x720, FrameRate_48fps
      Resolution_1280x720, FrameRate_25fps
      Resolution_1280x720, FrameRate_24fps

      Input Parameters:
      @NonNull ResolutionAndFrameRate resolutionAndFrameRateResolution to be set for the video.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getVideoResolutionAndFrameRate
      void getVideoResolutionAndFrameRate(
      @NonNull final CommonCallbacks.CompletionCallbackWith<ResolutionAndFrameRate> callback)
      Package:dji.sdk.camera
      Description:

      Gets the video resolution and frame rate values of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<ResolutionAndFrameRate> callbackThe execution callback with the returned value(s).
      Video File Format
      method
      method setVideoFileFormat
      void setVideoFileFormat(@NonNull SettingsDefinitions.VideoFileFormat format, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the video file format of the current lens. The default value is MOV.

      Input Parameters:
      @NonNull SettingsDefinitions.VideoFileFormat formatVideo file format to be set for videos.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getVideoFileFormat
      void getVideoFileFormat(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.VideoFileFormat> callback)
      Package:dji.sdk.camera
      Description:

      Gets the video file format of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.VideoFileFormat> callbackThe execution callback with the returned value(s).


      Photo

      Photo Aspect Ratio
      method
      method setPhotoAspectRatio
      void setPhotoAspectRatio(@NonNull SettingsDefinitions.PhotoAspectRatio aspectRatio,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the aspect ratio for photos of the current lens. See PhotoAspectRatio to view all possible ratios.

      Input Parameters:
      @NonNull SettingsDefinitions.PhotoAspectRatio aspectRatioAspect ratio for photos to be taken by camera.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getPhotoAspectRatio
      void getPhotoAspectRatio(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.PhotoAspectRatio> callback)
      Package:dji.sdk.camera
      Description:

      Gets the aspect ratio for photos of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.PhotoAspectRatio> callbackThe execution callback with the returned value(s).
      Photo File Format
      method
      method setPhotoFileFormat
      void setPhotoFileFormat(@NonNull SettingsDefinitions.PhotoFileFormat format, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the photo file format of the current lens. See PhotoFileFormat to view all possible photo formats to which the lens can be set. Not supported by Zenmuse H20 Series.

      Input Parameters:
      @NonNull SettingsDefinitions.PhotoFileFormat formatPhoto file format used when the camera takes a photo.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getPhotoFileFormat
      void getPhotoFileFormat(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.PhotoFileFormat> callback)
      Package:dji.sdk.camera
      Description:

      Gets the photo file format of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.PhotoFileFormat> callbackThe execution callback with the returned value(s).


      Exposure Settings

      Exposure Mode
      method
      method setExposureMode
      void setExposureMode(@NonNull SettingsDefinitions.ExposureMode mode, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the exposure mode of the current lens. Check DJICameraExposureMode to view all possible camera exposure modes. Please note that in different exposure mode, it will have different values for the same setting.

      Input Parameters:
      @NonNull SettingsDefinitions.ExposureMode modeCamera exposure mode to set.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getExposureMode
      void getExposureMode(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ExposureMode> callback)
      Package:dji.sdk.camera
      Description:

      Gets the exposure mode of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ExposureMode> callbackThe execution callback with the returned value(s).
      ISO
      method
      method setISO
      void setISO(@NonNull SettingsDefinitions.ISO iso, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the ISO value of the current lens. See DJICameraISO to view all possible ISO settings for the lens.

      Input Parameters:
      @NonNull SettingsDefinitions.ISO isoISO value to be set.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method
      method getISO
      void getISO(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ISO> callback)
      Package:dji.sdk.camera
      Description:

      Gets the ISO value of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ISO> callbackThe execution callback with the returned value(s).
      Shutter Speed
      method
      method setShutterSpeed
      void setShutterSpeed(@NonNull SettingsDefinitions.ShutterSpeed shutterSpeed, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the shutter speed of the current lens. To see all available "shutterSpeed" value settings, see ShutterSpeed. The shutter speed should not be set slower than the video frame rate when the camera's mode is RECORD_VIDEO. For example, if the video frame rate is 30fps, the shutterSpeed must be <= 1/30. Precondition: The shutter speed can be set only when the lens exposure mode is Shutter mode or Manual mode.

      Input Parameters:
      @NonNull SettingsDefinitions.ShutterSpeed shutterSpeedShutter speed value to be set for the lens. For all available values shutterSpeed can be set to, please check ShutterSpeed. <br> The shutter speed should not be set slower than the video frame rate when the camera's mode is RECORD_VIDEO. For example, if the video frame rate = 30fps, then the shutterSpeed must be <= 1/30.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getShutterSpeed
      void getShutterSpeed(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ShutterSpeed> callback)
      Package:dji.sdk.camera
      Description:

      Gets the shutter speed of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ShutterSpeed> callbackThe execution callback with the returned value(s).
      Metering Mode
      method
      method setMeteringMode
      void setMeteringMode(@NonNull SettingsDefinitions.MeteringMode mode, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the exposure metering of the current lens. See MeteringMode to view all possible exposure metering settings for the lens.

      Input Parameters:
      @NonNull SettingsDefinitions.MeteringMode modeExposure metering to be set. Check the enum MeteringMode to find all possible exposure metering the camera can be set to.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the execution result.
      method getMeteringMode
      void getMeteringMode(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.MeteringMode> callback)
      Package:dji.sdk.camera
      Description:

      Gets the exposure metering of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.MeteringMode> callbackThe execution callback with the returned value(s).
      Spot Metering Target Row Index
      method
      method setSpotMeteringTarget
      void setSpotMeteringTarget(@NonNull Point spotIndex, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the spot metering area index of the current lens. The lens image is divided into 225 spots defined by 15 columns and 15 rows. The row index range is [0,14], where the values increase top to bottom across the image. The column index range is [0, 14], where the values increase left to right. In order to make the method work, The camera exposure mode should be Program, Shutter or Aperture, the exposure metering mode must be SPOT, and setAELock must be NO.

      Input Parameters:
      @NonNull Point spotIndexSpot metering point coordinate (x, y). x is column index to be set. The value should falls in [0, 14], where the values increase left to right. y is row index to be set. The value should falls in [0, 14], where the values increase top to bottom across the image.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Spot Metering Target
      method
      method getSpotMeteringTarget
      void getSpotMeteringTarget(@NonNull final CommonCallbacks.CompletionCallbackWith<Point> callback)
      Package:dji.sdk.camera
      Description:

      Gets the spot metering area row index and column index of the current lens. In order to make the method work, The lens exposure mode should be PROGRAM, SHUTTER_PRIORITY or APERTURE_PRIORITY, the exposure metering mode must be SPOT, and getAELock must be false.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Point> callbackThe execution callback with the returned value(s).
      Exposure Compensation
      method
      method setExposureCompensation
      void setExposureCompensation(@NonNull SettingsDefinitions.ExposureCompensation compensation,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the exposure compensation of the current lens. See ExposureCompensation to view all possible exposure compensations to which the camera can be set. In order to use this function, set the lens exposure mode to shutter, program or aperture.

      Input Parameters:
      @NonNull SettingsDefinitions.ExposureCompensation compensationExposure compensation value to be set for the camera.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getExposureCompensation
      void getExposureCompensation(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ExposureCompensation> callback)
      Package:dji.sdk.camera
      Description:

      Gets the exposure compensation of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ExposureCompensation> callbackThe execution callback with the returned value(s).
      AE Lock
      method
      method setAELock
      void setAELock(boolean isLocked, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Locks or unlocks the lens' AE (auto exposure). Post condition: If the AE lock is enabled, the spot metering area cannot be set.

      Input Parameters:
      boolean isLockedtrue if the camera AE is locked, NO if it is unlocked.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method
      method getAELock
      void getAELock(@NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callback)
      Package:dji.sdk.camera
      Description:

      Determines if the lens' AE (auto exposure) is locked.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callbackThe execution callback with the returned value(s).
      Auto AE Unlock Enabled
      method
      method setAutoAEUnlockEnabled
      void setAutoAEUnlockEnabled(boolean enabled, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Enables/disables auto-unlocking of AE lock after shooting a photo. If it is enabled, the Auto Exposure will unlock after each shot. If disabled, Auto Exposure will change when calling setAELock.

      Input Parameters:
      boolean enabledtrue if the camera AE will automatically unlock.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getAutoAEUnlockEnabled
      void getAutoAEUnlockEnabled(@NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callback)
      Package:dji.sdk.camera
      Description:

      Determines whether auto-unlocking of AE lock is enabled.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callbackThe execution callback with the returned value(s).


      White Balance

      Set White Balance
      method
      method setWhiteBalance
      void setWhiteBalance(@NonNull WhiteBalance whiteBalance, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the white balance of the current lens. When the white balance is a preset value (values except CUSTOM), the colorTemperature argument does not take effect. When the white balance is CUSTOM, the getColorTemperature value is used instead. See Also: WhiteBalancePreset to view all possible white balance setting options for the camera.

      Input Parameters:
      @NonNull WhiteBalance whiteBalanceWhite balance value to be set.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Get White Balance
      method
      method getWhiteBalance
      void getWhiteBalance(@NonNull final CommonCallbacks.CompletionCallbackWith<WhiteBalance> callback)
      Package:dji.sdk.camera
      Description:

      Gets the white balance and color temperature of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<WhiteBalance> callbackThe execution callback with the returned value(s).


      Other Settings

      Set Sharpness
      method
      method setSharpness
      void setSharpness(@IntRange(from = -3, to = 3) int sharpness, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the sharpness of the current lens. The default value is 0.

      Input Parameters:
      @IntRange(from = -3, to = 3) int sharpnessSharpness value to be set in the range of [-3, 3].
      @Nullable final CommonCallbacks.CompletionCallback callbackAsynchronous execution result.
      Get Sharpness
      method
      method getSharpness
      void getSharpness(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the sharpness of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value of sharpness with range [-3, 3].
      Set Contrast
      method
      method setContrast
      void setContrast(@IntRange(from = -3, to = 3) int contrast, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the contrast of the current lens. The default saturation value is 0.

      Input Parameters:
      @IntRange(from = -3, to = 3) int contrastContrast value to be set in the range of [-3, 3].
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Get Contrast
      method
      method getContrast
      void getContrast(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the contrast of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value of contrast with range [-3, 3].
      Set Saturation
      method
      method setSaturation
      void setSaturation(@IntRange(from = -3, to = 3) int saturation,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the saturation of the current lens. The default saturation value is 0.

      Input Parameters:
      @IntRange(from = -3, to = 3) int saturationSaturation value to be set in the range of [-3, 3]. The default value of the saturation value is 0.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Get Saturation
      method
      method getSaturation
      void getSaturation(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the saturation of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Set Color
      method
      method setColor
      void setColor(@NonNull SettingsDefinitions.CameraColor color, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the color of the current lens. The default value is NONE. For a list of all possible camera colors, see CameraColor.

      Input Parameters:
      @NonNull SettingsDefinitions.CameraColor colorCamera color to be applied to the camera.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Get Color
      method
      method getColor
      void getColor(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.CameraColor> callback)
      Package:dji.sdk.camera
      Description:

      Gets the color of the current lens.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.CameraColor> callbackThe execution callback with the returned value(s).
      Set IR Filter Enabled
      method
      method setIRFilterEnabled
      void setIRFilterEnabled(final boolean enabled, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Enables/disables the IR filter (infared filter). Disabling the IR filter can enhance the image in low light environments. Enabling the IR filter can reduce the color distortion caused by the infared light. Supported by the zoom lens of Zenmuse H20 Series.

      Input Parameters:
      final boolean enabledtrue to enable IR-Cut filter.
      @Nullable final CommonCallbacks.CompletionCallback callbackCallback that receives the setter result.
      Get IR Filter Enabled
      method
      method getIRFilterEnabled
      void getIRFilterEnabled(@NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callback)
      Package:dji.sdk.camera
      Description:

      Determines whether IR filter (infared filter) is enabled. Disabling the IR filter can enhance the image in low light environments. Enabling the IR filter can reduce the color distortion caused by the infared light. Supported by the zoom lens of Zenmuse H20 Series.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callbackThe execution callback with the returned value(s).
      Set IR Filter Mode
      method
      method setIRFilterMode
      void setIRFilterMode(@NonNull final SettingsDefinitions.IRFilterMode irFilterMode, @NonNull final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the IR filter mode of the current lens. ON to reduce the color distortion caused by the infared light, OFF to enhance the image in low light environments, or AUTO to up to the system to decide whether to switch. Supported by the zoom lens of Zenmuse H20 Series.

      Input Parameters:
      @NonNull final SettingsDefinitions.IRFilterMode irFilterModeAn enum type of the IRFilterMode to be used.
      @NonNull final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getIRFilterMode
      void getIRFilterMode(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.IRFilterMode> callback)
      Package:dji.sdk.camera
      Description:

      Gets the IR filter mode of the current lens. Supported by the zoom lens of Zenmuse H20 Series.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.IRFilterMode> callbackThe execution callback with the returned value(s).


      Digital Zoom

      Check Digital Zoom Support
      method
      method isDigitalZoomSupported
      boolean isDigitalZoomSupported()
      Package:dji.sdk.camera
      Description:

      Check if the current device supports digital zoom scale. It is supported by Osmo with X3 camera, Phantom 4 camera, Z3 camera, Mavic Pro camera and Z30 camera. For Zenmuse H20 Series and Mavic 2 Enterprise Advanced, please use class Lens.

      Return:
      booleanA boolean value.
      Digital Zoom Factor
      method
      method setDigitalZoomFactor
      void setDigitalZoomFactor(@FloatRange(from = 1.0, to = 2.0) float factor,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the digital zoom factor of the current lens. Not supported by Zenmuse H20 Series.

      Input Parameters:
      @FloatRange(from = 1.0, to = 2.0) float factorThe valid range is from 1.0 to 2.0.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getDigitalZoomFactor
      void getDigitalZoomFactor(@NonNull final CommonCallbacks.CompletionCallbackWith<Float> callback)
      Package:dji.sdk.camera
      Description:

      Gets current digital zoom factor of the current lens. Note Z30 cannot set the digital zoom scale, but will use digital zoom when using startContinuousOpticalZoom and the optical zoom has reached its limit. Not supported by Zenmuse H20 Series.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Float> callbackThe execution callback with the returned value(s).


      Optical Zoom

      Check Digital Zoom Support
      method
      method isOpticalZoomSupported
      boolean isOpticalZoomSupported()
      Package:dji.sdk.camera
      Description:

      Determine if the current lens supports optical zoom. Not supported by Zenmuse H20 Series.

      Return:
      booleantrue if lens supports optical zoom.
      Get Optical Zoom Spec
      method
      method getOpticalZoomSpec
      void getOpticalZoomSpec(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.OpticalZoomSpec> callback)
      Package:dji.sdk.camera
      Description:

      Gets the specification of the current lens. Not supported by Zenmuse H20 Series.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.OpticalZoomSpec> callbackThe execution callback with the returned value(s).
      Set Optical Zoom Focal Length
      method
      method setOpticalZoomFocalLength
      void setOpticalZoomFocalLength(int focalLength, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets focal length of the current lens. Not supported by Zenmuse H20 Series.

      Input Parameters:
      int focalLengthFocal length of zoom lens. Valid range is [getMinFocalLength, getMaxFocalLength] and must be a multiple of getFocalLengthStep.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Get Optical Zoom Focal Length
      method
      method getOpticalZoomFocalLength
      void getOpticalZoomFocalLength(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the optical zoom focal length of the current lens in units of 0.1mm. Not supported by Zenmuse H20 Series.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Start Continuous Optical Zoom In Direction
      method
      method startContinuousOpticalZoom
      void startContinuousOpticalZoom(@NonNull SettingsDefinitions.ZoomDirection direction,
      @NonNull final SettingsDefinitions.ZoomSpeed speed,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Start changing the focal length of the lens in specified direction with specified speed. Focal length change (zooming) will halt when maximum or minimum focal lengths are reached, or stopContinuousOpticalZoom is called. Supported by the zoom lens of Zenmuse H20 Series and Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull SettingsDefinitions.ZoomDirection directionDirection to zoom.
      @NonNull final SettingsDefinitions.ZoomSpeed speedZoom speed.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Stop Continuous Optical Zoom
      method
      method stopContinuousOpticalZoom
      void stopContinuousOpticalZoom(@Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Called to stop focal length changing, when it currently is from calling startContinuousOpticalZoom. Supported by the zoom lens of Zenmuse H20 Series and Mavic 2 Enterprise Advanced.

      Input Parameters:
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.


      Hybrid Zoom

      Check Hybrid Zoom Support
      method
      method isHybridZoomSupported
      boolean isHybridZoomSupported()
      Package:dji.sdk.camera
      Description:

      Hybrid zoom is combining optical and digital zoom. Lens will automatically switch over to digital zoom when optical zoom range is exceeded. Check if lens supports hybrid zoom. Supported by the zoom lens of Zenmuse H20 Series.

      Return:
      booleantrue if camera supports hybrid zoom.
      Hybrid Zoom Spec
      method
      method getHybridZoomSpec
      void getHybridZoomSpec(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.HybridZoomSpec> callback)
      Package:dji.sdk.camera
      Description:

      Hybrid zoom is combining optical and digital zoom. Lens will automatically switch over to digital zoom when optical zoom range is exceeded. Gets the specification of the zoom lens. Supported by the zoom lens of Zenmuse H20 Series.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.HybridZoomSpec> callbackThe execution callback with the returned value(s).
      Hybrid Zoom Focal Length
      method
      method setHybridZoomFocalLength
      void setHybridZoomFocalLength(int focalLength, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Hybrid zoom is combining optical and digital zoom. Lens will automatically switch over to digital zoom when optical zoom range is exceeded. Sets focal length of the zoom lens. Supported by the zoom lens of Zenmuse H20 Series.

      Input Parameters:
      int focalLengthFocal length of zoom lens. Valid range is [getMinHybridFocalLength, getMaxHybridFocalLength] and must be a multiple of getFocalLengthStep.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getHybridZoomFocalLength
      void getHybridZoomFocalLength(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Hybrid zoom is combining optical and digital zoom. Lens will automatically switch over to digital zoom when optical zoom range is exceeded. Gets zoom lens focal length in units of 0.1mm. Supported by the zoom lens of Zenmuse H20 Series.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).


      Tap Zoom

      Check Tap Zoom Support
      method
      method isTapZoomSupported
      boolean isTapZoomSupported()
      Package:dji.sdk.camera
      Description:

      Determines if the current lens supports TapZoom feature.

      Return:
      booleantrue if camera supports tap zoom.
      Tap Zoom Enabled
      method
      method setTapZoomEnabled
      void setTapZoomEnabled(boolean enabled, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Enable/disable TapZoom. tapZoomAtTarget can only be called when TapZoom is enabled. Supported by Mavic 2 Enterprise Advanced, the zoom lens and the wide lens of Zenmuse H20 Series.

      Input Parameters:
      boolean enabledtrue to enable TapZoom feature.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getTapZoomEnabled
      void getTapZoomEnabled(@NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callback)
      Package:dji.sdk.camera
      Description:

      Determines if TapZoom is enabled.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callbackThe execution callback with the returned value(s).
      Tap Zoom Multiplier
      method
      method setTapZoomMultiplier
      void setTapZoomMultiplier(@IntRange(from = 1, to = 5) int multiplier,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      TapZoom uses a multiplier to change the zoom scale when called. The final zoom scale for a TapZoom will be: Current Zoom Scale x Multiplier. The multiplier range is [1,5]. A multiplier of 1 will not change the zoom. When the multiplier is 1, the zoom scale will not change during TapZoom. Supported by the zoom lens and the wide lens of Zenmuse H20 Series. The tap zoom multiplier of Zenmuse H20 Series must be 1.

      Input Parameters:
      @IntRange(from = 1, to = 5) int multiplierMultiplier of TapZoom.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getTapZoomMultiplier
      void getTapZoomMultiplier(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the multiplier for TapZoom. Supported by the zoom lens and the wide lens of Zenmuse H20 Series. The tap zoom multiplier of Zenmuse H20 Series must be 1.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Tap Zoom Target
      method
      method tapZoomAtTarget
      void tapZoomAtTarget(@NonNull PointF target, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      TapZoom at the target. It can be called only when TapZoom is enabled. When a new target is set, the gimbal will rotate and locate the target in the center of the screen. At the same time, the camera will zoom by multiplying the TapZoom multiplier. Supported by Mavic 2 Enterprise Advanced, the zoom lens and the wide lens of Zenmuse H20 Series. It will only work when the tap zoom multiplier of Zenmuse H20 Series is 1.

      Input Parameters:
      @NonNull PointF targetThe target to zoom. The range for x and y is from 0.0 to 1.0. The point [0.0, 0.0] represents the top-left corner of the screen.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.


      Advanced Camera Settings

      Check Adjustable Aperture Supported
      method
      method isAdjustableApertureSupported
      boolean isAdjustableApertureSupported()
      Package:dji.sdk.camera
      Description:

      Gets whether the lens supports an adjustable aperture. Currently adjustable aperture is supported only by the zoom lens of Zenmuse H20 Series.

      Return:
      booleanA boolean value.
      Aperture
      method
      method setAperture
      void setAperture(@NonNull SettingsDefinitions.Aperture aperture, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the aperture value of the current lens. This feature is available only when isAdjustableApertureSupported returns true. Precondition: The exposure mode ExposureMode must be in MANUAL or APERTURE_PRIORITY.
      Supported only by the zoom lens of Zenmuse H20 Series and Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull SettingsDefinitions.Aperture apertureThe aperture to set. See FocusMode.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getAperture
      void getAperture(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.Aperture> callback)
      Package:dji.sdk.camera
      Description:

      Gets the aperture of the current lens. This feature is available only when isAdjustableApertureSupported returns true.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.Aperture> callbackThe execution callback with the returned value(s).
      Check Adjustable Focal Point Support
      method
      method isAdjustableFocalPointSupported
      boolean isAdjustableFocalPointSupported()
      Package:dji.sdk.camera
      Description:

      Determines whether the lens supports an adjustable focal point. Currently, the adjustable focal point is supported by the zoom lens of Zenmuse H20 Series.

      Return:
      booleanA boolean value.
      Focus Mode
      method
      method setFocusMode
      void setFocusMode(@NonNull SettingsDefinitions.FocusMode focusMode,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the focus mode of the current lens. See FocusMode. It is available only when isAdjustableFocalPointSupported returns true. Supported by the zoom lens of Zenmuse H20 Series. Not supported by Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull SettingsDefinitions.FocusMode focusModeFocus mode to set. Check FocusMode for more detail.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getFocusMode
      void getFocusMode(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.FocusMode> callback)
      Package:dji.sdk.camera
      Description:

      Gets the focus mode of the current lens. Please check FocusMode. It is available only when isAdjustableFocalPointSupported returns true. Supported by the zoom lens of Zenmuse H20 Series. Not supported by Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.FocusMode> callbackThe execution callback with the returned value(s).
      Focus Target
      method
      method setFocusTarget
      void setFocusTarget(@NonNull PointF focusTarget, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the lens focus target point. When the focus mode is auto, the target point is the focal point. When the focus mode is manual, the target point is the zoom out area if the focus assistant is enabled for the manual mode. It is available only when isAdjustableFocalPointSupported returns true. Supported by the zoom lens of Zenmuse H20 Series. Not supported by Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull PointF focusTargetThe focus target to set. The range for x and y is from 0.0 to 1.0. The point [0.0, 0.0] represents the top-left angle of the screen.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getFocusTarget
      void getFocusTarget(@NonNull final CommonCallbacks.CompletionCallbackWith<PointF> callback)
      Package:dji.sdk.camera
      Description:

      Gets the lens focus target point. It is available only when isAdjustableFocalPointSupported returns true. Supported by the zoom lens of Zenmuse H20 Series. Not supported by Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<PointF> callbackThe execution callback with the returned value(s).
      Focus Assistant Settings
      method
      method setFocusAssistantSettings
      void setFocusAssistantSettings(FocusAssistantSettings settings,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Used to enable/disable the lens focus assistant. When the focus assistant is enabled, the camera live view will digitally zoom into the focus target area so the user can see the quality of focus. Focus assistant can be used for both manual focus (MF) and auto focus (AF). It is available only when isAdjustableFocalPointSupported returns true. Not supported by Mavic 2 Enterprise Advanced.

      Input Parameters:
      FocusAssistantSettings settingsSets whether the lens focus assistant for AF and MF mode is enabled.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getFocusAssistantSettings
      void getFocusAssistantSettings(@NonNull final CommonCallbacks.CompletionCallbackWithTwoParam<Boolean, Boolean> callback)
      Package:dji.sdk.camera
      Description:

      Determines whether the lens focus assistant is enabled. When the focus assistant is enabled, the camera live view will digitally zoom into the focus target area so the user can see the quality of focus. Focus assistant can be used for both manual focus (MF) and auto focus (AF). It is available only when isAdjustableFocalPointSupported returns true. Supported by the zoom lens of Zenmuse H20 Series. Not supported by Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWithTwoParam<Boolean, Boolean> callbackThe execution callback with the returned value(s).
      Focus Ring Value Upper Bound
      method
      method getFocusRingValueUpperBound
      void getFocusRingValueUpperBound(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the lens focusing ring value's max value. It is available only when isAdjustableFocalPointSupported returns true. Supported by the zoom lens of Zenmuse H20 Series. Not supported by Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Focus Ring Value
      method
      method setFocusRingValue
      void setFocusRingValue(@IntRange(from = 0) int value, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Set the focal distance by simulating the focus ring adjustment. Value can have a range of 0, getFocusRingValueUpperBound], which represents infinity and the closest possible focal distance. It is available only when isAdjustableFocalPointSupported returns true. For some lenses, the minimum focus ring value is larger than 0. For example the minimum of DJI MFT 15mm f/1.7 ASPH is 270. To retrieve the minimum value, perform the following steps: - Call setFocusMode with AUTO. - Call setFocusTarget with the furthest target (>30m). - Call getFocusRingValue to get the current focus ring value. This is the minimum value. The maximum value can be retrieved using getFocusRingValueUpperBound. Supported by the zoom lens of Zenmuse H20 Series. Not supported by Mavic 2 Enterprise Advanced.

      Input Parameters:
      @IntRange(from = 0) int valueValue to adjust focus ring to. The minimum value is 0, the maximum value depends on the installed lens. Please use method getFocusRingValueUpperBound to ensure the input argument is valid.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getFocusRingValue
      void getFocusRingValue(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the lens focus ring value. It is available only when isAdjustableFocalPointSupported returns true. Supported by the zoom lens of Zenmuse H20 Series. Not supported by Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).


      Mechanical Shutter Speed

      Check Mechanical Shutter Supported
      method
      method isMechanicalShutterSupported
      boolean isMechanicalShutterSupported()
      Package:dji.sdk.camera
      Description:

      Determines whether the mechanical shutter speed is supported by the camera or the lens.

      Return:
      booleantrue if the mechanical shutter is supported, otherwise false.
      Enable Mechanical Shutter
      method
      method setMechanicalShutterEnabled
      void setMechanicalShutterEnabled(final boolean enabled, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Enables the mechanical shutter. It is only valid when isMechanicalShutterSupported returns true.

      Input Parameters:
      final boolean enabledtrue to enable the mechanical shutter.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getMechanicalShutterEnabled
      void getMechanicalShutterEnabled(@NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callback)
      Package:dji.sdk.camera
      Description:

      Determines whether the mechanical shutter is enabled. It is only valid when isMechanicalShutterSupported returns true.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callbackThe execution callback with the returned boolean value.


      Video Recording

      Anti Flicker Frequency
      method
      method setAntiFlickerFrequency
      void setAntiFlickerFrequency(@NonNull SettingsDefinitions.AntiFlickerFrequency antiFlickerFrequency,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the lens anti-flicker frequency for video recording. Precondition: The exposure mode must be Program. Note: for the Z30 camera, changing anti-flicker will reboot the camera before the setting takes effect. It is not supported by Zenmuse H20 Series.

      Input Parameters:
      @NonNull SettingsDefinitions.AntiFlickerFrequency antiFlickerFrequencyAnti-flicker value to set for the camera. See AntiFlickerFrequency to view all the possible anti-flicker type settings for the camera.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getAntiFlickerFrequency
      void getAntiFlickerFrequency(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.AntiFlickerFrequency> callback)
      Package:dji.sdk.camera
      Description:

      Gets the lens anti-flicker. It is not supported by Zenmuse H20 Series.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.AntiFlickerFrequency> callbackThe execution callback with the returned value(s).


      Thermal Imaging Camera

      Check Thermal Lens
      method
      method isThermalLens
      boolean isThermalLens()
      Package:dji.sdk.camera
      Description:

      Return true if the current connected device is a thermal imaging lens.

      Return:
      booleanA boolean value.
      Thermal ROI
      method
      method setThermalROI
      void setThermalROI(@NonNull SettingsDefinitions.ThermalROI roi, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the region of interest (ROI). Used to manage color range distribution across the screen to maximize contrast for regions of highest interest. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull SettingsDefinitions.ThermalROI roiAn enum type of the Region of Interest to be used. Please refer to ThermalROI.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalROI
      void getThermalROI(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalROI> callback)
      Package:dji.sdk.camera
      Description:

      Gets the region of interest.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalROI> callbackThe execution callback with the returned value(s).
      Thermal Palette
      method
      method setThermalPalette
      void setThermalPalette(@NonNull SettingsDefinitions.ThermalPalette palette, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the palette. Each palette is a unique look-up table that maps 8-bit temperature values to different colors. Different palettes can be used to help the user better visualize temperature contrast or specific temperature bands.

      Input Parameters:
      @NonNull SettingsDefinitions.ThermalPalette paletteAn enum type of the ThermalPalette to be used.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalPalette
      void getThermalPalette(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalPalette> callback)
      Package:dji.sdk.camera
      Description:

      Gets the palette. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalPalette> callbackThe execution callback with the returned value(s).
      Thermal Scene
      method
      method setThermalScene
      void setThermalScene(@NonNull SettingsDefinitions.ThermalScene scene, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the scene to instantly enhance your image. In all modes except Manual and User modes, the DDE, ACE, SSO, brightness and contrast are set automatically to obtain the best result. In User modes, the contrast and brightness are set automatically to obtain the best results. Any settings that are made in these modes are retained if the scene is changed. In Manual mode, DDE, contrast and brightness are set manually.

      Input Parameters:
      @NonNull SettingsDefinitions.ThermalScene sceneAn enum type for the ThermalScene to be used.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalScene
      void getThermalScene(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalScene> callback)
      Package:dji.sdk.camera
      Description:

      Gets current scene.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalScene> callbackThe execution callback with the returned value(s).
      Thermal DDE
      method
      method setThermalDDE
      void setThermalDDE(@IntRange(from = -20, to = 100) int value, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the Digital Data Enhancement index (for DDE dynamic mode). DDE can be used to enhance image details (sharpen, higher index) and/or suppress fixed pattern noise (soften, lower index). It can be set manually only when the Scene mode is Manual, User1, User2 or User3.

      Input Parameters:
      @IntRange(from = -20, to = 100) int valueInteger in range [-20, 100]. Values less than 0 soften the image and filter fixed pattern noise. Values greater than 0 sharpen the details in the image. Value of 0 results in no enhancement.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalDDE
      void getThermalDDE(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the value of Digital Data Enhancement. The value is available only when the Scene mode is Manual, User1, User2 or User3.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Thermal ACE
      method
      method setThermalACE
      void setThermalACE(@IntRange(from = -8, to = 8) int value, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Set the value of Active Contrast Enhancement. Active contrast enhancement allows for a contrast trade-off between hotter and colder scenes when using 8-bit pixel data. It can be set manually only when the Scene mode is User1, User2 or User3. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      @IntRange(from = -8, to = 8) int valueInteger in range [-8, 8]. <br> value > 0: more contrast in hotter scene content and less contrast in colder scene content (sky, ocean etc.). <br> value < 0: more contrast in colder scene content and less contrast in hotter scene content. <br> value = 0: neutral <br> value = 3: recommended for generic use.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalACE
      void getThermalACE(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the value of Active Contrast Enhancement. The value is available only when the Scene mode is Manual, User1, User2 or User3. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Thermal SSO
      method
      method setThermalSSO
      void setThermalSSO(@IntRange(from = 0, to = 100) int value, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the value of Smart Scene Optimization. When using non-linear histogram equalization to map the 14-bit sensor pixel values to 8-bit pixel values, it can become difficult to determine the difference in temperature of two objects from their different shades of gray. SSO allows a percentage of the 14-bit histogram to be mapped linearly to the 8-bit histogram, which will compromise local contrast, but allow for more accurate visual radiometric measurements. This is particularly useful for bi-modal scenes. It can be set manually only when the Scene mode is User1, User2 or User3. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      @IntRange(from = 0, to = 100) int valuePercentage of histogram to map linearly [0, 100].
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalSSO
      void getThermalSSO(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the value of Smart Scene Optimization. The value is available only when the Scene mode is Manual, User1, User2 or User3. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Thermal Brightness
      method
      method setThermalBrightness
      void setThermalBrightness(@IntRange(from = 0, to = 16383) int brightness,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the brightness of the image. It can be set manually only when the Scene mode is Manual.

      Input Parameters:
      @IntRange(from = 0, to = 16383) int brightnessThe integer value falls in [0, 16383].
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalBrightness
      void getThermalBrightness(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the value of brightness. The value is available only when the Scene mode is Manual, User1, User2 or User3.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Thermal Contrast
      method
      method setThermalContrast
      void setThermalContrast(@IntRange(from = 0, to = 255) int contrast,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the value of contrast, with larger values having higher contrast. It can be set manually only when the Scene mode is Manual.

      Input Parameters:
      @IntRange(from = 0, to = 255) int contrastContrast value as an integer with range [0, 255].
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalContrast
      void getThermalContrast(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets contrast value. The value is available only when the Scene mode is Manual, User1, User2 or User3.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Thermal Isotherms Enable
      method
      method setThermalIsothermEnabled
      void setThermalIsothermEnabled(boolean enabled, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Enable or disable Isotherms. Isotherms can be used to highlight specific temperature ranges: When disabled, all 256 values (8-bits) are dedicated to the temperature histogram of the scene. When enabled, only 128 values (0-127) are mapped linearly to temperature. Then three bands 128-175, 176-223 and 224-255 can be mapped to the user defined temperatures to highlight them to the user. Using some of the false color palettes (like RainbowIso) results in a thermal image that is grey scale except for three specific bands highlighted by either reds, blues or greens. Not supported by Mavic 2 Enterprise Advanced.

      Input Parameters:
      boolean enabledtrue if isotherms are enabled.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalIsothermEnabled
      void getThermalIsothermEnabled(@NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callback)
      Package:dji.sdk.camera
      Description:

      Determines whether Isotherms are enabled. true if Isotherms are enabled. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Boolean> callbackThe execution callback with the returned value(s).
      Thermal Isotherm Unit
      method
      method setThermalIsothermUnit
      void setThermalIsothermUnit(@NonNull SettingsDefinitions.ThermalIsothermUnit unit, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the unit of the Isotherm ranges to either Celsius or percent. Different units results in different value ranges for Isotherms.

      Input Parameters:
      @NonNull SettingsDefinitions.ThermalIsothermUnit unitAn enum type of the ThermalIsothermUnit to be used. Please refer to ThermalIsothermUnit.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalIsothermUnit
      void getThermalIsothermUnit(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalIsothermUnit> callback)
      Package:dji.sdk.camera
      Description:

      Gets the units for Isotherm ranges.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalIsothermUnit> callbackThe execution callback with the returned value(s).
      Thermal Isotherm Upper Value
      method
      method setThermalIsothermUpperValue
      void setThermalIsothermUpperValue(@IntRange(from = 0, to = 100) int value,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the upper threshold value for Isotherm. All temperature values above this will use colors 224-255 from the palette.

      Input Parameters:
      @IntRange(from = 0, to = 100) int valueIf the unit is percentage, the allowed range is [0,100].
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalIsothermUpperValue
      void getThermalIsothermUpperValue(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the upper threshold value for Isotherm. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Thermal Isotherm Middle Value
      method
      method setThermalIsothermMiddleValue
      void setThermalIsothermMiddleValue(@IntRange(from = 0, to = 100) int value,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the middle threshold value for Isotherm. Temperature values between the middle and upper Isotherm threshold will be displayed with colors 176-223 from the palette. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      @IntRange(from = 0, to = 100) int valueIf the unit is percentage, the value falls in [0,100]. If the unit is Celsius, the value range is [-40, 550]. The value can only be equal or larger than lower threshold and equal or smaller than upper threshold.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalIsothermMiddleValue
      void getThermalIsothermMiddleValue(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the middle threshold value for Isotherm. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Thermal Isotherm Lower Value
      method
      method setThermalIsothermLowerValue
      void setThermalIsothermLowerValue(@IntRange(from = 0, to = 100) int value,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the lower threshold value for Isotherm. Temperature values between the lower and middle Isotherm threshold will be displayed with colors 128-175 from the palette. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @IntRange(from = 0, to = 100) int valueIf the unit is percentage, the value falls in [0,100].
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalIsothermLowerValue
      void getThermalIsothermLowerValue(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the lower threshold value for Isotherm. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned value(s).
      Thermal Gain Mode
      method
      method setThermalGainMode
      void setThermalGainMode(@NonNull SettingsDefinitions.ThermalGainMode mode, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the gain mode. Low gain mode can be used for scenes with temperatures ranging from -40 to 550 degrees Celsius. For higher contrast, the high gain mode can be used by for temperatures between -25 to 135 degrees Celsius for the 640x512 camera and -25 to 100 degrees Celsius for 324 x 256 camera. Mavic 2 Enterprise Dual has different temperature range from other thermal imaging cameras. Therefore, for Mavic 2 Enterprise Dual, the low gain mode can be used from -10 to 140 degrees Celsius. The high gain mode can be used from -10 to 400 degree Celsius, for Mavic 2 Enterprise Advanced, the low gain mode can be used from -20 to 450 degrees Celsius. The high gain mode can be used from -20 to 150 degree Celsius

      Input Parameters:
      @NonNull SettingsDefinitions.ThermalGainMode modeAn enum type of the ThermalGainMode to be used.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalGainMode
      void getThermalGainMode(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalGainMode> callback)
      Package:dji.sdk.camera
      Description:

      Gets the gain mode. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalGainMode> callbackThe execution callback with the returned value(s).
      Thermal Measurement Mode
      method
      method setThermalMeasurementMode
      void setThermalMeasurementMode(@NonNull ThermalMeasurementMode mode, @Nullable CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the mode for thermal measurement. Supported only by thermal imaging cameras. Supported by the thermal lens of Zenmuse H20T and H20N and Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull ThermalMeasurementMode modeThe desired measurement mode.
      @Nullable CommonCallbacks.CompletionCallback callbackCompletion block that receives the getter execution result.
      method getThermalMeasurementMode
      void getThermalMeasurementMode(@NonNull CommonCallbacks.CompletionCallbackWith<ThermalMeasurementMode> callback)
      Package:dji.sdk.camera
      Description:

      Gets the mode for thermal measurement. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull CommonCallbacks.CompletionCallbackWith<ThermalMeasurementMode> callbackThe execution callback with the returned value(s).
      Thermal Digital Zoom Factor
      method
      method setThermalDigitalZoomFactor
      void setThermalDigitalZoomFactor(@NonNull SettingsDefinitions.ThermalDigitalZoomFactor factor,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Adjusts the digital zoom. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull SettingsDefinitions.ThermalDigitalZoomFactor factorFor resolution 640 x 512, x1,x2,x4,x8 can be set. For resolution 336 x 256, only x1,x2,x4 can be set. Please refer to ThermalDigitalZoomFactor in DJICameraSettingsDef.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalDigitalZoomFactor
      void getThermalDigitalZoomFactor(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalDigitalZoomFactor> callback)
      Package:dji.sdk.camera
      Description:

      Gets current digital zoom.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalDigitalZoomFactor> callbackThe execution callback with the returned value(s).
      Thermal Profile
      method
      method getThermalProfile
      void getThermalProfile(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalProfile> callback)
      Package:dji.sdk.camera
      Description:

      Gets the thermal imaging camera profile. The profile includes information about resolution, frame rate and focal length. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalProfile> callbackThe execution callback with the returned value(s).
      Thermal Spot Metering Target Point
      method
      method getThermalSpotMeteringTargetPoint
      void getThermalSpotMeteringTargetPoint(
      @NonNull final CommonCallbacks.CompletionCallbackWith<PointF> callback)
      Package:dji.sdk.camera
      Description:

      Gets the spot metering target point if one is set, if not then returns CGPointZero. Supported by the thermal lens of Zenmuse H20T and H20N and Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<PointF> callbackThe execution callback with the returned value(s).
      method setThermalSpotMeteringTargetPoint
      void setThermalSpotMeteringTargetPoint(@NonNull PointF targetPoint,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the spot metering target point which then invoke the callback from setThermalTemperatureCallback. This method requires a relative point that is proportional to the dimension of the camera video dimension, the x, and y values must all be between 0 and 1.0. You should call setThermalMeasurementMode to set the measurement mode to SPOT_METERING first. Supported by the thermal lens of Zenmuse H20T and H20N and Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull PointF targetPointThe desired target point.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Thermal Metering Area
      method
      method getThermalMeteringArea
      void getThermalMeteringArea(@NonNull final CommonCallbacks.CompletionCallbackWith<RectF> callback)
      Package:dji.sdk.camera
      Description:

      Get a rect representing the currently set metering area for the thermal scene. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<RectF> callbackThe execution callback with the returned value(s).
      method setThermalMeteringArea
      void setThermalMeteringArea(@NonNull RectF area, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Set the metering area for a rectangle inside the thermal ismage scene, which allows the camera to transmit aggregate temperature computations via the onUpdate delegate method. See ThermalAreaTemperatureAggregations for the statistical values that are available. This method requires a relative rect that is proportional to the rect of the thermal scene, the x, y, width, and height values must all be between 0 and 1.0. You should call setThermalMeasurementMode to set the measurement mode to AREA_METERING first. Supported by the thermal lens of Zenmuse H20T and H20N and Mavic 2 Enterprise Advanced.

      Input Parameters:
      @NonNull RectF areaThe desired thermal metering area.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Thermal FFC Mode
      method
      method getThermalFFCMode
      void getThermalFFCMode(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalFFCMode> callback)
      Package:dji.sdk.camera
      Description:

      Get the currently set flat-field correction (FFC) mode.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalFFCMode> callbackThe execution callback with the returned value(s).
      method setThermalFFCMode
      void setThermalFFCMode(@NonNull SettingsDefinitions.ThermalFFCMode mode, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Set the flat-field correction (FFC) mode. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull SettingsDefinitions.ThermalFFCMode modeThe desired FFC mode.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Thermal FFC
      method
      method triggerThermalFFC
      void triggerThermalFFC(@Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Trigger flat-field correction. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with result of the trigger action.
      Thermal Custom External Scene Settings Profile
      method
      method getThermalCustomExternalSceneSettingsProfile
      void getThermalCustomExternalSceneSettingsProfile(
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalCustomExternalSceneSettingsProfile> callback)
      Package:dji.sdk.camera
      Description:

      Gets the currently set custom user profile. This profile represents user-set external scene parameters for the thermal scene. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.ThermalCustomExternalSceneSettingsProfile> callbackThe execution callback with the returned value(s).
      method setThermalCustomExternalSceneSettingsProfile
      void setThermalCustomExternalSceneSettingsProfile(@NonNull SettingsDefinitions.ThermalCustomExternalSceneSettingsProfile profile,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the custom user profile. This profile represents user-set external scene parameters for the thermal scene. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull SettingsDefinitions.ThermalCustomExternalSceneSettingsProfile profileThe desired user profile setting.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Thermal Temperature Unit
      method
      method setThermalTemperatureUnit
      void setThermalTemperatureUnit(final SettingsDefinitions.TemperatureUnit temperatureUnit, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the temperature unit. Not supported by Mavic 2 Enterprise Advanced.

      Input Parameters:
      final SettingsDefinitions.TemperatureUnit temperatureUnitTemperature unit to set.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getThermalTemperatureUnit
      void getThermalTemperatureUnit(final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.TemperatureUnit> callback)
      Package:dji.sdk.camera
      Description:

      Gets the temperature unit.

      Input Parameters:
      final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.TemperatureUnit> callbackThe execution callback with the returned execution result.
      Display Mode
      method
      method setDisplayMode
      void setDisplayMode(final SettingsDefinitions.DisplayMode mode, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the display mode to coordinate the video feeds from both the visual camera and the thermal camera. Only applies to the thermal infrared video feed. For Zemmuse H20T and H20N, you should set setCameraVideoStreamSource with INFRARED_THERMAL first. Only supported by Zenmuse H20T and H20N.and Mavic 2 Enterprise Advanced.

      Input Parameters:
      final SettingsDefinitions.DisplayMode modeThe display mode to set.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getDisplayMode
      void getDisplayMode(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.DisplayMode> callback)
      Package:dji.sdk.camera
      Description:

      Gets the display mode. The display mode determine the way to coordinate the video feeds from both the visual camera and the thermal camera.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.DisplayMode> callbackThe execution callback with the returned execution result.
      PIP Position
      method
      method setPIPPosition
      void setPIPPosition(final SettingsDefinitions.PIPPosition position, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the thermal window's position relative to the visual window. Only applies to the thermal infrared video feed. The setting is valid when the display mode is PIP. Refer to setDisplayMode and getDisplayMode.

      Input Parameters:
      final SettingsDefinitions.PIPPosition positionThe position to set.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getPIPPosition
      void getPIPPosition(@NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.PIPPosition> callback)
      Package:dji.sdk.camera
      Description:

      Gets the PIP position which determines the thermal window's position relative to the visual window. The setting is valid when the display mode is PIP. Refer to setDisplayMode and getDisplayMode.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<SettingsDefinitions.PIPPosition> callbackThe execution callback with the returned execution result.
      MSX Level
      method
      method setMSXLevel
      void setMSXLevel(@IntRange(from = 0, to = 100) int level, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the level for MSX display mode. The range for level is [0, 100]. When it is 0, the visible spectrum definition is invisible. When it is 100, the visual spectrum definition is the most obvious. Only applies to the thermal infrared video feed.

      Input Parameters:
      @IntRange(from = 0, to = 100) int levelThe MSX level to set with range [0, 100].
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getMSXLevel
      void getMSXLevel(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the level for MSX display mode. The range for level is [0, 100]. When it is 0, the visible spectrum definition is invisible. When it is 100, the visual spectrum definition is the most obvious. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned execution result.
      Dual Feed Horizontal Alignment Offset
      method
      method setDualFeedHorizontalAlignmentOffset
      void setDualFeedHorizontalAlignmentOffset(@IntRange(from = -100, to = 100) int offset, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the horizontal alignment offset between the video feeds from both the visual lens and the thermal lens. The alignment is applied to the MSX display mode. Different camera results in different value ranges.

      Input Parameters:
      @IntRange(from = -100, to = 100) int offsetRange from -100 to 100 for XT2, from -40 to 40 for Mavic 2 Enterprise Dual.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getDualFeedHorizontalAlignmentOffset
      void getDualFeedHorizontalAlignmentOffset(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the horizontal alignment offset between the video feeds from both the visual lens and the thermal lens. The alignment is applied to the MSX display mode. Different camera results in different value ranges.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned execution result.
      Dual Feed Vertical Alignment Offset
      method
      method setDualFeedVerticalAlignmentOffset
      void setDualFeedVerticalAlignmentOffset(@IntRange(from = -40, to = 40) int offset, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the vertical alignment offset between the video feeds from both the visual lens and the thermal lens. The alignment is applied to the MSX display mode. Different camera results in different value ranges.

      Input Parameters:
      @IntRange(from = -40, to = 40) int offsetRange from -8 to 8 for XT2, from -40 to 40 for Mavic 2 Enterprise Dual.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getDualFeedVerticalAlignmentOffset
      void getDualFeedVerticalAlignmentOffset(@NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callback)
      Package:dji.sdk.camera
      Description:

      Gets the vertical alignment offset between the video feeds from both the visual lens and the thermal Lens. The alignment is applied to the MSX display mode. Different camera results in different value ranges.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<Integer> callbackThe execution callback with the returned execution result.
      Thermal Atmospheric Temperature
      method
      method setThermalAtmosphericTemperature
      void setThermalAtmosphericTemperature(float temperature, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the temperature of the atmosphere between the scene and the camera. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      float temperatureThe assumed temperature of the atmosphere between the camera and the scene, can be between -50 and 327.67 degrees Celsius.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Thermal Atmospheric Transmission Coefficient
      method
      method setThermalAtmosphericTransmissionCoefficient
      void setThermalAtmosphericTransmissionCoefficient(final float coefficient,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the transmission coefficient of the atmosphere between the scene and the camera. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      final float coefficientThe desired atmospheric temperature, can be between 50 and 100.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Thermal Background Temperature
      method
      method setThermalBackgroundTemperature
      void setThermalBackgroundTemperature(final float temperature, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the assumed temperature reflected by the background of the scene, can be between -50 and 327.67 degrees Celsius. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      final float temperatureThe desired background reflected temperature.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Thermal Scene Emissivity
      method
      method setThermalSceneEmissivity
      void setThermalSceneEmissivity(final float emissivity, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the emissivity of the thermal scene, can be between 50 and 100. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      final float emissivityThe desired scene emissivity.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Thermal Window Reflection
      method
      method setThermalWindowReflection
      void setThermalWindowReflection(final float reflection, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets assumed window reflection coefficient, can be between 0 and X where X is the window transmission coefficient parameter. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      final float reflectionThe desired window reflection coefficient.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Thermal Window Reflected Temperature
      method
      method setThermalWindowReflectedTemperature
      void setThermalWindowReflectedTemperature(final float temperature,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the temperature reflected in the window, can be between -50 and 327.67 degrees Celsius. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      final float temperatureThe desired window reflected temperature.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Thermal Window Temperature
      method
      method setThermalWindowTemperature
      void setThermalWindowTemperature(final float temperature, @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the window temperature, can be between -50 and 327.67 degrees Celsius. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      final float temperatureThe desired window temperature.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method setThermalWindowTransmissionCoefficient
      void setThermalWindowTransmissionCoefficient(final float coefficient,
      @Nullable final CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the window transmission coefficient, can be between 50 and 100-X where X is the window reflection. Not supported by Zenmuse H20T and H20N.

      Input Parameters:
      final float coefficientThe desired window transmission coefficient.
      @Nullable final CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      method getZoomBoxRelativeFov
      void getZoomBoxRelativeFov(@NonNull final CommonCallbacks.CompletionCallbackWith<ZoomRelativeFov> callback)
      Package:dji.sdk.camera
      Description:

      Get the FOV after camera's focal distance changed.

      Input Parameters:
      @NonNull final CommonCallbacks.CompletionCallbackWith<ZoomRelativeFov> callbackThe execution callback with the returned value(s).
      Get Gain Temperature Range
      method
      method getThermalGainModeRange
      void getThermalGainModeRange(SettingsDefinitions.ThermalGainMode mode, @NonNull final CommonCallbacks.CompletionCallbackWith<float []> callback)
      Package:dji.sdk.camera
      Description:

      Gets temperature range of specific gain mode. Only supported by Zenmuse H20T and H20N.

      Input Parameters:
      SettingsDefinitions.ThermalGainMode modeGiven camera gain mode.
      @NonNull final CommonCallbacks.CompletionCallbackWith<float []> callbackCompletion block to receive the result.The temperature measurement range of given gain mode.
      method setInfraredThermalCameraSensorBurningProtectionEnabled
      void setInfraredThermalCameraSensorBurningProtectionEnabled(boolean isEnabled, CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Enables or disables the infrared sensor protection. If the sensor protection is enabled, the infrared thermal camera shutter might be closed. Only supported by Zenmuse H20T and H20N.

      Input Parameters:
      boolean isEnabledEnable or disable infrared sensor protection.
      CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.
      Enable Infrared Thermal Camera
      method
      method setInfraredThermalCameraShutterEnabled
      void setInfraredThermalCameraShutterEnabled(CommonCallbacks.CompletionCallback callback)
      Package:dji.sdk.camera
      Description:

      Enables the infrared thermal camera. Infrared thermal camera shutter may be closed, if the sensor protection is enabled. Only supported by Zenmuse H20T and H20N.

      Input Parameters:
      CommonCallbacks.CompletionCallback callbackThe execution callback with the returned execution result.


      State Updates

      Thermal Area Temperature Aggregations
      method
      method setThermalAreaTemperatureAggregationsCallback
      void setThermalAreaTemperatureAggregationsCallback(
      @Nullable ThermalAreaTemperatureAggregations.Callback areaTemperatureAggregationsUpdatedCallback)
      Package:dji.sdk.camera
      Description:

      Sets the thermal lens temperature aggregation update callback. Callback will be called when there are new min, max, and average values available for the set spot metering area. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @Nullable ThermalAreaTemperatureAggregations.Callback areaTemperatureAggregationsUpdatedCallbackThe Callback object to set as the callback.
      Thermal External Scene Settings
      method
      method setThermalExternalSceneSettingsCallback
      void setThermalExternalSceneSettingsCallback(
      @Nullable ThermalExternalSceneSettings.Callback thermalExternalSceneSettingsUpdatedCallback)
      Package:dji.sdk.camera
      Description:

      Sets the thermal lens external scene settings update callback. Callback will get called when updated external scene settings are available. Only supported by XT2.

      Input Parameters:
      @Nullable ThermalExternalSceneSettings.Callback thermalExternalSceneSettingsUpdatedCallbackThe Callback object to set as the callback.
      Thermal Temperature
      method
      method setThermalTemperatureCallback
      void setThermalTemperatureCallback(@Nullable TemperatureDataCallback updateCenterTemperatureCallback)
      Package:dji.sdk.camera
      Description:

      Sets the thermal lens temperature update callback. Callback is used when there is a new temperature value available for the set spot metering target point. Supported by the thermal lens of Zenmuse H20T and H20N.

      Input Parameters:
      @Nullable TemperatureDataCallback updateCenterTemperatureCallbackThe Callback object to set as the callback. <br> Callback implements an onUpdate method.</br> The Float object contains information about the updated temperature value.
      Exposure Settings
      method
      method setExposureSettingsCallback
      void setExposureSettingsCallback(@Nullable ExposureSettings.Callback callback)
      Package:dji.sdk.camera
      Description:

      Sets the callback for updated exposure parameters. The callback's onUpdate method will be called each time the exposure parameters (ISO, Exposure Compensation, Shutter Speed and Aperture) are updated.

      Input Parameters:
      @Nullable ExposureSettings.Callback callbackThe execution callback.
      Focus State
      method
      method setFocusStateCallback
      void setFocusStateCallback(@Nullable FocusState.Callback updatedLensStateCallback)
      Package:dji.sdk.camera
      Description:

      Callback for updating the state of the current lens.

      Input Parameters:
      @Nullable FocusState.Callback updatedLensStateCallbackThe execution callback.
      Tap Zoom State
      method
      method setTapZoomStateCallback
      void setTapZoomStateCallback(@Nullable final Lens.TapZoomStateCallback callback)
      Package:dji.sdk.camera
      Description:

      Sets the tap zoom state callback. The callback's DJICamera_DJILens_TapZoomStateCallbackInterface_onUpdate method will be called when the lens zoom state is updated. Supported by the zoom lens and the wide lens of Zenmuse H20 Series and Mavic 2 Enterprise Advanced.

      Input Parameters:
      @Nullable final Lens.TapZoomStateCallback callbackCompletion block that receives the execution result.
      Thermal Global Temperature
      method
      method setThermalGlobalTemperatureCallback
      void setThermalGlobalTemperatureCallback(@Nullable final Lens.ThermalGlobalTemperatureCallback callback)
      Package:dji.sdk.camera
      Description:

      Callback to update current global minimum temperature and maximum temperature.

      Input Parameters:
      @Nullable final Lens.ThermalGlobalTemperatureCallback callbackCompletion callback that receives the execution result.
      Laser Measure Information
      method
      method setLaserMeasureInformationCallback
      void setLaserMeasureInformationCallback(@Nullable LaserMeasureInformation.Callback laserMeasureInformationCallback)
      Package:dji.sdk.camera
      Description:

      Sets the laser measure information callback. When laser information would been updated, it call Callback to update the laser state information. The laser sensor must be at least 3m from the target point. It is only supported by Zenmuse H20 series.

      Input Parameters:
      @Nullable LaserMeasureInformation.Callback laserMeasureInformationCallbackCompletion block that receives the execution result.