当前位置: 首页 > article >正文

[具身智能-631]:获取音频输入的代码示例

树莓派 4B/5、RK3568/RK3588 音频输入代码示例统一用Python pyaudio wave适配USB 麦克风、I2S 麦克风、板载音频输入一套代码通用。一、先装依赖bash运行sudo apt update sudo apt install portaudio19-dev python3-pip pip3 install pyaudio wave二、通用音频录制代码录音保存为 wavpython运行import pyaudio import wave # 配置参数 FORMAT pyaudio.paInt16 # 16位采样 CHANNELS 1 # 单声道 语音够用 RATE 16000 # 语音标准16k采样率 CHUNK 1024 # 每次读取帧数 RECORD_SECONDS 5 # 录音时长 WAVE_OUTPUT_FILENAME audio_in.wav # 初始化 p pyaudio.PyAudio() # 打开音频流 stream p.open( formatFORMAT, channelsCHANNELS, rateRATE, inputTrue, frames_per_bufferCHUNK ) print(开始录音...) frames [] # 循环读取音频输入 for _ in range(0, int(RATE / CHUNK * RECORD_SECONDS)): data stream.read(CHUNK) frames.append(data) print(录音结束) # 关闭流 stream.stop_stream() stream.close() p.terminate() # 保存为wav文件 wf wave.open(WAVE_OUTPUT_FILENAME, wb) wf.setnchannels(CHANNELS) wf.setsampwidth(p.get_sample_size(FORMAT)) wf.setframerate(RATE) wf.writeframes(b.join(frames)) wf.close()三、实时读取音频流不存文件直接拿数据流适合做语音识别、降噪、AI 实时推理python运行import pyaudio import numpy as np FORMAT pyaudio.paInt16 CHANNELS 1 RATE 16000 CHUNK 512 p pyaudio.PyAudio() stream p.open( formatFORMAT, channelsCHANNELS, rateRATE, inputTrue, frames_per_bufferCHUNK ) print(实时获取音频输入按CtrlC退出) try: while True: # 读取原始字节 data stream.read(CHUNK) # 转成numpy数组方便算法处理 audio_np np.frombuffer(data, dtypenp.int16) # 这里可以做音量检测、VAD静音检测、送入AI模型 print(当前音频音量均值, np.abs(audio_np).mean()) except KeyboardInterrupt: print(停止采集) finally: stream.stop_stream() stream.close() p.terminate()四、选择指定麦克风设备多麦共存时用1. 先查看所有音频设备python运行import pyaudio p pyaudio.PyAudio() for i in range(p.get_device_count()): print(i, p.get_device_info_by_index(i)[name])2. 指定设备编号录制在stream.open加input_device_index设备号python运行stream p.open( formatFORMAT, channelsCHANNELS, rateRATE, inputTrue, input_device_index2, # 改成你查到的麦克风编号 frames_per_bufferCHUNK )五、平台适配说明树莓派 4B/5USB 麦、USB 声卡、I2S ReSpeaker 阵列 都能用采样率固定16000适配语音识别最佳RK3568/RK3588板载模拟麦、I2S、PDM 阵列 全部兼容自带 NPU可把读到的音频流直接送入本地语音模型六、常见问题报错找不到设备apt install alsa-utils执行arecord -l看麦克风是否被系统识别杂音大降低增益、改用 I2S/PDM 数字麦不用模拟麦采样率报错强制用 16000 或 8000 标准语音采样率

相关文章:

[具身智能-631]:获取音频输入的代码示例

树莓派 4B/5、RK3568/RK3588 音频输入代码示例统一用 Python pyaudio wave,适配:USB 麦克风、I2S 麦克风、板载音频输入,一套代码通用。一、先装依赖bash运行sudo apt update sudo apt install portaudio19-dev python3-pip pip3 install p…...

[具身智能-630]:树莓派 4B/5、RK3568/RK3588 音频输入代码示例

统一用 Python pyaudio wave,适配:USB 麦克风、I2S 麦克风、板载音频输入,一套代码通用。 一、先装依赖 bash sudo apt update sudo apt install portaudio19-dev python3-pip pip3 install pyaudio wave二、通用音频录制代码&#xff0…...

[具身智能-629]:为什么语音有这么多接口类型

一句话核心:不同场景、距离、音质、功耗、算力、布线、抗干扰需求,逼出了不同语音接口,没有一种能通吃所有。我们用最通俗、工程化的逻辑讲,听完彻底详解:1. 先分两大类:模拟声音 vs 数字声音① 模拟接口&a…...

[具身智能-628]:树莓派 4B/5、RK3568/RK3588 开发板的语音传感器接口

树莓派 4B/5、RK3568/RK3588 开发板连接语音传感器(麦克风),主要通过 I2S/PDM/TDM 数字接口、USB、模拟 Mic 口、HAT / 扩展板 四大类方式。下面按平台详细说明硬件接口、引脚定义与常用方案。一、树莓派 4B / 5 语音接口1. 板载原生接口无板…...

QKeyMapper完全指南:Windows平台终极按键映射解决方案

QKeyMapper完全指南:Windows平台终极按键映射解决方案 【免费下载链接】QKeyMapper [按键映射工具] QKeyMapper,Qt开发Win10&Win11可用,不修改注册表、不需重新启动系统,可立即生效和停止。支持游戏手柄映射到键鼠&#xff0c…...

深度测评2026年三星SDI电池和三星道达尔化工原料权威榜单

在当前的工程塑料供应链领域,制造业企业普遍面临着一个核心矛盾:一方面,高端制造场景对材料性能的要求日益严苛,涉及耐高温、无卤阻燃、高频低损耗等复杂指标;另一方面,传统的原料采购模式却存在信息不对称…...

TikTokCommentScraper:创新智能的抖音评论自动化采集解决方案,让数据驱动决策变得简单

TikTokCommentScraper:创新智能的抖音评论自动化采集解决方案,让数据驱动决策变得简单 【免费下载链接】TikTokCommentScraper 项目地址: https://gitcode.com/gh_mirrors/ti/TikTokCommentScraper TikTokCommentScraper 是一款创新的抖音评论数…...

别再乱调字体了!Qt界面开发中QSS字体属性(font-family, size, weight)的实战避坑指南

Qt界面开发中的QSS字体属性实战避坑指南 在Qt界面开发中,字体渲染问题就像是一个隐形的"坑王"——平时不显山露水,一到项目交付或跨平台测试时就开始疯狂刷存在感。我至今记得第一次看到精心设计的"微软雅黑"界面在客户Linux机器上变…...

WindowResizer完整指南:如何强制调整任意Windows窗口大小

WindowResizer完整指南:如何强制调整任意Windows窗口大小 【免费下载链接】WindowResizer 一个可以强制调整应用程序窗口大小的工具 项目地址: https://gitcode.com/gh_mirrors/wi/WindowResizer 还在为那些无法调整大小的Windows窗口而烦恼吗?老…...

自制编程语言:挑战与乐趣并存,10000 行 C++ 代码实现多项功能,未来规划丰富!

自制编程语言:比想象中容易,也更具挑战2026 年 5 月 6 日。去年 12 月中旬,作者开始打造自己的编程语言,目前距生产级质量有差距,但已编写约 1000 行代码的蒙特卡罗路径追踪器。项目暂停,作者分享相关内容。…...

如何快速提升游戏体验:Starward开源启动器完整使用指南

如何快速提升游戏体验:Starward开源启动器完整使用指南 【免费下载链接】Starward Game Launcher for miHoYo - 米家游戏启动器 项目地址: https://gitcode.com/gh_mirrors/st/Starward Starward是一款专为米哈游游戏玩家设计的免费开源第三方启动器&#xf…...

DXVK 2.7.1深度解析:Linux游戏生态的Direct3D翻译层革命性突破

DXVK 2.7.1深度解析:Linux游戏生态的Direct3D翻译层革命性突破 【免费下载链接】dxvk Vulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine 项目地址: https://gitcode.com/gh_mirrors/dx/dxvk 在Linux平台上运行Windows游戏和图形应用一直…...

如何在Firefox中免费下载Sketchfab模型:3步掌握离线保存终极技巧

如何在Firefox中免费下载Sketchfab模型:3步掌握离线保存终极技巧 【免费下载链接】sketchfab sketchfab download userscipt for Tampermonkey by firefox only 项目地址: https://gitcode.com/gh_mirrors/sk/sketchfab 你是否曾经在Sketchfab平台上发现令人…...

Diablo Edit2:暗黑破坏神II角色编辑器的完全指南

Diablo Edit2:暗黑破坏神II角色编辑器的完全指南 【免费下载链接】diablo_edit Diablo II Character editor. 项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit 你是否曾经在暗黑破坏神II中花费数百小时刷装备、练级,却发现距离理想角色…...

围棋AI分析平台LizzieYzy:专业复盘工具与多引擎集成方案深度解析

围棋AI分析平台LizzieYzy:专业复盘工具与多引擎集成方案深度解析 【免费下载链接】lizzieyzy LizzieYzy - GUI for Game of Go 项目地址: https://gitcode.com/gh_mirrors/li/lizzieyzy LizzieYzy作为一款基于Lizzie框架深度优化的围棋AI分析平台&#xff0c…...

SingleFile终极指南:如何一键保存完整网页到单个HTML文件

SingleFile终极指南:如何一键保存完整网页到单个HTML文件 【免费下载链接】SingleFile Web Extension for saving a faithful copy of a complete web page in a single HTML file 项目地址: https://gitcode.com/gh_mirrors/si/SingleFile SingleFile是一款…...

第52篇:Vibe Coding时代:LangGraph + 审计日志实战,解决 Agent 做了什么无人可追的问题

第52篇:Vibe Coding时代:LangGraph + 审计日志实战,解决 Agent 做了什么无人可追的问题 一、问题场景:线上出问题后,没人知道 Agent 当时做了什么 当 Agent 具备代码修改、测试、提交、PR 创建能力后,必须有审计日志。 否则一旦出现问题: 某个接口突然返回异常 某个权…...

Netgear路由器终极救援指南:如何用开源工具nmrpflash拯救“变砖“设备

Netgear路由器终极救援指南:如何用开源工具nmrpflash拯救"变砖"设备 【免费下载链接】nmrpflash Netgear Unbrick Utility 项目地址: https://gitcode.com/gh_mirrors/nmr/nmrpflash 当你的Netgear路由器固件升级失败、系统崩溃或意外断电后无法启…...

第51篇:Vibe Coding时代:LangGraph + 权限系统实战,解决 Agent 谁都能改代码、调用工具的安全问题

第51篇:Vibe Coding时代:LangGraph + 权限系统实战,解决 Agent 谁都能改代码、调用工具的安全问题 一、问题场景:Agent 能力做强了,但谁都能用就很危险 前面我们已经把 Coding Agent 做到了可以: 读项目文件 写代码 运行测试 生成 diff 提交 Git 创建 PR 查询 CI能力越…...

独立开发者如何利用Taotoken管理多个个人项目的AI调用成本

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 独立开发者如何利用Taotoken管理多个个人项目的AI调用成本 对于独立开发者而言,同时推进多个小项目是常态。每个项目都…...

《文字定律》随笔-AI们聊“艺术”-Deepseek、Grok、ChatGPT、Geminni

AI们总结和感悟了:艺术的由来、艺术的作用、艺术的演变、艺术的偏离,以及聊天后的感受。一下是我分享他们的总结和各自的感悟。Deepseek的总结:从种植到收割,以及我们遗忘的那些事:艺术,是文字之外的另一种…...

2026届学术党必备的十大降重复率神器推荐

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 已正式被推出名为AIGC检测服务系统的是中国知网,其目的在于识别学术文献里由人工…...

FramePack帧压缩技术解析:如何实现视频生成的恒定计算复杂度

FramePack帧压缩技术解析:如何实现视频生成的恒定计算复杂度 【免费下载链接】FramePack Lets make video diffusion practical! 项目地址: https://gitcode.com/gh_mirrors/fr/FramePack 在视频生成领域,传统方法面临着一个根本性挑战&#xff1…...

构建企业内部知识库问答机器人时的API聚合与降本思考

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 构建企业内部知识库问答机器人时的API聚合与降本思考 1. 场景与挑战 许多企业希望利用大语言模型构建一个能够理解并回答内部文档…...

将Taotoken作为Hermes Agent项目的自定义模型供应商进行配置

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 将Taotoken作为Hermes Agent项目的自定义模型供应商进行配置 应用场景类,当你使用Hermes Agent框架构建AI应用时&#…...

Vue项目引入vue-particles插件避坑指南:从安装到性能优化的全流程

Vue项目引入vue-particles插件避坑指南:从安装到性能优化的全流程 在当今前端开发领域,视觉效果已成为提升用户体验的关键因素之一。vue-particles作为一款广受欢迎的粒子背景插件,能够为Vue项目添加动态的粒子效果,增强页面的视觉…...

C语言实战:辗转相除法实现分数约分

1. 从生活场景理解分数约分 记得小时候第一次学分数时,老师总让我们把分数化成最简形式。比如6/8要写成3/4,当时觉得这就像给分数"减肥"一样有趣。其实在编程世界里,我们也经常需要处理类似的"分数减肥"问题,…...

手把手教你用88E1111 PHY芯片搞定百兆以太网硬件设计(附MII接口配置避坑指南)

手把手教你用88E1111 PHY芯片实现百兆以太网硬件设计实战指南 在嵌入式系统和工业控制领域,百兆以太网仍然是可靠且经济高效的网络解决方案。Marvell的88E1111 PHY芯片凭借其稳定性和灵活性,成为众多硬件工程师的首选。本文将从一个实际项目开发者的视角…...

Neo4j数据迁移实战:从旧graph.db到新库,用CSV批量导入重构知识图谱

Neo4j数据迁移实战:从旧graph.db到新库的CSV重构指南 当你面对一个积累了多年数据的Neo4j数据库时,直接操作graph.db文件就像在走钢丝——一个失误就可能导致数据灾难。本文将带你用CSV这座"桥梁",安全地将数据从旧库迁移到新环境。…...

基于大语言模型的智能文档管理系统:从OCR到AI理解的效率革命

1. 项目概述:当文档管理遇上AI,一场效率革命 如果你和我一样,每天都要处理大量的PDF、扫描件、发票、合同和各类纸质文件的电子版,那你一定对“文档管理”这件事深有体会。文件散落在各个文件夹,命名混乱,…...