DJI Mobile SDK Documentation

      class IMegaphoneManager

      interface IMegaphoneManager
      包:dji.v5.manager.interfaces
      描述:

      麦克风喊话器负载管理类。可通过此类设置喊话器的参数,播放录制的音频。

      MSDK 5.0.0开始支持

      类成员:
      method addMegaphoneInfoListener
      void addMegaphoneInfoListener(MegaphoneInfoListener listener)
      包:dji.v5.manager.interfaces
      描述:

      设置喊话器信息监听器。

      MSDK 5.8.0开始支持

      输入参数:
      MegaphoneInfoListener listener喊话器信息监听器。
      method removeMegaphoneInfoListener
      void removeMegaphoneInfoListener(MegaphoneInfoListener listener)
      包:dji.v5.manager.interfaces
      描述:

      移除喊话器信息监听器。

      MSDK 5.8.0开始支持

      输入参数:
      MegaphoneInfoListener listener喊话器信息监听器。
      method clearAllMegaphoneInfoListener
      void clearAllMegaphoneInfoListener()
      包:dji.v5.manager.interfaces
      描述:

      移除所有喊话器信息监听器。

      MSDK 5.8.0开始支持

      method setMegaphoneIndex
      void setMegaphoneIndex(@NonNull MegaphoneIndex megaphoneIndex,@NonNull CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.interfaces
      描述:

      设置目标喊话器的位置。请根据已连接的喊话器位置进行设置。对于可以支持多个喊话器的机型,可以调用这个接口选择目标喊话器进行设置和操作。如果不调用此接口,MSDK会默认选择一个已连接的喊话器进行操作。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull MegaphoneIndex megaphoneIndex目标喊话器的位置
      @NonNull CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method getMegaphoneIndex
      void getMegaphoneIndex(@NonNull CommonCallbacks.CompletionCallbackWithParam<MegaphoneIndex> callback)
      包:dji.v5.manager.interfaces
      描述:

      获取设置的目标喊话器位置。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull CommonCallbacks.CompletionCallbackWithParam<MegaphoneIndex> callback返回执行结果的回调。
      method
      method setVolume
      void setVolume(@NonNull int volume, @Nullable CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.interfaces
      描述:

      设置喊话器音量。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull int volume需要设置的音量。
      @Nullable CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method
      method getVolume
      void getVolume(@Nullable CommonCallbacks.CompletionCallbackWithParam<Integer> callback)
      包:dji.v5.manager.interfaces
      描述:

      获取喊话器音量。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable CommonCallbacks.CompletionCallbackWithParam<Integer> callback返回执行结果的回调。
      method setPlayMode
      void setPlayMode(@NonNull PlayMode playMode, @Nullable CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.interfaces
      描述:

      设置喊话器播放模式。包括单次播放和循环播放。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull PlayMode playMode需要设置的播放模式。
      @Nullable CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method getPlayMode
      void getPlayMode(@Nullable CommonCallbacks.CompletionCallbackWithParam<PlayMode> callback)
      包:dji.v5.manager.interfaces
      描述:

      获取喊话器播放模式。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable CommonCallbacks.CompletionCallbackWithParam<PlayMode> callback返回执行结果的回调。
      method setWorkMode
      void setWorkMode(@NonNull WorkMode workMode,@Nullable CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.interfaces
      描述:

      设置喊话器工作模式。包括TTS文本模式和语音模式。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull WorkMode workMode需要设置的工作模式。
      @Nullable CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method getWorkMode
      void getWorkMode(@Nullable CommonCallbacks.CompletionCallbackWithParam<WorkMode> callback)
      包:dji.v5.manager.interfaces
      描述:

      获取喊话器工作模式。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable CommonCallbacks.CompletionCallbackWithParam<WorkMode> callback返回执行结果的回调。
      method
      method getStatus
      void getStatus(@Nullable CommonCallbacks.CompletionCallbackWithParam<MegaphoneStatus> callback)
      包:dji.v5.manager.interfaces
      描述:

      获取喊话器状态。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable CommonCallbacks.CompletionCallbackWithParam<MegaphoneStatus> callback返回执行结果的回调。
      method
      method startPlay
      void startPlay(@Nullable CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.interfaces
      描述:

      喊话器开始播放。在调用开始播放接口之前,你需要调用文件传输方式startPushingFileToMegaphone或者流式传输方式startRealTimeTransmission把需要播放的数据传给喊话器。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method
      method stopPlay
      void stopPlay(@Nullable CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.interfaces
      描述:

      喊话器停止播放。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method startPushingFileToMegaphone
      void startPushingFileToMegaphone(@NonNull FileInfo fileInfo, @Nullable CommonCallbacks.CompletionCallbackWithProgress<Integer> callback)
      包:dji.v5.manager.interfaces
      描述:

      传输TTS数据或者音频文件到喊话器。当数据传输完成后,你可以调用startPlay接口进行播放。

      MSDK 5.0.0开始支持

      输入参数:
      @NonNull FileInfo fileInfo文件信息。
      @Nullable CommonCallbacks.CompletionCallbackWithProgress<Integer> callback返回执行结果的回调。
      method cancelPushingFileToMegaphone
      void cancelPushingFileToMegaphone(@Nullable CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.interfaces
      描述:

      取消传输TTS数据或者音频文件到喊话器。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method startRealTimeTransmission
      void startRealTimeTransmission(@Nullable CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.interfaces
      描述:

      开启流式传输模式。你可以调用sendRealTimeDataToMegaphone向喊话器发送需要播放的数据,调用appendEOFToRealTimeData添加EOF标志位,表示数据发送完毕。然后调用startPlay接口进行播放。
      注意:流式传输模式的数据必须为OPUS编码格式的音频数据。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method sendRealTimeDataToMegaphone
      void sendRealTimeDataToMegaphone(byte[] data, int length, @Nullable CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.interfaces
      描述:

      向喊话器发送需要播放数据。可以多次调用此接口发送播放数据。

      MSDK 5.0.0开始支持

      输入参数:
      byte[] data需要传输的数据,数据必须为OPUS编码格式的音频数据。
      int length数据长度。
      @Nullable CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method appendEOFToRealTimeData
      void appendEOFToRealTimeData(@Nullable CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.interfaces
      描述:

      添加EOF标志位,表示数据发送完毕。你可以调用startPlay接口进行播放。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method cancelRealTimeTransmission
      void cancelRealTimeTransmission(@Nullable CommonCallbacks.CompletionCallback callback)
      包:dji.v5.manager.interfaces
      描述:

      取消本次传输,将清空已上传的数据。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable CommonCallbacks.CompletionCallback callback返回执行结果的回调。
      method addRealTimeTransmissionStateListener
      void addRealTimeTransmissionStateListener(@Nullable RealTimeTransimissionStateListener listener)
      包:dji.v5.manager.interfaces
      描述:

      设置流式传输模式的状态监听器。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable RealTimeTransimissionStateListener listener流式传输模式的状态监听器。
      method removeRealTimeTransmissionStateListener
      void removeRealTimeTransmissionStateListener(@Nullable RealTimeTransimissionStateListener listener)
      包:dji.v5.manager.interfaces
      描述:

      移除流式传输模式的状态监听器。

      MSDK 5.0.0开始支持

      输入参数:
      @Nullable RealTimeTransimissionStateListener listener流式传输模式的状态监听器。
      method clearAllRealTimeTransmissionStateListener
      void clearAllRealTimeTransmissionStateListener()
      包:dji.v5.manager.interfaces
      描述:

      移除所有流式传输模式的状态监听器。

      MSDK 5.0.0开始支持

      enum MegaphoneIndex
      enum MegaphoneIndex
      包:dji.v5.manager.aircraft.megaphone
      描述:

      喊话器位置。

      MSDK 5.0.0开始支持

      Enum Members:
      PORTSIDE喊话器位于飞行器左舷侧(主)。
      STARBOARD喊话器位于飞行器右舷侧。
      UPSIDE喊话器位于飞行器上侧。
      OSDK喊话器跟OSDK口连接。
      Class Members:
      enum WorkMode
      enum WorkMode
      包:dji.v5.manager.aircraft.megaphone
      描述:

      喊话器工作模式。包括TTS文本模式和语音模式。

      MSDK 5.0.0开始支持

      Enum Members:
      TTSTTS模式,输入本文转换成语音进行播放。
      VOICE语音模式,输入语音进行播放。
      Class Members:
      enum PlayMode
      enum PlayMode
      包:dji.v5.manager.aircraft.megaphone
      描述:

      喊话器播放模式。包括单次播放和循环播放。

      MSDK 5.0.0开始支持

      Enum Members:
      SINGLE单次播放模式。
      LOOP循环播放模式。
      Class Members:
      enum MegaphoneStatus
      enum MegaphoneStatus
      包:dji.v5.manager.aircraft.megaphone
      描述:

      喊话器状态。

      MSDK 5.0.0开始支持

      Enum Members:
      IDEL喊话器处于空闲状态。
      IN_TRANSMISSION喊话器处于数据传输状态。
      PLAYING喊话器处于数据播放状态。
      IN_EXCEPTION喊话器处于异常状态,请联系设备提供商解决。
      TTS_IN_CONVERSIONTTS正在转换成语音中。
      Class Members:
      enum UploadType
      enum UploadType
      包:dji.v5.manager.aircraft.megaphone
      描述:

      文件传输方式的传输的类型。包括本地音频文件数据和TTS二进制数据。

      MSDK 5.0.0开始支持

      Enum Members:
      TTS_DATATTS二进制数据类型,TTS二进制数据需要采用UTF-8格式。设置为此类型,你需要调用setData设置TTS二进制数据。
      VOICE_FILE本地音频文件类型,音频文件需要采用OPUS编码格式。设置为此类型,你需要调用setFile设置本地音频文件路径。
      Class Members:
      enum UploadState
      enum UploadState
      包:dji.v5.manager.aircraft.megaphone
      描述:

      流式传输模式上传状态。

      MSDK 5.0.0开始支持

      Enum Members:
      UPLOADING上传中。
      UPLOAD_SUCCESS上传成功。
      UPLOAD_FAILED上传失败,请重新上传。
      MD5_FAILEDMD5校验失败。
      ABORTED上传终止。
      Class Members: