Java后台整合腾讯云语音识别

本文详细介绍了如何使用腾讯云API实现语音识别,包括创建Java项目、配置依赖、设置SecretId和SecretKey,以及实现一句话识别功能的具体代码示例。

前提工作

 1、仔细阅读腾讯云接口的详细介绍腾讯云接口网址https://cloud.tencent.com/document/product/1093/35691

 2、接入步骤
在这里插入图片描述 生成自己的AppId、SecretId和SecretKey

 3、创建一个Java项目在pom.xml配置文件中添加依赖

        <!-- 注:这里只是示例版本号,请获取并替换为 最新的版本号 -->
        <dependency>
            <groupId>com.tencentcloudapi</groupId>
            <artifactId>tencentcloud-sdk-java</artifactId>
            <version>3.1.62</version>
        </dependency>

 4、添加完依赖在application.properties中配置SecretId和SecretKey

spring.SecretId=改成自己的SecretId
spring.SecretKey=改成自己的SecretKey

 5、创建一个接口(VoiceService)

//带返回值的,可以返回翻译的结果
String Sentence();

 6、创捷一个继承接口的具体方法类(VoiceServiceImpl)


@Service
public class VoiceServiceImpl implements VoiceService {
    //取出application.properties配置中配置的secretId和secretKey的值
    //并把值赋给对应的变量
    @Value("${spring.secretId}")
    private String secretId;
    @Value("${spring.secretKey}")
    private String secretKey;
    @Override
    public String Sentence() {
        try{
            Credential cred = new Credential(secretId, secretKey);
            HttpProfile httpProfile = new HttpProfile();
            httpProfile.setEndpoint("asr.tencentcloudapi.com");
            ClientProfile clientProfile = new ClientProfile();
            clientProfile.setHttpProfile(httpProfile);
            clientProfile.setSignMethod("TC3-HMAC-SHA256");
            AsrClient client = new AsrClient(cred, "ap-shanghai", clientProfile);
            String params = "{\"ProjectId\":0,\"SubServiceType\":2,\"EngSerViceType\":\"16k_zh\",\"SourceType\":1,\"Url\":\"\",\"VoiceFormat\":\"wav\",\"UsrAudioKey\":\"session-123\"}";
            SentenceRecognitionRequest req = SentenceRecognitionRequest.fromJsonString(params, SentenceRecognitionRequest.class);
            //这里直接给出一个音频文件的本地路径
            File file = new File("C:/Users/zhao/Desktop/ws.wav");
            FileInputStream inputFile = new FileInputStream(file);
            byte[] buffer = new byte[(int)file.length()];
            req.setDataLen(file.length());
            inputFile.read(buffer);
            inputFile.close();
            String encodeData = Base64.getEncoder().encodeToString(buffer);
            req.setData(encodeData);

            SentenceRecognitionResponse resp = client.SentenceRecognition(req);
            String result = resp.getResult();
            return result;
        } catch (TencentCloudSDKException | IOException e) {
            System.out.println(e.toString());
        }
        return null;
    }
}

 7、创建controller层(VoiceController)

@Controller
public class VoiceController {
    @Autowired
    VoiceService voiceService;
    @RequestMapping("voice")
    @ResponseBody
    public void voice(){
        String result = voiceService.Sentence();
        //在控制台打印翻译结果
        System.out.println(result);
    }
}

翻译结果将在控制台打印出来

总结:这只是腾讯云语音识别其中的一项功能:一句话识别。其它的二个功能,录音文件识别和实时语音识别具体的操作流程和上述代码及步骤相差不大。如果需要前端文件上传到数据库并根据返回的那个url来翻译可以参考我的另一篇关于文件上传的文章,把这两篇文章合二为一即可。 文件上传的文章https://blog.youkuaiyun.com/javaasd/article/details/105079879

渝农服农业产业互联网平台 - 产品需求文档(PRD) 文件版本: V1.0 日期:2023年10月29日 项目名称:渝农服小程序 文档编号:PRD-YNF-V1.0 1. 文档概述 项 内容 项目名称 渝农服小程序 项目简介 一款赋能乡镇农资店,整合土地、农资、技术、金融、劳务、销售全产业链资源的农业综合服务平台。 目标用户 1. 农户/种植户 2. 乡镇农资店(升级为服务站) 3. 大宗农产品采购商 核心价值 为农户提供“种什么、怎么种、卖给谁、钱在哪”的一站式解决方案;为农资店增收提效。 阅读对象 项目经理、UI/UX设计师、前端/后端/测试工程师、运营团队 2. 整体功能清单(Mind Map) ```mermaid mindmap root((渝农服小程序 V1.0)) 核心功能 土地资源 信息发布 地图找地 需求悬赏 线下带看 农资集采 严选商城 SPU/SKU管理 订单管理 物流跟踪 AI农技 病虫害识别(AI+人工) 智能问答 专家问诊 劳务调度 用工发布 劳务报名 人员管理 我的 我的地块 我的订单(土地/农资) 我的劳务 我的佣金 服务端管理后台 总平台后台 全局数据看板 用户与权限管理 内容与资讯管理 财务与分润管理 区县管理后台 本区县数据看板 服务站管理与审核 订单与用工审核 服务站工作台(PC/小程序) 土地信息审核 客户管理 佣金提现 农资代下单 ``` 3. 核心功能模块详细说明 3.1 土地资源模块 · 功能描述: 用户可发布、浏览、查询土地流转信息。 · 需求详情: · 信息发布: 发布者需填写土地位置、面积、价格、性质(耕地/林地)、照片、视频、联系方式。信息提交后,由土地所属乡镇的服务站审核(若无服务站,则由平台审核)。 · 信息展示: 列表式与地图式(集成腾讯地图API)两种浏览方式。支持按面积、价格、地理位置筛选。 · 收费模式: · 线上: 用户支付信息费后,可查看发布者的直接联系方式和高精度位置。 · 线下: 用户可选择“联系带看”,需求直接派发给属地服务站,由服务站提供带看服务并收取中介费,平台与服务站分润。 3.2 农资集采模块 · 功能描述: 自营式农资电商平台。 · 需求详情: · 平台严选: 平台统一招商、选品、定价、上架(SPU/SKU管理)。确保品质,杜绝假货。 · 购买流程: 标准电商流程(浏览-加购-下单-支付-售后)。支持农户自行下单,或到线下服务站由店员代下单。 · 物流: 与物流厂商合作,提供物流跟踪功能。 · 分润机制: 农户每笔订单,其所属区域的服务站自动获得佣金,可在其后台查看。 3.3 AI农技模块 · 功能描述: 提供病虫害智能识别与解决方案。 · 需求详情: · AI识别: 用户拍照上传,系统调用第三方AI接口(如百度飞桨)进行初筛,返回识别结果和初步解决方案。 · 人工审核: 识别结果自动推送至平台专家库(可由资深农艺师兼职),专家进行最终审核并修正方案,确保准确。 · 药方与购药: 最终方案中可包含推荐药品,并直接链接到农资集采模块的对应商品,实现“即识即买”。 3.4 劳务调度模块 · 功能描述: 连接用工方与劳动力。 · 需求详情: · 用工发布: 种植大户/企业可发布用工需求(时间、地点、工种、人数、薪资)。 · 劳务报名: 劳动力(由服务站组织管理)可在线报名。 · 管理: 服务站可看到本区域的用工需求,并推荐合适的劳动力人选。平台提供打卡、评价机制。 3.5 权限与分润后台 · 功能描述: 不同角色有不同视图和权限,分润系统自动化。 · 需求详情: · 权限隔离: 服务站只能查看和操作其所属乡镇的数据。总平台可查看全局。 · 分润系统: 后台可配置不同业务(土地、农资、劳务)的分润比例。每一笔交易完成后,系统自动计算佣金并计入相应服务站的账户,可申请提现。 --- 渝农服农业产业互联网平台 - 技术架构方案 技术栈选型(建议) 层面 技术选型 说明 前端 微信小程序 + Uni-app 开发一套代码,可发布到微信、支付宝、H5等多个平台,降低成本。 后端 Java (Spring Boot) 或 Go (Gin) 适合复杂的业务逻辑和高并发场景,生态成熟,人才好找。 数据库 MySQL + Redis MySQL存储核心业务数据;Redis用作缓存(热点数据、会话)和消息队列。 图片/文件存储 腾讯云COS 或 阿里云OSS 专业、可靠、低成本的对象存储服务,无需自建服务器。 AI服务 百度飞桨PaddlePaddle 调用其现成的农作物病虫害识别API,快速实现功能,避免自研。 地图服务 腾讯地图LBS 用于土地位置选择、展示、附近服务网点查找等功能。 服务器部署 腾讯云 或 阿里云 采用云服务器(CVM)、负载均衡(SLB)、云数据库(CDB)等产品,保证稳定与弹性伸缩。 运维监控 Docker 实现环境标准化,简化部署。配合Prometheus+Grafana进行监控。 系统架构图 ``` [用户端] | | (HTTPS/WebSocket) v [负载均衡 (SLB/Nginx)] // 流量分发,保证高可用 | +------------------+------------------+ | | | v [Spring Boot/Go 应用服务器集群] // 处理核心业务逻辑 | | | +------------------+------------------+ | | | v [Redis Cluster] v [MySQL Cluster] // 缓存与核心数据存储 | | | v [腾讯云COS/AliOSS] // 存储图片、视频等静态资源 | v [第三方服务] | +-- 百度飞桨AI API +-- 腾讯地图API +-- 短信服务API +-- 支付API(微信支付/支付宝) ``` 数据库核心表设计(部分) · 用户表 (t_user): user_id, phone, user_type(农户、服务站、采购商), service_station_id(关联所属服务站) · 服务站表 (t_service_station): station_id, name, location, owner_user_id, status · 土地信息表 (t_land): land_id, title, area, location, images, status, publisher_id, auditor_station_id(审核的服务站) · 农资订单表 (t_order): order_id, user_id, total_amount, status, station_id(佣金归属站) · 佣金记录表 (t_commission): commission_id, order_id, station_id, amount, status ---
最新发布
09-22
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值