Merge remote-tracking branch 'origin/test' into test
This commit is contained in:
commit
7f0a9284fe
36
pom.xml
36
pom.xml
@ -108,27 +108,27 @@
|
||||
<version>0.2.1</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.huawei.sis</groupId>
|
||||
<artifactId>huaweicloud-java-sdk-sis</artifactId>
|
||||
<version>1.3.2</version>
|
||||
</dependency>
|
||||
<!-- <dependency>-->
|
||||
<!-- <groupId>com.huawei.sis</groupId>-->
|
||||
<!-- <artifactId>huaweicloud-java-sdk-sis</artifactId>-->
|
||||
<!-- <version>1.3.2</version>-->
|
||||
<!-- </dependency>-->
|
||||
|
||||
</dependencies>
|
||||
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>sis-repo</id>
|
||||
<name>Sis Release Repository</name>
|
||||
<url>https://mirrors.huaweicloud.com/repository/maven/huaweicloudsdk</url>
|
||||
<releases>
|
||||
<enabled>true</enabled>
|
||||
</releases>
|
||||
<snapshots>
|
||||
<enabled>false</enabled>
|
||||
</snapshots>
|
||||
</repository>
|
||||
</repositories>
|
||||
<!-- <repositories>-->
|
||||
<!-- <repository>-->
|
||||
<!-- <id>sis-repo</id>-->
|
||||
<!-- <name>Sis Release Repository</name>-->
|
||||
<!-- <url>https://mirrors.huaweicloud.com/repository/maven/huaweicloudsdk</url>-->
|
||||
<!-- <releases>-->
|
||||
<!-- <enabled>true</enabled>-->
|
||||
<!-- </releases>-->
|
||||
<!-- <snapshots>-->
|
||||
<!-- <enabled>false</enabled>-->
|
||||
<!-- </snapshots>-->
|
||||
<!-- </repository>-->
|
||||
<!-- </repositories>-->
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
|
@ -1,71 +1,71 @@
|
||||
package club.joylink.rtss.services.voice.huawei;
|
||||
|
||||
import club.joylink.rtss.exception.BusinessExceptionAssertEnum;
|
||||
import club.joylink.rtss.services.IVoiceService;
|
||||
import club.joylink.rtss.services.voice.baidu.AsrService;
|
||||
import club.joylink.rtss.services.voice.baidu.TokenHolder;
|
||||
import club.joylink.rtss.services.voice.baidu.TtsService;
|
||||
import club.joylink.rtss.services.voice.baidu.VoiceAsrResult;
|
||||
import club.joylink.rtss.vo.client.VoiceRecognitionResult;
|
||||
import com.huawei.sis.bean.AuthInfo;
|
||||
import com.huawei.sis.bean.SisConfig;
|
||||
import com.huawei.sis.bean.request.AsrCustomShortRequest;
|
||||
import com.huawei.sis.bean.response.AsrCustomShortResponse;
|
||||
import com.huawei.sis.client.AsrCustomizationClient;
|
||||
import com.huawei.sis.exception.SisException;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.util.Base64;
|
||||
|
||||
@Slf4j
|
||||
@Service("HuaweiVoiceService")
|
||||
public class HuaweiVoiceServiceImpl implements IVoiceService {
|
||||
|
||||
/**
|
||||
* 华为语音识别配置
|
||||
*/
|
||||
private final String ak = "YDUXTXRYGAHGPHAIXZCU";
|
||||
private final String sk = "Kcbm3sTDCYEou8kGeAhKxfBkgWybIn6IjJyGBX3p";
|
||||
private final String region = "cn-north-4";
|
||||
private final String projectId = "0aada8176180f28c2f34c0196f5394e8";
|
||||
|
||||
|
||||
@Override
|
||||
public String synthesis(String message, String per) {
|
||||
throw BusinessExceptionAssertEnum.THIRD_SERVICE_CALL_EXCEPTION.exception("功能暂未实现");
|
||||
}
|
||||
|
||||
@Override
|
||||
public VoiceRecognitionResult voiceRecognition(MultipartFile file, String lang) {
|
||||
String filePath;
|
||||
try {
|
||||
filePath = IVoiceService.handleAndSaveFile(file);
|
||||
} catch (IOException e) {
|
||||
throw BusinessExceptionAssertEnum.SYSTEM_EXCEPTION.exception("语音文件上传失败", e);
|
||||
}
|
||||
AuthInfo authInfo = new AuthInfo(ak, sk, region, projectId);
|
||||
SisConfig sisConfig = new SisConfig();
|
||||
AsrCustomizationClient client = new AsrCustomizationClient(authInfo, sisConfig);
|
||||
String data;
|
||||
try {
|
||||
data = Base64.getEncoder().encodeToString(file.getBytes());
|
||||
} catch (IOException e) {
|
||||
throw BusinessExceptionAssertEnum.SYSTEM_EXCEPTION.exception("语音文件编码失败", e);
|
||||
}
|
||||
try {
|
||||
AsrCustomShortRequest request = new AsrCustomShortRequest(data, "pcm16k16bit", "chinese_16k_common");
|
||||
AsrCustomShortResponse response = client.getAsrShortResponse(request);
|
||||
return new VoiceRecognitionResult(filePath, response.getResult().getText());
|
||||
} catch (SisException e) {
|
||||
throw BusinessExceptionAssertEnum.SYSTEM_EXCEPTION.exception("语音识别失败", e);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
//package club.joylink.rtss.services.voice.huawei;
|
||||
//
|
||||
//import club.joylink.rtss.exception.BusinessExceptionAssertEnum;
|
||||
//import club.joylink.rtss.services.IVoiceService;
|
||||
//import club.joylink.rtss.services.voice.baidu.AsrService;
|
||||
//import club.joylink.rtss.services.voice.baidu.TokenHolder;
|
||||
//import club.joylink.rtss.services.voice.baidu.TtsService;
|
||||
//import club.joylink.rtss.services.voice.baidu.VoiceAsrResult;
|
||||
//import club.joylink.rtss.vo.client.VoiceRecognitionResult;
|
||||
//import com.huawei.sis.bean.AuthInfo;
|
||||
//import com.huawei.sis.bean.SisConfig;
|
||||
//import com.huawei.sis.bean.request.AsrCustomShortRequest;
|
||||
//import com.huawei.sis.bean.response.AsrCustomShortResponse;
|
||||
//import com.huawei.sis.client.AsrCustomizationClient;
|
||||
//import com.huawei.sis.exception.SisException;
|
||||
//import lombok.extern.slf4j.Slf4j;
|
||||
//import org.springframework.beans.factory.annotation.Autowired;
|
||||
//import org.springframework.stereotype.Service;
|
||||
//import org.springframework.web.client.RestTemplate;
|
||||
//import org.springframework.web.multipart.MultipartFile;
|
||||
//
|
||||
//import java.io.ByteArrayInputStream;
|
||||
//import java.io.IOException;
|
||||
//import java.io.InputStream;
|
||||
//import java.util.Base64;
|
||||
//
|
||||
//@Slf4j
|
||||
//@Service("HuaweiVoiceService")
|
||||
//public class HuaweiVoiceServiceImpl implements IVoiceService {
|
||||
//
|
||||
// /**
|
||||
// * 华为语音识别配置
|
||||
// */
|
||||
// private final String ak = "YDUXTXRYGAHGPHAIXZCU";
|
||||
// private final String sk = "Kcbm3sTDCYEou8kGeAhKxfBkgWybIn6IjJyGBX3p";
|
||||
// private final String region = "cn-north-4";
|
||||
// private final String projectId = "0aada8176180f28c2f34c0196f5394e8";
|
||||
//
|
||||
//
|
||||
// @Override
|
||||
// public String synthesis(String message, String per) {
|
||||
// throw BusinessExceptionAssertEnum.THIRD_SERVICE_CALL_EXCEPTION.exception("功能暂未实现");
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public VoiceRecognitionResult voiceRecognition(MultipartFile file, String lang) {
|
||||
// String filePath;
|
||||
// try {
|
||||
// filePath = IVoiceService.handleAndSaveFile(file);
|
||||
// } catch (IOException e) {
|
||||
// throw BusinessExceptionAssertEnum.SYSTEM_EXCEPTION.exception("语音文件上传失败", e);
|
||||
// }
|
||||
// AuthInfo authInfo = new AuthInfo(ak, sk, region, projectId);
|
||||
// SisConfig sisConfig = new SisConfig();
|
||||
// AsrCustomizationClient client = new AsrCustomizationClient(authInfo, sisConfig);
|
||||
// String data;
|
||||
// try {
|
||||
// data = Base64.getEncoder().encodeToString(file.getBytes());
|
||||
// } catch (IOException e) {
|
||||
// throw BusinessExceptionAssertEnum.SYSTEM_EXCEPTION.exception("语音文件编码失败", e);
|
||||
// }
|
||||
// try {
|
||||
// AsrCustomShortRequest request = new AsrCustomShortRequest(data, "pcm16k16bit", "chinese_16k_common");
|
||||
// AsrCustomShortResponse response = client.getAsrShortResponse(request);
|
||||
// return new VoiceRecognitionResult(filePath, response.getResult().getText());
|
||||
// } catch (SisException e) {
|
||||
// throw BusinessExceptionAssertEnum.SYSTEM_EXCEPTION.exception("语音识别失败", e);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
//}
|
||||
|
Loading…
Reference in New Issue
Block a user