voidstartTransmission(@NonNull AudioFileInfo info, @Nullable final TransmissionListener listener)
Package:
dji.sdk.accessory.speaker
Description:
Starts to send a complete audio file to the aircraft, which can be played by the speaker. A transmission session can only be started when the transmission state is in IDLE. If the transmission is started successfully, the state will change to READY_TO_TRANSMIT. Then call paceData to send data to SDK. Call markEOF when all data has been sent to SDK. SDK will maintain a buffer to hold all the data and transmit it to the aircraft. For M2E Speaker, the audio file to transmit should fulfill the following configurations: - The speaker only receives raw PCM(Pulse-code modulation) data of an audio file, if the audio file is compressed, PCM extraction is needed before the transmission. - The audio channel is mono. - The audio sample rate is 44,100 Hz. - The PCM (Pulse-code modulation) sample depth is 16 bit per sample. - The audio file is stored in the aircraft instead of the speaker.
Sends raw PCM data of the audio file to SDK internal logic. For Mavic 2 Enterprise, the transmission rate is limited to 80kB/s by sdk. Therefore, SDK will cache the paced data to a local file when the rate of pacing data is over 80kB/s. The paced data will be appended to the local file. Call markEOF when all data of the data has been paced to SDK.
Input Parameters:
@NonNull @Size(MAX_INPUT_SIZE) byte[] data
Raw PCM data stream in bytes.
Return:
boolean
true if data is paced successfully. Otherwise, pacing data is not in the current state or the data size is illegal.
Marks EOF (end-of-file). It is used to inform SDK that all data of the file has been paced. SDK will continue to transmit data to the aircraft. The state will change to IDLE when all data is transmitted. After calling this method, paceData is invalid until a new transmission session starts. If no data is paced before calling this method, the transmission session will end immediately.
Refresh the audio file list in the aircraft. - If the current state is RESET, SDK will try to fetch the complete file list. - If the current state is INCOMPLETE, SDK will only fetch the missing list of files. - If the operation is started successfully, the FileListState will become SYNCING. - When the file list is refreshed successfully, the FileListState will become UP_TO_DATE.
voiddelete(@NonNull List<Integer> fileIndices, final CommonCallbacks.CompletionCallbackWithTwoParam<List<Integer>, DJIError> callback)
Package:
dji.sdk.accessory.speaker
Description:
Deletes audio files in the aircraft. If the operation is started successfully, getFileListState will become DELETING. If there is error or "failedFiles" is not empty, getFileListState will become RESET.
Returns the component index. Index is zero based. A component will have an index greater than zero when there are multiple components of the same type on the DJI product, and one of the components already has the index 0. For instance, M210 can have two gimbal mounted cameras, and will therefore have two gimbal components with indices 0 and 1, and two camera components with indices 0 and 1. For Matrice 600, there are printed numbers on the battery boxes. The Battery component instance with index 0 corresponds to battery compartment number 1. For Inspire 2 and M200 series, Battery with index 0 corresponds to the battery on the port (left hand) side of the aircraft. For M210, M210 RTK, M300 RTK and M350 RTK, Camera and Gimbal with index 0 corresponds to the camera and gimbal on the port (left hand) side of the aircraft. Lidar with index 0 corresponds to the lidar(Zenmuse L1) on the port (left hand) side of the aircraft.
Gets the serial number of the component. Depending on the component, this serial number might not match the serial number found on the physical component.
Returns the firmware version of the component. Each component will have a different firmware version, the combination of which will form the package firmware version getFirmwarePackageVersion found in BaseProduct.
Input Parameters:
@NonNull CompletionCallbackWith<String> callback
The execution callback with the value(s) returned.