栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java使用azure初入门

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java使用azure初入门

语音服务试用: 开始准备:

首先创建一个语音服务

创建成功后进入该服务

然后找到 密钥和终结点

保存密钥和位置/区域
密钥1和密钥2其中一个就可以

开始代码

首先添加依赖


            com.microsoft.cognitiveservices.speech
            client-sdk
            1.18.0
        

我使用时这个依赖是不能直接从我之前常用的maven库下载来的,azure还提供了包含对语音 SDK 的 Maven 存储库的引用


  
    maven-cognitiveservices-speech
    Microsoft Cognitive Services Speech Maven Repository
    https://csspeechstorage.blob.core.windows.net/maven/
  

引用完就可以开始java代码了

文字转语音服务
public static void main(String[] args) {
        //配置
        SpeechConfig speechConfig = SpeechConfig.fromSubscription("aaaa",
                "bbbb");
        //语言类型为中文
        speechConfig.setSpeechSynthesisLanguage("zh-cn"); // e.g. "de-DE"
        //讲话风格
        speechConfig.setSpeechSynthesisVoiceName("zh-CN-XiaomoNeural");
        AudioConfig audioConfig = AudioConfig.fromDefaultSpeakerOutput();
        SpeechSynthesizer synthesizer = new SpeechSynthesizer(speechConfig, audioConfig);
        synthesizer.SpeakText("语音转换真有趣!");
    }

配置中的aaaa填准备阶段保存下来的密钥
配置中的bbbb填准备阶段保存下来的和位置/区域
讲话风格可以自定义

更多可以参照
https://docs.microsoft.com/zh-cn/azure/cognitive-services/speech-service/speech-synthesis-markup?tabs=csharp
如果需要将生成的语音保存下来,就将
AudioConfig audioConfig = AudioConfig.fromDefaultSpeakerOutput();
替换为
AudioConfig audioConfig = AudioConfig.fromWavFileOutput("D:/test.wav");
即可

语音转文字服务

java代码

SpeechConfig speechConfig = SpeechConfig.fromSubscription("aaaa",
                "bbbb");
AudioConfig audioConfig = AudioConfig.fromWavFileInput("D:/test.wav");
        SpeechRecognizer recognizer = new SpeechRecognizer(speechConfig,"zh-cn", audioConfig);

        Future task = recognizer.recognizeOnceAsync();
        SpeechRecognitionResult result = task.get();
        System.out.println("转换成功的语言:" + result.getText());

运行结果

注意
配置中的aaaa填准备阶段保存下来的密钥
配置中的bbbb填准备阶段保存下来的和位置/区域
语言一定要记得配置,不然会生成的是奇怪的句子哈哈哈哈eg:转换成功的语言:Huion drawing, giochi.

翻译语音

java代码

public static void main(String[] args) throws ExecutionException, InterruptedException {
        SpeechTranslationConfig translationConfig = SpeechTranslationConfig.fromSubscription(
                "aaaa",
                "bbbb");
        String fromLanguage = "zh-cn";
        String[] toLanguages = { "en-US" };
        translationConfig.setSpeechRecognitionLanguage(fromLanguage);
        for (String language : toLanguages) {
            translationConfig.addTargetLanguage(language);
        }
        AudioConfig audioConfig = AudioConfig.fromWavFileInput("D:/test.wav");
        try (TranslationRecognizer recognizer = new TranslationRecognizer(translationConfig, audioConfig)){
            System.out.printf("来源语音设定为'%s' ", fromLanguage);

            TranslationRecognitionResult result = recognizer.recognizeOnceAsync().get();
            if (result.getReason() == ResultReason.TranslatedSpeech) {
                System.out.printf("音频转文字为: "%s"n", result.getText());
                for (Map.Entry pair : result.getTranslations().entrySet()) {
                    System.out.printf("文字翻译为 '%s': %sn", pair.getKey(), pair.getValue());
                }
            }
        }
    }

配置中的aaaa填准备阶段保存下来的密钥
配置中的bbbb填准备阶段保存下来的和位置/区域
fromLanguage 配置音频的语言类型
toLanguages 配置翻译的语言类型,这是一个数组,可以配置多种语言

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/389927.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号