@@ -33,10 +33,7 @@ import org.springframework.util.CollectionUtils; | |||||
import org.springframework.util.ObjectUtils; | import org.springframework.util.ObjectUtils; | ||||
import javax.transaction.xa.XAException; | import javax.transaction.xa.XAException; | ||||
import java.util.ArrayList; | |||||
import java.util.Date; | |||||
import java.util.List; | |||||
import java.util.Objects; | |||||
import java.util.*; | |||||
import java.util.concurrent.Future; | import java.util.concurrent.Future; | ||||
import java.util.concurrent.atomic.AtomicInteger; | import java.util.concurrent.atomic.AtomicInteger; | ||||
@@ -207,6 +204,18 @@ public class PhotoSpeakVideoServiceImpl implements PhotoSpeakVideoService { | |||||
param.setTask_id(photoSpeakVideo.getId()); | param.setTask_id(photoSpeakVideo.getId()); | ||||
param.setCallback_url(callbackUrl + "/callback/photo/speak"); | param.setCallback_url(callbackUrl + "/callback/photo/speak"); | ||||
param.setImg(Base64Util.imageUrlToBase64(photoSpeakVideo.getPersonPhotoUrl())); | param.setImg(Base64Util.imageUrlToBase64(photoSpeakVideo.getPersonPhotoUrl())); | ||||
Map<String,Object> subtitleMap = new HashMap<>(); | |||||
subtitleMap.put("enabled",photoSpeakVideo.getSubtitleEnabled()); | |||||
if(EnumYesOrNo.YES.getCode().equals(photoSpeakVideo.getSubtitleEnabled())){ | |||||
Map titleParams = JSON.parseObject(photoSpeakVideo.getSubtitleParams(),Map.class); | |||||
if(titleParams == null || titleParams.isEmpty()){ | |||||
subtitleMap.put("enabled",EnumYesOrNo.NO.getCode()); | |||||
}else{ | |||||
subtitleMap.put("params",titleParams); | |||||
} | |||||
} | |||||
param.setSubtitle(subtitleMap); | |||||
String voiceMouldSm = photoSpeakVideo.getVoiceMouldSm(); | String voiceMouldSm = photoSpeakVideo.getVoiceMouldSm(); | ||||
Integer sex = 1; | Integer sex = 1; | ||||
Integer speakType = 0; | Integer speakType = 0; | ||||
@@ -89,4 +89,5 @@ public class VoiceInfoServiceImpl implements VoiceInfoService { | |||||
} | } | ||||
return new ResultData(result.getCode(), result.getMsgInfo(result.getCode(),result.getMsg())); | return new ResultData(result.getCode(), result.getMsgInfo(result.getCode(),result.getMsg())); | ||||
} | } | ||||
} | } |
@@ -1,8 +1,13 @@ | |||||
package com.iformall.sm; | package com.iformall.sm; | ||||
import com.alibaba.fastjson.JSON; | |||||
import com.alibaba.fastjson.JSONObject; | |||||
import io.swagger.models.auth.In; | import io.swagger.models.auth.In; | ||||
import lombok.Data; | import lombok.Data; | ||||
import java.util.HashMap; | |||||
import java.util.Map; | |||||
@Data | @Data | ||||
public class AiPhotoSpeakParam { | public class AiPhotoSpeakParam { | ||||
@@ -26,6 +31,8 @@ public class AiPhotoSpeakParam { | |||||
private Long task_id; | private Long task_id; | ||||
private String callback_url; | private String callback_url; | ||||
private Map<String,Object> subtitle; | |||||
public String neglectImgString() { | public String neglectImgString() { | ||||
StringBuffer str = new StringBuffer(); | StringBuffer str = new StringBuffer(); | ||||
str.append("{"); | str.append("{"); | ||||
@@ -34,9 +41,11 @@ public class AiPhotoSpeakParam { | |||||
str.append("\"voice_style\":").append("\"").append(voice_style).append("\","); | str.append("\"voice_style\":").append("\"").append(voice_style).append("\","); | ||||
str.append("\"gender\":").append("\"").append(gender).append("\","); | str.append("\"gender\":").append("\"").append(gender).append("\","); | ||||
str.append("\"url\":").append("\"").append(url).append("\","); | str.append("\"url\":").append("\"").append(url).append("\","); | ||||
str.append("\"img\":").append("\"").append(img); | |||||
str.append("\"task_id\":").append("\"").append(task_id); | |||||
str.append("\"callback_url\":").append("\"").append(callback_url).append("\"}"); | |||||
str.append("\"img\":").append("\"").append("\","); | |||||
str.append("\"task_id\":").append("\"").append(task_id).append("\","); | |||||
str.append("\"callback_url\":").append("\"").append(callback_url).append("\","); | |||||
str.append("\"subtitle\":").append(JSON.toJSONString(subtitle)) | |||||
.append("\"}"); | |||||
return str.toString(); | return str.toString(); | ||||
} | } | ||||
} | } |
@@ -116,9 +116,9 @@ public class AiVideoHelper { | |||||
// } | // } | ||||
} | } | ||||
public static AiPhotoSpeakResult createPhotoSpeakVideo(AiPhotoSpeakParam videoParam) { | public static AiPhotoSpeakResult createPhotoSpeakVideo(AiPhotoSpeakParam videoParam) { | ||||
log.info("生成视频start request:" + videoParam.neglectImgString()); | |||||
String response = doPost(url + photo_speak_suffix, JSONObject.toJSONString(videoParam)); | String response = doPost(url + photo_speak_suffix, JSONObject.toJSONString(videoParam)); | ||||
log.info("生成视频end response:" + response); | log.info("生成视频end response:" + response); | ||||
log.info("生成视频的 IP:" + url + photo_speak_suffix); | |||||
AiPhotoSpeakResult result = new AiPhotoSpeakResult(); | AiPhotoSpeakResult result = new AiPhotoSpeakResult(); | ||||
if (StringUtils.isBlank(response)) { | if (StringUtils.isBlank(response)) { | ||||
result.setSuccess(false); | result.setSuccess(false); | ||||