|
|
@@ -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()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |