news 2026/5/10 17:39:38

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
[具身智能-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

二、通用音频录制代码(录音保存为 wav)

python

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( format=FORMAT, channels=CHANNELS, rate=RATE, input=True, frames_per_buffer=CHUNK ) 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( format=FORMAT, channels=CHANNELS, rate=RATE, input=True, frames_per_buffer=CHUNK ) print("实时获取音频输入,按Ctrl+C退出") try: while True: # 读取原始字节 data = stream.read(CHUNK) # 转成numpy数组,方便算法处理 audio_np = np.frombuffer(data, dtype=np.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.openinput_device_index=设备号

python

运行

stream = p.open( format=FORMAT, channels=CHANNELS, rate=RATE, input=True, input_device_index=2, # 改成你查到的麦克风编号 frames_per_buffer=CHUNK )

五、平台适配说明

  1. 树莓派 4B/5

    • USB 麦、USB 声卡、I2S ReSpeaker 阵列 都能用
    • 采样率固定16000适配语音识别最佳
  2. RK3568/RK3588

    • 板载模拟麦、I2S、PDM 阵列 全部兼容
    • 自带 NPU,可把读到的音频流直接送入本地语音模型

六、常见问题

  • 报错找不到设备:apt install alsa-utils,执行arecord -l看麦克风是否被系统识别
  • 杂音大:降低增益、改用 I2S/PDM 数字麦,不用模拟麦
  • 采样率报错:强制用 16000 或 8000 标准语音采样率
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/10 17:38:15

2025届最火的六大AI辅助论文平台推荐

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 学术写作全新路径被人工智能技术所开拓,自然语言处理与深度学习模型被借助&…

作者头像 李华
网站建设 2026/5/10 17:37:50

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

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

作者头像 李华
网站建设 2026/5/10 17:32:31

MouseClick终极指南:免费鼠标自动化工具轻松提升10倍工作效率

MouseClick终极指南:免费鼠标自动化工具轻松提升10倍工作效率 【免费下载链接】MouseClick 🖱️ MouseClick 🖱️ 是一款功能强大的鼠标连点器和管理工具,采用 QT Widget 开发 ,具备跨平台兼容性 。软件界面美观 &…

作者头像 李华
网站建设 2026/5/10 17:30:33

视频怎么去水印?2026实测去水印方法全解析+视频去水印工具推荐

视频怎么去水印?2026实测去水印方法全解析视频去水印工具推荐 视频上的水印去不掉,一直是做内容的人头疼的问题。平台 Logo、账号 ID、剪辑软件的品牌标识……这些东西贴在画面上,直接影响二次创作的质量。2026年,去水印的方式已经…

作者头像 李华
网站建设 2026/5/10 17:29:36

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

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

作者头像 李华