| | |
| | | import com.dji.sample.speak.model.dto.SpeakVoiceFileDto; |
| | | import com.dji.sample.speak.model.dto.SpeakVoiceStartDto; |
| | | import com.dji.sample.speak.model.dto.SpeakVolumeDto; |
| | | import com.dji.sample.speak.model.enums.FormatEnum; |
| | | import com.dji.sample.speak.model.enums.PsdkModelEnum; |
| | | import com.dji.sample.speak.model.enums.VoiceEnums; |
| | | import com.dji.sample.speak.model.param.SpeakVoiceStartParam; |
| | | import com.dji.sample.speak.service.SpeakVoiceService; |
| | |
| | | private IMessageSenderService messageSenderService; |
| | | @Autowired |
| | | private MinioPojo pojo; |
| | | |
| | | @Override |
| | | public int takeVoice(String sn, SpeakVoiceStartParam param) { |
| | | SpeakVoiceStartDto dto=new SpeakVoiceStartDto(); |
| | | SpeakVoiceFileDto fileDto=new SpeakVoiceFileDto(); |
| | | String url=upMinio(param.getFile(),param.getName()); |
| | | public int takeVoice( String sn , Integer psdk_index, String name, File file) { |
| | | SpeakVoiceStartDto dto = new SpeakVoiceStartDto(); |
| | | SpeakVoiceFileDto fileDto = new SpeakVoiceFileDto(); |
| | | String url = upMinio(file, name); |
| | | fileDto.setUrl(url); |
| | | fileDto.setMd5(MD5Util.getMD5Checksum(param.getFile())); |
| | | fileDto.setFormat(param.getFormat()); |
| | | fileDto.setName(param.getName()); |
| | | dto.setPsdkIndex(param.getPsdkIndex()); |
| | | return messageSenderService.publishServicesTopic(sn, VoiceEnums.SPEAKER_AUDIO_PLAY_START.getMethod(),param).getResult(); |
| | | fileDto.setMd5(MD5Util.getMD5Checksum(file)); |
| | | fileDto.setFormat(FormatEnum.PCM); |
| | | fileDto.setName(name); |
| | | dto.setPsdk_index(psdk_index); |
| | | dto.setFile(fileDto); |
| | | return messageSenderService.publishServicesTopic(sn, VoiceEnums.SPEAKER_AUDIO_PLAY_START.getMethod(), dto).getResult(); |
| | | } |
| | | |
| | | @Override |
| | | public int restartVoice() { |
| | | return 0; |
| | | public int restartVoice(String sn, Integer psdk_index) { |
| | | return messageSenderService.publishServicesTopic(sn, VoiceEnums.SPEAKER_REPLAY.getMethod(), psdk_index).getResult(); |
| | | } |
| | | |
| | | @Override |
| | | public int stopVoice() { |
| | | return 0; |
| | | public int stopVoice(String sn, Integer psdk_index) { |
| | | return messageSenderService.publishServicesTopic(sn,VoiceEnums.SPEAKER_PLAY_STOP.getMethod(), psdk_index).getResult(); |
| | | } |
| | | |
| | | @Override |
| | | public int setVoiceMode(PsdkModelDto dto) { |
| | | return 0; |
| | | public int setVoiceMode(String sn,PsdkModelDto dto) { |
| | | return messageSenderService.publishServicesTopic(sn,VoiceEnums.SPEAKER_PLAY_MODE_SET.getMethod(), dto).getResult(); |
| | | } |
| | | |
| | | @Override |
| | | public int setVoiceVolume(SpeakVolumeDto dto) { |
| | | return 0; |
| | | public int setVoiceVolume(SpeakVolumeDto dto, String sn) { |
| | | return messageSenderService.publishServicesTopic(sn,VoiceEnums.SPEAKER_PLAY_VOLUME_SET.getMethod(), dto).getResult(); |
| | | } |
| | | |
| | | public String upMinio(File file,String fileName){ |
| | | public String upMinio(File file, String fileName) { |
| | | String endpoint = pojo.getEndpoint(); |
| | | String accessKey = pojo.getAccessKey(); |
| | | String secretKey = pojo.getSecretKey(); |
| | | String bucketName = pojo.getBucket(); |
| | | String objectName="/"+fileName+getNowTimeName(); |
| | | FileServiceImpl.uploadFile(endpoint,accessKey,secretKey,bucketName,objectName,file,"audio/mpeg"); |
| | | return endpoint+"/"+bucketName+objectName; |
| | | String objectName = "/" + fileName + getNowTimeName(); |
| | | FileServiceImpl.uploadFile(endpoint, accessKey, secretKey, bucketName, objectName, file, "audio/mpeg"); |
| | | return endpoint + "/" + bucketName + objectName; |
| | | } |
| | | |
| | | public static String getNowTimeName() { |
| | | LocalDateTime currentTime = LocalDateTime.now(); |
| | | // 格式化时间,生成当前时间 |