rain
2024-07-31 22c71b441fd63fbaa240552e82d557e23cfffc00
关闭图片处理
3 files modified
48 ■■■■ changed files
src/main/java/com/dji/sample/media/service/impl/MediaServiceImpl.java 4 ●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/speak/service/serviceImpl/SpeakVoiceServiceImpl.java 26 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/wayline/plane/controller/CreateWayLineController.java 18 ●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/media/service/impl/MediaServiceImpl.java
@@ -227,8 +227,8 @@
        String objectKey = callback.getFile().getObjectKey();
        callback.getFile().setPath(objectKey.substring(objectKey.indexOf("/") + 1, objectKey.lastIndexOf("/")));
        int count =fileService.saveFile(job.getWorkspaceId(), callback.getFile());
        fileService.saveNailFile(job.getWorkspaceId(), callback.getFile());
        fileService.saveZipFile(job.getWorkspaceId(),callback.getFile());
//        fileService.saveNailFile(job.getWorkspaceId(), callback.getFile());
//        fileService.saveZipFile(job.getWorkspaceId(),callback.getFile());
        return count > 0;
    }
src/main/java/com/dji/sample/speak/service/serviceImpl/SpeakVoiceServiceImpl.java
@@ -54,9 +54,9 @@
        fileDto.setName(name);
        dto.setPsdk_index(psdk_index);
        dto.setFile(fileDto);
//        double time = getAudioDuration(file);
        double time = getAudioDuration(file);
        voiceEntity.setMd5(md5);
//        voiceEntity.setSecond(time);
        voiceEntity.setSecond(time);
        voiceEntity.setUrl(url);
        voiceEntity.setName(name);
        voiceMapper.insert(voiceEntity);
@@ -121,7 +121,7 @@
        String accessKey = pojo.getAccessKey();
        String secretKey = pojo.getSecretKey();
        String bucketName = pojo.getBucket();
        String objectName = "/" + fileName + getNowTimeName()+"pcm";
        String objectName = "/" + fileName + getNowTimeName();
        FileServiceImpl.uploadFile(endpoint, accessKey, secretKey, bucketName, objectName, file, "audio/mpeg");
        return endpoint + "/" + bucketName + objectName;
    }
@@ -132,12 +132,16 @@
        return currentTime.format(DateTimeFormatter.ofPattern("MMddHHmm"));
    }
//    public static double getAudioDuration(File file) throws UnsupportedAudioFileException, IOException {
//        AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(file);
//        AudioFormat format = audioInputStream.getFormat();
//        long audioFileLength = file.length();
//        int frameSize = format.getFrameSize();
//        float frameRate = format.getFrameRate();
//        return Math.round(audioFileLength / (frameSize * frameRate));
//    }
    public static double getAudioDuration(File file) {
        try {
            AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(file);
            AudioFormat format = audioInputStream.getFormat();
            long audioFileLength = file.length();
            int frameSize = format.getFrameSize();
            float frameRate = format.getFrameRate();
            return Math.round(audioFileLength / (frameSize * frameRate));
        }catch (Exception e){
            return 0.0;
        }
    }
}
src/main/java/com/dji/sample/wayline/plane/controller/CreateWayLineController.java
@@ -53,15 +53,15 @@
        CustomClaim customClaim = (CustomClaim) request.getAttribute(TOKEN_CLAIM);
        String creator = customClaim.getUsername();
//         初始化模板对象
//        XMLTemplateModel xmlModel = XMLTemplateModel.initPolygon(param);
////        生成航线文件
//        CreateWaylineFileUtils.createWaylineFileByPolygon(xmlModel, patchesConfigPojo.getPlaneTemplate(), patchesConfigPojo.getPlaneTargetTemplate());
//        CreateWaylineFileUtils.createWaylineFileByPolygon(xmlModel, patchesConfigPojo.getPlaneWaylines(), patchesConfigPojo.getPlaneTargetWaylines());
////        kmz、上传航线库
//        String destKMZFile = patchesConfigPojo.getPlaneKMZFile() + param.getWaylineName() + ".kmz"; // 输出的KMZ文件路径
//        ZipUtil.zipFolder(patchesConfigPojo.getSourceDir(), destKMZFile);
//        MultipartFile multipartFile = MultipartFileTOFileUtil.convert(new File(destKMZFile));
//        waylineFileService.importKmzFile(multipartFile, workspaceId, creator, null, "1");
        XMLTemplateModel xmlModel = XMLTemplateModel.initPolygon(param);
//        生成航线文件
        CreateWaylineFileUtils.createWaylineFileByPolygon(xmlModel, patchesConfigPojo.getPlaneTemplate(), patchesConfigPojo.getPlaneTargetTemplate());
        CreateWaylineFileUtils.createWaylineFileByPolygon(xmlModel, patchesConfigPojo.getPlaneWaylines(), patchesConfigPojo.getPlaneTargetWaylines());
//        kmz、上传航线库
        String destKMZFile = patchesConfigPojo.getPlaneKMZFile() + param.getWaylineName() + ".kmz"; // 输出的KMZ文件路径
        ZipUtil.zipFolder(patchesConfigPojo.getSourceDir(), destKMZFile);
        MultipartFile multipartFile = MultipartFileTOFileUtil.convert(new File(destKMZFile));
        waylineFileService.importKmzFile(multipartFile, workspaceId, creator, null, "1");
        return ResponseResult.success();
    }