winter 1 år sedan
förälder
incheckning
60f7831b21
3 ändrade filer med 34 tillägg och 5 borttagningar
  1. +2
    -2
      suimangCApi/src/main/java/com/iformall/controller/VoiceMouldController.java
  2. +4
    -1
      suimangService/src/main/java/com/iformall/service/sm/VoiceInfoService.java
  3. +28
    -2
      suimangService/src/main/java/com/iformall/service/sm/impl/VoiceInfoServiceImpl.java

+ 2
- 2
suimangCApi/src/main/java/com/iformall/controller/VoiceMouldController.java Visa fil

@@ -184,12 +184,12 @@ public class VoiceMouldController extends BaseController {
return new ResultData(voiceInfoService.previewVoice(aiPreviewParam));
}
@ApiOperation("TTS音色预览")
@ApiOperation("TTS音色预览(慧影用)")
@PostMapping("/loginPreview")
@ApiImplicitParams({})
public ResultData loginPreview(@RequestBody AiPreviewParam aiPreviewParam) {
logger.debug("[" + getIpAddr() + "] MouldPatchController::voicePreview");
PreviewVoiceVO pv = voiceInfoService.previewVoice(aiPreviewParam);
PreviewVoiceVO pv = voiceInfoService.loginPreviewVoice(aiPreviewParam);
Double time = pv.getTime();//秒
if (time > 5*60 ) {
return new ResultData(Result.ERROR,"视频最大时长为300秒,当前时长为"+time+"秒");


+ 4
- 1
suimangService/src/main/java/com/iformall/service/sm/VoiceInfoService.java Visa fil

@@ -2,6 +2,7 @@ package com.iformall.service.sm;


import com.iformall.domain.vo.sm.PreviewVoiceVO;
import com.iformall.common.ResultData;
import com.iformall.domain.po.sm.VoiceInfo;
import com.iformall.sm.AiPreviewParam;

@@ -13,5 +14,7 @@ public interface VoiceInfoService {

VoiceInfo getById(Long voiceMouldId);

PreviewVoiceVO previewVoice(AiPreviewParam aiPreviewParam);
ResultData previewVoice(AiPreviewParam aiPreviewParam);
PreviewVoiceVO loginPreviewVoice(AiPreviewParam aiPreviewParam);
}

+ 28
- 2
suimangService/src/main/java/com/iformall/service/sm/impl/VoiceInfoServiceImpl.java Visa fil

@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.google.common.collect.Lists;
import com.iformall.common.ErrorCode;
import com.iformall.common.ResultData;
import com.iformall.domain.vo.sm.PreviewVoiceVO;
import com.iformall.domain.po.sm.VoiceInfo;
import com.iformall.domain.vo.VoiceInfoVo;
@@ -78,12 +79,37 @@ public class VoiceInfoServiceImpl implements VoiceInfoService {
}

@Override
public PreviewVoiceVO previewVoice(AiPreviewParam aiPreviewParam) {
public ResultData previewVoice(AiPreviewParam aiPreviewParam) {
VoiceInfo voiceInfo = voiceMapper.selectOne(new LambdaQueryWrapper<VoiceInfo>()
.eq(VoiceInfo::getIsDel, 0)
.eq(VoiceInfo::getId, aiPreviewParam.getVoice_id()));
voiceInfo = Optional.ofNullable(voiceInfo).orElseThrow(() -> new BizException(ErrorCode.SYS_SERVER_ERROR.getCode(), "声音信息不存在"));

AiPreviewParam param = new AiPreviewParam();
param.setGen_txt(aiPreviewParam.getGen_txt().replaceAll(Constant.text_pause,"[*]"));
param.setVoice_id(voiceInfo.getMouldSmId());
param.setVoice_style(StringUtils.isBlank(aiPreviewParam.getVoice_style()) ? EnumSpeakType.default_0.getMessage() : aiPreviewParam.getVoice_style());
param.setGender(voiceInfo.getSex() == 1 ? "male" : "female");
AiPreviewResult result = null;
if (!AiVideoHelper.localDeploy) {
result = AiVideoHelper.voicePreview(param);
}else {
// AiPreviewResult result = AiVideoHelper.voicePreview(param);
result = SmSdkUtils.preview(SmPreviewVideoDTO.mapping(param));
}
if (result.isSuccess()){
return new ResultData(result.getTime());
}
throw new BizException(result.getCode(), result.getMsg());
}

@Override
public PreviewVoiceVO loginPreviewVoice(AiPreviewParam aiPreviewParam) {
VoiceInfo voiceInfo = voiceMapper.selectOne(new LambdaQueryWrapper<VoiceInfo>()
.eq(VoiceInfo::getIsDel, 0)
.eq(VoiceInfo::getId, aiPreviewParam.getVoice_id()));
voiceInfo = Optional.ofNullable(voiceInfo).orElseThrow(() -> new BizException(ErrorCode.SYS_SERVER_ERROR.getCode(), "声音信息不存在"));

AiPreviewParam param = new AiPreviewParam();
param.setGen_txt(aiPreviewParam.getGen_txt().replaceAll(Constant.text_pause,"[*]"));
param.setVoice_id(voiceInfo.getMouldSmId());
@@ -103,6 +129,6 @@ public class VoiceInfoServiceImpl implements VoiceInfoService {
return vo;
}
throw new BizException(result.getCode(), result.getMsg());
}
}

}

Laddar…
Avbryt
Spara