news 2026/4/29 12:32:05

【JAVA】创建一个不需要依赖的websocket服务器接收音频文件

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【JAVA】创建一个不需要依赖的websocket服务器接收音频文件

【JAVA】创建一个不需要依赖的websocket服务器接收音频文件

    • JAVA服务端
    • PYTHON客户端
    • 测试

JAVA服务端

服务端代码见链接:https://gitee.com/likexiang/like-code/blob/master/ESP32-S3-CAM/JavaWebsocket/NativeWebSocketAudioServer.java

PYTHON客户端

# 纯Python测试客户端(无依赖)importwebsocketimporttime# 连接服务器ws=websocket.create_connection("ws://localhost:8888")print("连接响应:",ws.recv())# 发送格式指定指令ws.send("set_format:wav")print("格式响应:",ws.recv())# 读取本地音频文件并分片发送withopen("test_audio.wav","rb")asf:whileTrue:data=f.read(1024)# 每次1024字节ifnotdata:breakws.send_binary(data)time.sleep(0.01)# 模拟实时上传# 发送结束上传指令ws.send("finish_upload")print("结束响应:",ws.recv())# 关闭连接ws.close()

测试

服务端打印

纯Java WebSocket音频服务器已启动(端口:8888) 音频保存路径:D:\java\AIAS-main\AIAS-main\1_image_sdks\onlyTest\received_audio ===================================== 客户端连接:/127.0.0.1:52870 客户端[/127.0.0.1:52870]WebSocket握手成功 收到客户端[/127.0.0.1:52870]文本指令:set_format:wav 客户端[/127.0.0.1:52870]无音频数据可保存 客户端[/127.0.0.1:52870]连接已关闭 客户端连接:/127.0.0.1:52941 客户端[/127.0.0.1:52941]WebSocket握手成功 收到客户端[/127.0.0.1:52941]文本指令:set_format:wav 收到客户端[/127.0.0.1:52941]音频数据:本次1024字节 | 累计1024字节 收到客户端[/127.0.0.1:52941]音频数据:本次1024字节 | 累计2048字节 收到客户端[/127.0.0.1:52941]音频数据:本次1024字节 | 累计3072字节

客户端打印

D:\java\AIAS-main\AIAS-main\1_image_sdks\onlyTest\src\main>python socketClient.py 连接响应: WebSocket连接成功,可开始上传音频数据(支持mp3/wav/pcm格式) 格式响应: 已设置音频保存格式为:wav 结束响应: 音频文件已保存完成!
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/29 4:28:43

托育机构监管:儿童活动状态AI观察系统

托育机构监管:儿童活动状态AI观察系统 引言:托育安全的智能化升级需求 近年来,随着城市化进程加快和双职工家庭比例上升,托育机构成为婴幼儿照护的重要补充。然而,儿童在园期间的安全问题频发——跌倒无人及时发现、争…

作者头像 李华
网站建设 2026/4/27 22:12:13

Hunyuan-MT-7B-WEBUI能否接入微信公众号?轻量级服务设想

Hunyuan-MT-7B-WEBUI能否接入微信公众号?轻量级服务设想 在今天的数字化公共服务场景中,一个基层政务公众号如果能自动把政策通知翻译成藏语或维吾尔语,会带来怎样的改变?又或者,一家跨境电商企业通过公众号为海外客户…

作者头像 李华
网站建设 2026/4/16 0:26:44

Hunyuan-MT-7B-WEBUI翻译Grafana仪表板标签实践

Hunyuan-MT-7B-WEBUI翻译Grafana仪表板标签实践 在跨国团队协作日益频繁的今天,一个中文命名的监控系统可能让海外同事望而却步。比如,当你把“CPU使用率”、“内存阈值告警”这样的指标展示在Grafana面板上时,是否考虑过非中文母语成员的理解…

作者头像 李华
网站建设 2026/4/23 16:04:21

轻松部署腾讯混元翻译模型:Jupyter环境下的一键启动流程

腾讯混元翻译模型的极简部署实践:从零到翻译只需两分钟 在跨国协作日益频繁、多语言内容爆炸式增长的今天,企业与研究团队对高质量机器翻译的需求从未如此迫切。无论是跨境电商的商品描述本地化,还是民族语言文献的数字化保护,亦或…

作者头像 李华
网站建设 2026/4/19 21:48:11

保姆级教程:RAG技术在大模型应用开发中的实践指南(建议收藏)

RAG技术解决了大模型的局限性,包括领域知识缺乏、幻觉问题、信息过时和数据安全。本文详细介绍了RAG的核心概念、标准流程、分块策略、检索优化、调实践和效果评估。通过嵌入模型将文本转换为向量,利用向量数据库实现高效检索,结合大模型生成…

作者头像 李华
网站建设 2026/4/20 2:48:45

CPU模式可用吗?无GPU环境下的替代方案

CPU模式可用吗?无GPU环境下的替代方案 万物识别-中文-通用领域:技术背景与挑战 在当前AI应用快速落地的背景下,图像识别技术已广泛应用于内容审核、智能搜索、辅助诊断等多个场景。然而,大多数开源模型默认依赖GPU进行推理&#x…

作者头像 李华