DJI Mobile SDK Documentation

      class DJICameraKey

      class DJICameraKey
      包:dji.sdk.keyvalue.key
      描述:

      DJICameraKey提供了一组方法来设置和获取相机参数。包括相机类型,拍照录像,镜头设置,红外设置等功能。

      此类从MSDK 5.0开始支持

      类成员:

      基础信息

      相机类型
      final KeyCameraType
      static final DJIKeyInfo<CameraType> KeyCameraType = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraType", new SingleValueConverter<>(CameraType.class,CameraTypeMsg.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: CameraType
      获取相机类型。

      MSDK 5.0开始支持


      拍照录像

      相机工作模式
      final KeyCameraFlatModeRange
      static final DJIKeyInfo<List<CameraFlatMode>> KeyCameraFlatModeRange = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraFlatModeRange", new SingleValueConverter<>((Class)List.class,QuickCameraModeRangeMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("QuickCameraModeRange")
      包:dji.sdk.keyvalue.key
      描述:

      参数:list<CameraFlatMode>
      获取当前相机可设置的工作模式。 TODO:考虑是否需要在msdk重新封装这个key?把flatmode和cameramode抹平。

      MSDK 5.0开始支持

      final KeyCameraFlatMode
      static final DJIKeyInfo<CameraFlatMode> KeyCameraFlatMode = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraFlatMode", new SingleValueConverter<>(CameraFlatMode.class,QuickCameraModeValue.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("QuickCameraMode")
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraFlatMode
      设置相机的工作模式,包括拍照和录像模式。可通过KeyCameraFlatModeRange获取当前相机可设置的工作模式。该模式对所有镜头生效。

      TODO:考虑是否需要在msdk重新封装这个key?把flatmode和cameramode抹平。
      



      MSDK 5.0开始支持

      final KeyIsShootingPhoto
      static final DJIKeyInfo<Boolean> KeyIsShootingPhoto = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"IsShootingPhoto", SingleValueConverter.BooleanConverter).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: Boolean

      true表示相机正在拍照。

      MSDK 5.0开始支持

      final KeyStartShootPhoto
      static final DJIActionKeyInfo<EmptyMsg,EmptyMsg> KeyStartShootPhoto = new DJIActionKeyInfo<>(componentType.value(),subComponentType.value(),"StartShootPhoto", EmptyValueConverter.converter,EmptyValueConverter.converter).canGet(false).canSet(false).canListen(false).canPerformAction(true).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      开始拍照。相机必须处于拍照模式。对于红外镜头,用户可以在录制视频时拍摄照片。如果拍照模式为PHOTO_INTERVAL,则需要调用KeyStopShootPhoto才能让相机停止拍照。使用此方法前应检查SD卡状态,以确保有足够的空间。 TODO:红外镜头的描述需要确认。补充SD卡容量获取key

      MSDK 5.0开始支持

      final KeyStopShootPhoto
      static final DJIActionKeyInfo<EmptyMsg,EmptyMsg> KeyStopShootPhoto = new DJIActionKeyInfo<>(componentType.value(),subComponentType.value(),"StopShootPhoto", EmptyValueConverter.converter,EmptyValueConverter.converter).canGet(false).canSet(false).canListen(false).canPerformAction(true).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      停止拍照。当拍照模式设置为PHOTO_INTERVALPHOTO_REGIONAL_SRPHOTO_PANO,并且调用了KeyStartShootPhoto开始拍照,你可以调用此接口停止拍照。如果拍照模式设置为单张,拍完单张后相机会自动停止拍照,无需调用此接口。

      MSDK 5.0开始支持

      final KeyCaptureCameraStreamSettings
      static final DJIKeyInfo<CameraStreamSettingsInfo> KeyCaptureCameraStreamSettings = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CaptureCameraStreamSettings", new DJIValueConverter<>(CameraStreamSettingsInfo.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraStreamSettingsInfo
      多镜头拍照存储设置。默认情况下,此相机的所有镜头都会拍照,并且照片会存储到SD卡中。你可以调用此接口选择需要的镜头进行拍照和存储。在调用该接口之前,您需要调用KeyCameraFlatMode把相机工作模式设置为PHOTO_NORMAL

      MSDK 5.0开始支持

      final KeyPhotoFileFormatRange
      static final DJIKeyInfo<List<PhotoFileFormat>> KeyPhotoFileFormatRange = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"PhotoFileFormatRange", new SingleValueConverter<>((Class)List.class,PhotoStorageFormatRangeMsg.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("PhotoStorageFormatRange")
      包:dji.sdk.keyvalue.key
      描述:

      参数:list<PhotoFileFormat>
      获取相机的照片格式范围。 TODO: M30和M30T相机只支持JPEG,RAW,RAW+JPEG。但是fly上只有JPEG。需要csdk确认

      MSDK 5.0开始支持

      final KeyPhotoFileFormat
      static final DJIKeyInfo<PhotoFileFormat> KeyPhotoFileFormat = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"PhotoFileFormat", new SingleValueConverter<>(PhotoFileFormat.class,PhotoStorageFormatMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("PhotoStorageFormat")
      包:dji.sdk.keyvalue.key
      描述:

      参数:PhotoFileFormat
      设置和获取相机支持的照片格式。

      MSDK 5.0开始支持

      final KeyPhotoIntervalShootSettings
      static final DJIKeyInfo<PhotoIntervalShootSettings> KeyPhotoIntervalShootSettings = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"PhotoIntervalShootSettings", new DJIValueConverter<>(PhotoIntervalShootSettings.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:PhotoIntervalShootSettings
      设置和获取定时拍照的张数和拍照间隔时间。在KeyCameraFlatModePHOTO_INTERVAL时使用。 TODO: 补充重写后的key的间隔拍照枚举。 TODO:quickmode重写

      MSDK 5.0开始支持

      final KeyPhotoIntervalCountdown
      static final DJIKeyInfo<Integer> KeyPhotoIntervalCountdown = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"PhotoIntervalCountdown", SingleValueConverter.IntegerConverter).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:Integer
      获取定时拍照的倒计时,当设置了定时拍照模式后,调用KeyStartShootPhoto启动拍照后,相机会以拍照间隔时间进行倒数,倒数到0后会进行一次拍照。在KeyCameraFlatModePHOTO_INTERVAL时使用。

      MSDK 5.0开始支持

      final KeySuperResolutionInfo
      static final DJIKeyInfo<SuperResolutionInfo> KeySuperResolutionInfo = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"SuperResolutionInfo", new DJIValueConverter<>(SuperResolutionInfo.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("SuperResolutionState")
      包:dji.sdk.keyvalue.key
      描述:

      参数:SuperResolutionInfo
      获取超清矩阵拍照的状态和信息。在KeyCameraFlatModePHOTO_REGIONAL_SR时使用。

      MSDK 5.0开始支持

      final KeySuperResolutionCaptureArea
      static final DJIKeyInfo<DoubleRect4Sides> KeySuperResolutionCaptureArea = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"SuperResolutionCaptureArea", new DJIValueConverter<>(DoubleRect4Sides.class)).canGet(true).canSet(true).canListen(false).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:DoubleRect4Sides
      设置超清矩阵拍照的区域。区域范围:getMaxArea。在KeyCameraFlatModePHOTO_REGIONAL_SR时使用。

      MSDK 5.0开始支持

      final KeyPhotoPanoramaMode
      static final DJIKeyInfo<PhotoPanoramaMode> KeyPhotoPanoramaMode = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"PhotoPanoramaMode", new SingleValueConverter<>(PhotoPanoramaMode.class,VisionPhotoPanoramaModeMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("VisionPhotoPanoramaMode")
      包:dji.sdk.keyvalue.key
      描述:

      参数:PhotoPanoramaMode
      设置全景拍照模式。在KeyCameraFlatModePHOTO_PANO时使用。

      MSDK 5.0开始支持

      final KeyIsShootingPhotoPanorama
      static final DJIKeyInfo<Boolean> KeyIsShootingPhotoPanorama = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"IsShootingPhotoPanorama", SingleValueConverter.BooleanConverter).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("IsShootingVisionPanoramaPhoto")
      包:dji.sdk.keyvalue.key
      描述:

      参数:Boolean
      true表示正在进行全景拍照中。在KeyCameraFlatModePHOTO_PANO时使用。

      MSDK 5.0开始支持

      final KeyPhotoPanoramaProgress
      static final DJIKeyInfo<Integer> KeyPhotoPanoramaProgress = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"PhotoPanoramaProgress", SingleValueConverter.IntegerConverter).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("PanoramaPhotoCaptureProgress")
      包:dji.sdk.keyvalue.key
      描述:

      参数:Integer
      获取全景拍照的进度百分比。在KeyCameraFlatModePHOTO_PANO时使用。

      MSDK 5.0开始支持

      final KeyIsRecording
      static final DJIKeyInfo<Boolean> KeyIsRecording = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"IsRecording", SingleValueConverter.BooleanConverter).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: Boolean

      true表示相机正在录像。

      MSDK 5.0开始支持

      final KeyStartRecord
      static final DJIActionKeyInfo<EmptyMsg,EmptyMsg> KeyStartRecord = new DJIActionKeyInfo<>(componentType.value(),subComponentType.value(),"StartRecord", EmptyValueConverter.converter,EmptyValueConverter.converter).canGet(false).canSet(false).canListen(false).canPerformAction(true).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      开始录制视频。需要先调用KeyCameraFlatMode把相机工作模式设置为VIDEO_NORMAL。对于红外镜头,用户可以在录制视频时拍摄照片。使用此方法前应检查SD卡状态,以确保有足够的空间。 TODO:红外镜头的描述需要确认。补充SD卡容量获取key

      MSDK 5.0开始支持

      final KeyStopRecord
      static final DJIActionKeyInfo<EmptyMsg,EmptyMsg> KeyStopRecord = new DJIActionKeyInfo<>(componentType.value(),subComponentType.value(),"StopRecord", EmptyValueConverter.converter,EmptyValueConverter.converter).canGet(false).canSet(false).canListen(false).canPerformAction(true).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      停止录制视频。

      MSDK 5.0开始支持

      final KeyRecordingTime
      static final DJIKeyInfo<Integer> KeyRecordingTime = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"RecordingTime", SingleValueConverter.IntegerConverter).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      相机当前录制视频的时长,单位:秒。

      MSDK 5.0开始支持

      final KeyRecordCameraStreamSettings
      static final DJIKeyInfo<CameraStreamSettingsInfo> KeyRecordCameraStreamSettings = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"RecordCameraStreamSettings", new DJIValueConverter<>(CameraStreamSettingsInfo.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraStreamSettingsInfo
      多镜头录像存储设置。默认情况下,此相机的所有镜头都会录像,并且视频会存储到SD卡中。你可以调用此接口选择需要的镜头进行录像和存储。在调用该接口之前,您需要调用KeyCameraFlatMode把相机工作模式设置为VIDEO_NORMAL

      MSDK 5.0开始支持

      final KeyVideoFileFormatRange
      static final DJIKeyInfo<List<VideoFileFormat>> KeyVideoFileFormatRange = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"VideoFileFormatRange", new SingleValueConverter<>((Class)List.class,VideoStorageFormatRangeMsg.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("VideoStorageFormatRange")
      包:dji.sdk.keyvalue.key
      描述:

      参数:list<VideoFileFormat>
      获取相机的录像格式范围。 TODO:M30和M30T相机只支持PM4,但是在fly上只有MOV,需要csdk确认

      MSDK 5.0开始支持

      final KeyVideoFileFormat
      static final DJIKeyInfo<VideoFileFormat> KeyVideoFileFormat = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"VideoFileFormat", new SingleValueConverter<>(VideoFileFormat.class,VideoStorageFormatMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("VideoStorageFormat")
      包:dji.sdk.keyvalue.key
      描述:

      参数:VideoFileFormat
      设置和获取相机支持的视频格式。 TODO: M30和M30T只支持MOV。但是目前所有的格式都可以设置,固件应该是不生效的。 需要在msdk层增加Range key。

      MSDK 5.0开始支持

      final KeyNewlyGeneratedMediaFile
      static final DJIKeyInfo<GeneratedMediaFileInfo> KeyNewlyGeneratedMediaFile = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"NewlyGeneratedMediaFile", new DJIValueConverter<>(GeneratedMediaFileInfo.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:GeneratedMediaFileInfo
      当启动拍照或者录像后,相机会产生新的照片或者视频,可以通过这个接口获取产生的媒体文件信息。

      MSDK 5.0开始支持

      final KeyCustomExpandDirectoryNameSettings
      static final DJIKeyInfo<CustomExpandNameSettings> KeyCustomExpandDirectoryNameSettings = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CustomExpandDirectoryNameSettings", new DJIValueConverter<>(CustomExpandNameSettings.class)).canGet(true).canSet(true).canListen(false).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CustomExpandNameSettings
      设置和获取自定义文件夹的扩展名称。调用此接口后,新生成的媒体文件(视频或照片)将存储在新文件夹中,默认文件夹名加上你设置的扩展名称将成为新文件夹的名称。例如,默认文件夹名为“DJI_202001012359_01”,你设置的自定义文件夹扩展名称为“Mission1”,因此新文件夹的名称将为“DJI_202001012359_01_Mission1”。在一次飞行中,您可以设置多个展开目录名称以创建多个自定义文件夹。

      MSDK 5.0开始支持

      final KeyCustomExpandFileNameSettings
      static final DJIKeyInfo<CustomExpandNameSettings> KeyCustomExpandFileNameSettings = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CustomExpandFileNameSettings", new DJIValueConverter<>(CustomExpandNameSettings.class)).canGet(true).canSet(true).canListen(false).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CustomExpandNameSettings
      设置和获取自定义文件的扩展名称。调用此接口后,默认的文件名加上你设置的扩展名称将成为下一个媒体文件(视频或照片)的名称。例如,默认照片名称为“DJI_2020012091415_999_WIDE.JPG”,您设置的自定义文件的扩展名称为“Waypoint1”,因此新照片的名称将为“DJI_2020012091415_999_WIDE_Waypoint1.JPG”,此操作仅生效一次。如果希望在一次飞行中所有媒体文件的扩展名称相同,则需要在拍摄每张照片之前设置相同的扩展名称。

      MSDK 5.0开始支持

      final KeyCameraStorageInfos
      static final DJIKeyInfo<CameraStorageInfos> KeyCameraStorageInfos = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraStorageInfos", new DJIValueConverter<>(CameraStorageInfos.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("CameraStorageInfoState")
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraStorageInfos
      获取相机SD卡和机载存储器的存储信息。M30和M30T相机机载存储器仅供内部使用。

      MSDK 5.0开始支持

      final KeyCameraVideoCaptionEnabled
      static final DJIKeyInfo<Boolean> KeyCameraVideoCaptionEnabled = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraVideoCaptionEnabled", SingleValueConverter.BooleanConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:Boolean
      true表示开启视频字幕。飞行器的位置、飞行时间和相机参数将保存在SD卡上的视频字幕srt文件中。

      MSDK 5.0开始支持

      final KeyCameraWatermarkSettings
      static final DJIKeyInfo<CameraWatermarkSettings> KeyCameraWatermarkSettings = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraWatermarkSettings", new DJIValueConverter<>(CameraWatermarkSettings.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraWatermarkSettings
      相机水印设置。可以设置照片和视频中是否生成水印。你可以通过KeyWatermarkDisplayContentSettings设置需要水印中显示的内容。通过KeyWatermarkUserCustomInfo设置自定义水印文案。

      MSDK 5.0开始支持

      final KeyWatermarkDisplayContentSettings
      static final DJIKeyInfo<WatermarkDisplayContentSettings> KeyWatermarkDisplayContentSettings = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"WatermarkDisplayContentSettings", new DJIValueConverter<>(WatermarkDisplayContentSettings.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:WatermarkDisplayContentSettings
      相机水印内容设置。可以设置照片和视频中需要显示的水印内容。你可以通过KeyWatermarkUserCustomInfo设置自定义水印文案。

      MSDK 5.0开始支持

      final KeyWatermarkUserCustomInfo
      static final DJIKeyInfo<String> KeyWatermarkUserCustomInfo = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"WatermarkUserCustomInfo", SingleValueConverter.StringConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:String
      设置和获取水印中自定义文案。你可以通过KeyWatermarkDisplayContentSettings设置是否显示自定义文案。

      MSDK 5.0开始支持

      final KeyLockGimbalDuringShootPhotoEnabled
      static final DJIKeyInfo<Boolean> KeyLockGimbalDuringShootPhotoEnabled = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"LockGimbalDuringShootPhotoEnabled", SingleValueConverter.BooleanConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: Boolean

      true表示相机拍照时会锁定云台。此功能开启后可避免飞行器运动对成像效果造成影响。

      MSDK 5.0开始支持

      final KeyAutoTurnOffLEDMode
      static final DJIKeyInfo<AutoTurnOffLEDMode> KeyAutoTurnOffLEDMode = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"AutoTurnOffLEDMode", new SingleValueConverter<>(AutoTurnOffLEDMode.class,AutoTurnOffLEDModeMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: AutoTurnOffLEDMode

      设置拍照录像时自动关闭LED灯。包括前后机臂灯和夜航灯。

      MSDK 5.0开始支持

      激光模式
      final KeyLaserWorkMode
      static final DJIKeyInfo<LaserWorkMode> KeyLaserWorkMode = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"LaserWorkMode", new SingleValueConverter<>(LaserWorkMode.class,LaserWorkModeMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: LaserWorkMode

      设置激光工作模式。可选择增强模式或按需开启激光。重启相机后激光模块将恢复为增强模式。

      MSDK 5.0开始支持

      final KeyLaserMeasureEnabled
      static final DJIKeyInfo<Boolean> KeyLaserMeasureEnabled = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"LaserMeasureEnabled", SingleValueConverter.BooleanConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("LaserMeasureEnable")
      包:dji.sdk.keyvalue.key
      描述:

      参数: Boolean

      开启或者关闭激光模块。当把KeyLaserWorkMode设置为OPEN_ON_DEMAND时,可通过此接口按需要开启激光模块。

      MSDK 5.0开始支持


      镜头设置

      final KeyCamearaVideoStreamSource
      static final DJIKeyInfo<CameraVideoStreamSourceType> KeyCamearaVideoStreamSource = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CamearaVideoStreamSource", new SingleValueConverter<>(CameraVideoStreamSourceType.class,LiveViewSourceCameraMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("LiveViewCameraSource")
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraVideoStreamSourceType
      设置相机视频源。对于多镜头相机,视频有不同的镜头来源。设置相机视频源后,当前的实时视频流会切换为设置的镜头视频流。

      MSDK 5.0开始支持

      final KeyExposureModeRange
      static final DJIKeyInfo<List<CameraExposureMode>> KeyExposureModeRange = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ExposureModeRange", new SingleValueConverter<>((Class)List.class,CameraExposureModeRangeMsg.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:list<CameraExposureMode>
      获取所选镜头的曝光模式范围。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyExposureMode
      static final DJIKeyInfo<CameraExposureMode> KeyExposureMode = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ExposureMode", new SingleValueConverter<>(CameraExposureMode.class,CameraExposureModeMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraExposureMode
      设置所选镜头的曝光模式。曝光模式决定了光圈、快门速度、ISO是否可被自动或手动设置。可通过KeyExposureModeRange获取可设置的曝光模式。 CameraVideoStreamSourceTypeINFRARED_CAMERA时,不能设置曝光模式。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyExposureCompensationRange
      static final DJIKeyInfo<List<CameraExposureCompensation>> KeyExposureCompensationRange = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ExposureCompensationRange", new SingleValueConverter<>((Class)List.class,CameraExposureCompensationRangeMsg.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:list<CameraExposureCompensation>
      获取相机镜头的曝光补偿值范围。

      MSDK 5.0开始支持

      final KeyExposureCompensation
      static final DJIKeyInfo<CameraExposureCompensation> KeyExposureCompensation = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ExposureCompensation", new SingleValueConverter<>(CameraExposureCompensation.class,CameraExposureCompensationMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraExposureCompensation
      设置相机镜头的曝光补偿值。可通过KeyExposureCompensationRange获取可设置的曝光补偿值。要使用此功能,请通过KeyCamearaVideoStreamSource接口获取到当前的实时视频源,并且将当前实时视频源的镜头曝光模式设置为PROGRAM

      MSDK 5.0开始支持

      自动曝光
      final KeyAELockEnabled
      static final DJIKeyInfo<Boolean> KeyAELockEnabled = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"AELockEnabled", SingleValueConverter.BooleanConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:Boolean
      相机镜头的自动曝光锁定。如果启用了自动曝光锁定,则无法使用测光KeyCameraMeteringMode功能。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头,红外不可设置。

      MSDK 5.0开始支持

      final KeyCameraMeteringMode
      static final DJIKeyInfo<CameraMeteringMode> KeyCameraMeteringMode = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraMeteringMode", new SingleValueConverter<>(CameraMeteringMode.class,CameraMeteringModeMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraMeteringMode
      设置相机镜头的测光模式。如果你想使用中心测光或者平均测光功能,你只需要设置一次CENTER或者AVERAGE,镜头会进行一次测光。如果你想使用区域测光功能,则需要调用KeySpotMeteringTargetArea设置测光区域后,镜头会进行一次区域测光。
      注意:如果你想使用测光功能,请使用KeyExposureMode把曝光模式设置为PROGRAMSHUTTER_PRIORITY或者APERTURE_PRIORITY,并且调用KeyAELockEnabled把自动曝光锁定设置为false

      MSDK 5.0开始支持

      final KeySpotMeteringTargetArea
      static final DJIKeyInfo<DoubleRect> KeySpotMeteringTargetArea = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"SpotMeteringTargetArea", new DJIValueConverter<>(DoubleRect.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:DoubleRect
      相机镜头区域测光。DoubleRect中(x,y)为归一化(0-1)的坐标位置,width和height是归一化(0-1)的区域大小。如果width,height不为0,则(x,y)为左上角坐标,用于区域测光。如果width,height为都0,则(x,y)表示中心点坐标,用于点测光。

      MSDK 5.0开始支持

      final KeyISORange
      static final DJIKeyInfo<List<CameraISO>> KeyISORange = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ISORange", new SingleValueConverter<>((Class)List.class,CameraISORangeMsg.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:list<CameraISO>
      获取相机镜头的ISO范围。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyISO
      static final DJIKeyInfo<CameraISO> KeyISO = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ISO", new SingleValueConverter<>(CameraISO.class,CameraISOMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraISO
      设置和获取相机镜头的ISO数值。可通过KeyISORange获取ISO范围。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyShutterSpeedRange
      static final DJIKeyInfo<List<CameraShutterSpeed>> KeyShutterSpeedRange = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ShutterSpeedRange", new SingleValueConverter<>((Class)List.class,CameraShutterSpeedRangeMsg.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:list<CameraShutterSpeed>
      获取相机镜头的快门速度范围。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyShutterSpeed
      static final DJIKeyInfo<CameraShutterSpeed> KeyShutterSpeed = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ShutterSpeed", new SingleValueConverter<>(CameraShutterSpeed.class,CameraShutterSpeedMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraShutterSpeed
      设置相机镜头的快门速度数值。可通过KeyShutterSpeedRange获取可设置的快门速度。当相机工作模式为VIDEO_NORMAL时,快门速度不应设置低于视频帧速率。如果视频帧率为30fps,则快门速度必须<=1/30。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。 TODO:增加视频帧率key。

      MSDK 5.0开始支持

      照片比例
      final KeyPhotoRatioRange
      static final DJIKeyInfo<List<PhotoRatio>> KeyPhotoRatioRange = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"PhotoRatioRange", new SingleValueConverter<>((Class)List.class,PhotoRatioRangeMsg.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:list<PhotoRatio>
      获取相机镜头照片比例范围。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyPhotoRatio
      static final DJIKeyInfo<PhotoRatio> KeyPhotoRatio = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"PhotoRatio", new SingleValueConverter<>(PhotoRatio.class,PhotoRatioMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:PhotoRatio
      设置相机镜头的照片比例。可通过KeyPhotoRatioRange获取可设置的照片比例。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头,红外不可设置。

      MSDK 5.0开始支持

      视频分辨率和帧率
      final KeyVideoResolutionFrameRateRange
      static final DJIKeyInfo<List<VideoResolutionFrameRate>> KeyVideoResolutionFrameRateRange = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"VideoResolutionFrameRateRange", new SingleValueConverter<>((Class)List.class,VideoResolutionFrameRateRangeMsg.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:list<VideoResolutionFrameRate>
      获取相机镜头视频分辨率和帧率范围。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyVideoResolutionFrameRate
      static final DJIKeyInfo<VideoResolutionFrameRate> KeyVideoResolutionFrameRate = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"VideoResolutionFrameRate", new DJIValueConverter<>(VideoResolutionFrameRate.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:VideoResolutionFrameRate
      设置相机镜头的视频分辨率和帧率。可通过KeyVideoResolutionFrameRateRange获取可设置的视频分辨率和帧率。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头,红外不可设置。

      MSDK 5.0开始支持

      final KeyCameraHybridZoomSpec
      static final DJIKeyInfo<CameraHybridZoomSpec> KeyCameraHybridZoomSpec = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraHybridZoomSpec", new DJIValueConverter<>(CameraHybridZoomSpec.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraHybridZoomSpec
      获取变焦镜头的混合变焦参数。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头,只支持zoom。 TODO:基于算法过于复杂,需要把逻辑封装在msdk key中。

      MSDK 5.0开始支持

      final KeyCameraHybridZoomFocalLength
      static final DJIKeyInfo<Integer> KeyCameraHybridZoomFocalLength = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraHybridZoomFocalLength", SingleValueConverter.IntegerConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:Interger
      设置和获取变焦镜头的焦距,单位:0.1mm。可通过KeyCameraHybridZoomSpec获取可设置的焦距范围和步长。混合变焦结合了光学变焦和数码变焦,超出光学变焦范围时,镜头会自动切换到数码变焦。 TODO:通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头,只支持zoom。 TODO:基于算法过于复杂,需要把逻辑封装在msdk key中。

      MSDK 5.0开始支持

      final KeyCameraFocusMode
      static final DJIKeyInfo<CameraFocusMode> KeyCameraFocusMode = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraFocusMode", new SingleValueConverter<>(CameraFocusMode.class,CameraFocusModeMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraFocusMode
      设置和获取变焦镜头的对焦模式。

      MSDK 5.0开始支持

      final KeyCameraFocusRingMinValue
      static final DJIKeyInfo<Integer> KeyCameraFocusRingMinValue = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraFocusRingMinValue", SingleValueConverter.IntegerConverter).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:Integer
      相机手动对焦时所能设置的最小数值。

      MSDK 5.0开始支持

      final KeyCameraFocusRingMaxValue
      static final DJIKeyInfo<Integer> KeyCameraFocusRingMaxValue = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraFocusRingMaxValue", SingleValueConverter.IntegerConverter).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:Integer
      相机手动对焦时所能设置的最大数值。

      MSDK 5.0开始支持

      final KeyCameraFocusRingValue
      static final DJIKeyInfo<Integer> KeyCameraFocusRingValue = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraFocusRingValue", SingleValueConverter.IntegerConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:Integer
      相机的手动对焦值。通过模拟调整对焦环来设置焦距。通过KeyCameraFocusRingMinValueKeyCameraFocusRingMaxValue获取手动对焦数值的最小和最大值。在MANUAL模式下,设置对焦值后,相机将会以屏幕中心点为对焦目标进行一次对焦。

      MSDK 5.0开始支持

      final KeyCameraFocusTarget
      static final DJIKeyInfo<DoublePoint2D> KeyCameraFocusTarget = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"CameraFocusTarget", new DJIValueConverter<>(DoublePoint2D.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:DoublePoint2D
      相机自动对焦的对焦目标。[0,0]代表相机屏幕的左上角,[1,1]代表相机屏幕的左下角。在AF模式下,设置对焦目标后,相机将自动以对焦目标为中心点进行一次对焦。

      MSDK 5.0开始支持

      夜景模式
      final KeyIRCutEnabled
      static final DJIKeyInfo<Boolean> KeyIRCutEnabled = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"IRCutEnabled", SingleValueConverter.BooleanConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("IRCutEnable")
      包:dji.sdk.keyvalue.key
      描述:

      参数: Boolean

      true表示开启夜景模式。夜景模式通过打开变焦相机中的红外滤光片,提升相机在低照度环境下的拍摄效果。只支持变焦镜头。

      MSDK 5.0开始支持

      镜头去雾
      final KeyDefogEnabled
      static final DJIKeyInfo<Boolean> KeyDefogEnabled = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"DefogEnabled", SingleValueConverter.BooleanConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("DefogEnable")
      包:dji.sdk.keyvalue.key
      描述:

      参数: Boolean

      true表示开启镜头去雾功能。镜头去雾需要持续加热5秒。 TODO:为什么会是boolean,为什么不是action?设置了提示失败,pilot也有问题。

      MSDK 5.0开始支持


      红外功能

      final KeyThermalSpotMeteringTargetPoint
      static final DJIKeyInfo<DoublePoint2D> KeyThermalSpotMeteringTargetPoint = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalSpotMeteringTargetPoint", new DJIValueConverter<>(DoublePoint2D.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: DoublePoint2D

      设置需要测温的点的位置。[0,0]代表相机屏幕的左上角,[1,1]代表相机屏幕的左下角。设置了测温点的位置以后,可以通过KeyThermalSpotMeteringTemperature获取当前测温点的温度。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalSpotMeteringTemperature
      static final DJIKeyInfo<Double> KeyThermalSpotMeteringTemperature = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalSpotMeteringTemperature", SingleValueConverter.DoubleConverter).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("ThermalTemperatureData")
      包:dji.sdk.keyvalue.key
      描述:

      参数: Double

      获取当前测温点的温度。调用KeyThermalSpotMeteringTargetPoint可以设置当前测温点的位置。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalSpotMeteringArea
      static final DJIKeyInfo<DoubleRect> KeyThermalSpotMeteringArea = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalSpotMeteringArea", new DJIValueConverter<>(DoubleRect.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: DoubleRect

      设置需要测温的区域位置。[0,0]代表相机屏幕的左上角,[1,1]代表相机屏幕的左下角。设置了测温点的位置以后,可以通过KeyThermalAreaTemperatureAggregations获取当前测温区域的温度信息。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalAreaTemperatureAggregations
      static final DJIKeyInfo<ThermalAreaTemperatureAggregations> KeyThermalAreaTemperatureAggregations = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalAreaTemperatureAggregations", new DJIValueConverter<>(ThermalAreaTemperatureAggregations.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: ThermalAreaTemperatureAggregations

      获取当前测温区域的温度信息。包括测温区域的平均温度、最小温度和最大温度。调用KeyThermalSpotMeteringArea可以设置需要的测温的区域位置。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      增益模式
      final KeyThermalGainMode
      static final DJIKeyInfo<ThermalGainMode> KeyThermalGainMode = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalGainMode", new SingleValueConverter<>(ThermalGainMode.class,CameraThermalGainModeMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("CameraThermalGainMode")
      包:dji.sdk.keyvalue.key
      描述:

      参数: ThermalGainMode

      设置和获取增益模式。可通过KeyThermalGainModeTemperatureRange获取不同增益模式下的温度适用范围。当选择高增益时,相机对温度差异更灵敏,但相机测量的温度范围较小。低增益模式时,相机测量的温度范围较大,对温度差异灵敏度会降低。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalGainModeTemperatureRange
      static final DJIKeyInfo<ThermalGainModeTemperatureRange> KeyThermalGainModeTemperatureRange = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalGainModeTemperatureRange", new DJIValueConverter<>(ThermalGainModeTemperatureRange.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: ThermalGainModeTemperatureRange

      获取不同增益模式的温度范围。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalPaletteRange
      static final DJIKeyInfo<List<CameraThermalPalette>> KeyThermalPaletteRange = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalPaletteRange", new SingleValueConverter<>((Class)List.class,CameraThermalPaletteRangeMsg.class)).canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("CameraThermalPaletteRange")
      包:dji.sdk.keyvalue.key
      描述:

      参数:list<CameraThermalPalette>
      获取红外镜头可设置的调色盘类型。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalPalette
      static final DJIKeyInfo<CameraThermalPalette> KeyThermalPalette = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalPalette", new SingleValueConverter<>(CameraThermalPalette.class,CameraThermalPaletteMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("CameraThermalPalette")
      包:dji.sdk.keyvalue.key
      描述:

      参数: CameraThermalPalette

      设置调色盘类型。可通过KeyThermalPaletteRange获取可设置的调色盘类型。热成像图片中的颜色用来表示温度,画面中的温度范围将被映射到256个色阶上,在8bit的JPEG图片以及MP4视频中显示出来,每种调色盘对应不同的色阶。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalIsothermEnabled
      static final DJIKeyInfo<Boolean> KeyThermalIsothermEnabled = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalIsothermEnabled", SingleValueConverter.BooleanConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("CameraThermalIsothermEnabled")
      包:dji.sdk.keyvalue.key
      描述:

      参数: Boolean

      启用或禁用等温线。开启等温线功能可以更直观地看出指定温度区间的物体。通过高温、低温两个阈值来设置温度区间。等温线禁用时,所有256个值(8位)都用于场景的温度直方图。启用等温线后,只有128个值(0-127)与温度线性映射。然后将三个颜色区间(128-175)、(176-223)和(224-255)映射到用户定义的温度,以向用户突出显示它们。使用一些调色板(例如RAINBOW)会生成灰度级的热图像,红色、蓝色或绿色将用于突出显示的三个特定的温度。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalIsothermUnit
      static final DJIKeyInfo<ThermalIsothermUnit> KeyThermalIsothermUnit = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalIsothermUnit", new SingleValueConverter<>(CameraThermalIsothermUnit.class,CameraThermalIsothermUnitMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("CameraThermalIsothermUnit")
      包:dji.sdk.keyvalue.key
      描述:

      参数: CameraThermalIsothermUnit

      等温线的单位。将等温线范围的单位设置为摄氏度或者百分比。不同的单位导致等温线的值范围不同。 如果是单位是百分比,可设置的值范围是[0,100]。如果单位是摄氏度,可设置的最高值和最低值请参考KeyThermalGainModeTemperatureRange
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalIsothermUpperValue
      static final DJIKeyInfo<Integer> KeyThermalIsothermUpperValue = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalIsothermUpperValue", SingleValueConverter.IntegerConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("CameraThermalIsothermUpperValue")
      包:dji.sdk.keyvalue.key
      描述:

      参数: Integer

      等温线最高值。高于此值的所有温度值将使用调色板中的颜色224-255。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalIsothermLowerValue
      static final DJIKeyInfo<Integer> KeyThermalIsothermLowerValue = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalIsothermLowerValue", SingleValueConverter.IntegerConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("CameraThermalIsothermLowerValue")
      包:dji.sdk.keyvalue.key
      描述:

      参数: Integer

      等温线最低值。较低和中等等温线阈值之间的温度值将以调色板中的128-175色显示。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalDisplayMode
      static final DJIKeyInfo<ThermalDisplayMode> KeyThermalDisplayMode = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalDisplayMode", new SingleValueConverter<>(ThermalDisplayMode.class,CameraDisplayModeMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("CameraDisplayMode")
      包:dji.sdk.keyvalue.key
      描述:

      参数: ThermalDisplayMode

      设置红外镜头的显示模式。包括红外显示和分屏显示。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalFFCMode
      static final DJIKeyInfo<ThermalFFCMode> KeyThermalFFCMode = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalFFCMode", new SingleValueConverter<>(ThermalFFCMode.class,CameraThermalFFCModeMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("CameraThermalFFCMode")
      包:dji.sdk.keyvalue.key
      描述:

      参数: ThermalFFCMode

      设置FFC校准模式。FFC校准是红外镜头的一个功能,校准以后的图像质量将得到优化。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalTriggerFFC
      static final DJIActionKeyInfo<EmptyMsg,EmptyMsg> KeyThermalTriggerFFC = new DJIActionKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalTriggerFFC", EmptyValueConverter.converter,EmptyValueConverter.converter).canGet(false).canSet(false).canListen(false).canPerformAction(true).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      手动触发一次FFC校准模式。校准过程中相机画面可能会有1秒的停顿,同时相机会有“咔嚓”一声。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalDigitalZoomFactor
      static final DJIKeyInfo<ThermalDigitalZoomFactor> KeyThermalDigitalZoomFactor = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalDigitalZoomFactor", new SingleValueConverter<>(ThermalDigitalZoomFactor.class,ThermalDigitalZoomFactorMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: ThermalDigitalZoomFactor

      设置红外变焦倍率。支持1x、2x、4x、8x变焦倍率。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalSuperResolution
      static final DJIKeyInfo<Boolean> KeyThermalSuperResolution = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalSuperResolution", SingleValueConverter.BooleanConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: Boolean

      设置开启和关闭红外超分辨率。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。 TODO:测试失败。pilot也有问题。

      MSDK 5.0开始支持

      兴趣区域
      final KeyThermalROI
      static final DJIKeyInfo<ThermalROI> KeyThermalROI = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalROI", new SingleValueConverter<>(ThermalROI.class,CameraThermalROIMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false).setInnerIdentifier("CameraThermalROI")
      包:dji.sdk.keyvalue.key
      描述:

      参数: ThermalROI

      设置热成像兴趣区域。用户可根据需要选择兴趣区域范围。当兴趣区域为全屏时,整个图像的色阶将按默认配置分布。当画面中有大片天空时,由于天空的温度较低,大量色阶被分配到低温区域,将导致地 面部分不同温度显示的色彩变化不明显。选择剔除天空区域(33%)或剔除天空区域(50%),意味着将分配在天空区域的色阶数量减少,而将更多色阶分配在地面区域,使地面区域内的色彩变化较明显、图像更清晰,从而更利于观测。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalScene
      static final DJIKeyInfo<ThermalScene> KeyThermalScene = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalScene", new SingleValueConverter<>(ThermalScene.class,ThermalSceneMsg.class)).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: ThermalScene

      设置热成像场景。支持默认以及巡检场景,同时支持自定义场景,用户可以根据需求设置并保存自定义参数。相机将根据不同的场景调整相机参数,对图像进行优化处理。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。

      MSDK 5.0开始支持

      final KeyThermalDDE
      static final DJIKeyInfo<Integer> KeyThermalDDE = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalDDE", SingleValueConverter.IntegerConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: Integer

      设置热成像DDE(Digital Detail Enhancement)数字细节增强技术。可以提高图像及轮廓的清晰度。仅当场景模式为MANUAL时,才能手动设置。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。 TODO:设置范围是多少?

      MSDK 5.0开始支持

      final KeyThermalContrast
      static final DJIKeyInfo<Integer> KeyThermalContrast = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalContrast", SingleValueConverter.IntegerConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: Integer

      设置热成像对比度。画面黑与白的比值。比值越大,色彩表现越丰富。仅当场景模式为景MANUAL时,才能手动设置。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头。 TODO:设置范围是多少?

      MSDK 5.0开始支持</code

      final KeyThermalBrightness
      static final DJIKeyInfo<Integer> KeyThermalBrightness = new DJIKeyInfo<>(componentType.value(),subComponentType.value(),"ThermalBrightness", SingleValueConverter.IntegerConverter).canGet(true).canSet(true).canListen(true).canPerformAction(false).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数: Integer

      设置热成像图像亮度。仅当场景模式为MANUAL时,才能手动设置。
      注意:
      1.要使用此功能,请调用KeyCamearaVideoStreamSource把视频源设置为INFRARED_CAMERA
      2.subComponentType需要传入IR。
      TODO:只能支持IR,通过设置subComponentType,zoom = 0, wide = 1, ir = 2,IGNORE=0xffff-1(即总体,来选择镜头 TODO:设置范围是多少?

      MSDK 5.0开始支持


      基本设置

      final KeyResetCameraSetting
      static final DJIActionKeyInfo<EmptyMsg,EmptyMsg> KeyResetCameraSetting = new DJIActionKeyInfo<>(componentType.value(),subComponentType.value(),"ResetCameraSetting", EmptyValueConverter.converter,EmptyValueConverter.converter).canGet(false).canSet(false).canListen(false).canPerformAction(true).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      重置相机参数。

      MSDK 5.0开始支持

      格式化存储器
      final KeyFormatStorage
      static final DJIActionKeyInfo<CameraStorageLocation,EmptyMsg> KeyFormatStorage = new DJIActionKeyInfo<>(componentType.value(),subComponentType.value(),"FormatStorage", new SingleValueConverter<>(CameraStorageLocation.class,CameraStorageLocationMsg.class),EmptyValueConverter.converter).canGet(false).canSet(false).canListen(false).canPerformAction(true).setIsEvent(false)
      包:dji.sdk.keyvalue.key
      描述:

      参数:CameraStorageLocation
      格式化存储器。M30和M30T相机只支持SD卡。

      MSDK 5.0开始支持