NEW: release DJI Payload-SDK version 3.1

Signed-off-by: DJI-Martin <DJI-Martin@dji.com>
This commit is contained in:
DJI-Martin
2022-03-21 22:25:37 +08:00
parent 7b5f853e87
commit 0e06bc3fd3
62 changed files with 9042 additions and 348 deletions

View File

@ -66,6 +66,42 @@ typedef enum {
DJI_WIDGET_SWITCH_STATE_ON = 1 /*!< Switch is turned on */
} E_DjiWidgetSwitchState;
/**
* @brief Switch widget speaker work mode.
*/
typedef enum {
DJI_WIDGET_SPEAKER_WORK_MODE_TTS,
DJI_WIDGET_SPEAKER_WORK_MODE_VOICE,
} E_DjiWidgetSpeakerWorkMode;
/**
* @brief Switch widget speaker play mode.
*/
typedef enum {
DJI_WIDGET_SPEAKER_PLAY_MODE_SINGLE_PLAY,
DJI_WIDGET_SPEAKER_PLAY_MODE_LOOP_PLAYBACK,
} E_DjiWidgetSpeakerPlayMode;
/**
* @brief Switch widget speaker state.
*/
typedef enum {
DJI_WIDGET_SPEAKER_STATE_IDEL,
DJI_WIDGET_SPEAKER_STATE_TRANSMITTING,
DJI_WIDGET_SPEAKER_STATE_PLAYING,
DJI_WIDGET_SPEAKER_STATE_ERROR,
} E_DjiWidgetSpeakerState;
/**
* @brief Switch widget transmit data event.
*/
typedef enum {
DJI_WIDGET_TRANSMIT_DATA_EVENT_START,
DJI_WIDGET_TRANSMIT_DATA_EVENT_TRANSMIT,
DJI_WIDGET_TRANSMIT_DATA_EVENT_FINISH,
DJI_WIDGET_TRANSMIT_DATA_EVENT_ABORT,
} E_DjiWidgetTransmitDataEvent;
/**
* @brief Widget file binary array.
*/
@ -132,6 +168,45 @@ typedef struct {
void *userData;
} T_DjiWidgetHandlerListItem;
typedef struct {
uint16_t size;
uint32_t uuid;
uint8_t md5Sum[16];
} T_DjiWidgetTtsDataInfo;
typedef struct {
uint16_t size;
uint32_t uuid;
uint8_t md5Sum[16];
} T_DjiWidgetVoiceDataInfo;
typedef struct {
E_DjiWidgetSpeakerState state;
E_DjiWidgetSpeakerWorkMode workMode;
E_DjiWidgetSpeakerPlayMode playMode;
uint8_t volume;
uint32_t uuid;
} T_DjiWidgetSpeakerState;
typedef struct {
T_DjiReturnCode (*GetSpeakerState)(T_DjiWidgetSpeakerState *speakerState);
T_DjiReturnCode (*SetWorkMode)(E_DjiWidgetSpeakerWorkMode workMode);
T_DjiReturnCode (*GetWorkMode)(E_DjiWidgetSpeakerWorkMode *workMode);
T_DjiReturnCode (*SetPlayMode)(E_DjiWidgetSpeakerPlayMode playMode);
T_DjiReturnCode (*GetPlayMode)(E_DjiWidgetSpeakerPlayMode *playMode);
T_DjiReturnCode (*SetVolume)(uint8_t volume);
T_DjiReturnCode (*GetVolume)(uint8_t *volume);
T_DjiReturnCode (*StartPlay)(void);
T_DjiReturnCode (*StopPlay)(void);
T_DjiReturnCode (*ReceiveTtsData)(E_DjiWidgetTransmitDataEvent event,
uint32_t offset, uint8_t *buf, uint16_t size);
T_DjiReturnCode (*ReceiveVoiceData)(E_DjiWidgetTransmitDataEvent event,
uint32_t offset, uint8_t *buf, uint16_t size);
} T_DjiWidgetSpeakerHandler;
/* Exported functions --------------------------------------------------------*/
/**
* @brief Initialise widget module, and user should call this function before using widget features.
@ -215,6 +290,15 @@ T_DjiReturnCode DjiWidgetFloatingWindow_ShowMessage(const char *str);
*/
T_DjiReturnCode DjiWidgetFloatingWindow_GetChannelState(T_DjiDataChannelState *state);
/**
* @brief Register the handler for widget speaker function interfaces.
* @note This interface registers the widget speaker function interface, including speaker settings, play operation,
* speaker status interface.
* @param widgetSpeakerHandler: pointer to the handler for widget speaker functions.
* @return Execution result.
*/
T_DjiReturnCode DjiWidget_RegSpeakerHandler(const T_DjiWidgetSpeakerHandler *widgetSpeakerHandler);
#ifdef __cplusplus
}
#endif