python监听环境内是否有声音

python监听环境内是否有声音

首先使用pyaudio打开麦克风,并开始录音。然后使用一个while循环来不断读取麦克风录取的音频数据,然后使用numpy来分析音频数据是否有声音。当检测到有声音时,会打印"有声音"并退出循环。最后关闭录音流和释放资源。

python 复制代码
import pyaudio
import numpy as np

CHUNK = 1024
FORMAT = pyaudio.paInt16
CHANNELS = 1
RATE = 44100

audio = pyaudio.PyAudio()

stream = audio.open(format=FORMAT, channels=CHANNELS,
                    rate=RATE, input=True,
                    frames_per_buffer=CHUNK)

print("Listening...")

while True:
    data = np.frombuffer(stream.read(CHUNK), dtype=np.int16)
    if np.max(data) > 1000:  # 判断是否有声音
        print("有声音")
        break

stream.stop_stream()
stream.close()
audio.terminate()
相关推荐
念何架构之路几秒前
Go reflect包值操作 Value 的读写、可设置性与 interface 布局
开发语言·后端·golang
JustNow_Man3 分钟前
【Harness】本地文本向量化搜索解决方案--qmd
git·python·算法
小林ixn3 分钟前
用 FastAPI + SQLAlchemy 从零手搓一个博客系统:一套能落地、能讲清楚的 RESTful 后端
后端·python·fastapi
小年糕是糕手5 分钟前
【AI】用 Python 做一个 AI 截图检索助手:把收藏夹里的截图找回来
linux·人工智能·python·chatgpt·agent·codex·deepseek
云中飞鸿7 分钟前
.Net和C#有什么关系?(从C++视角观察)
开发语言·c#·.net
another heaven9 分钟前
【C/C++ C++ 新特性中的那些内存优化的特性】
c语言·开发语言·c++
Wang's Blog11 分钟前
Java 项目实战: 交友项目 - 查询推荐动态
java·开发语言·交友
jaysee-sjc17 分钟前
【苍穹外卖】Day10:定时任务与 WebSocket 实时提醒实战
java·开发语言·javascript·数据库·vue.js·websocket·网络协议
ysu_031419 分钟前
【C++ 进阶之路】(二)从内联函数到类与对象:深挖内存对齐、this 指针与三大默认成员函数
开发语言·数据结构·c++·笔记·面向对象·this
2601_9679801120 分钟前
wxPython 入门教程.pdf
python·wxpython·gui·教程·移植性