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()
相关推荐
WSSWWWSSW33 分钟前
Matplotlib数据可视化实战:Matplotlib子图布局与管理入门
python·信息可视化·matplotlib
WSSWWWSSW34 分钟前
Matplotlib数据可视化实战:Matplotlib图表美化与进阶教程
python·信息可视化·matplotlib
-Xie-36 分钟前
Maven(二)
java·开发语言·maven
mftang38 分钟前
Python可视化工具-Bokeh:动态显示数据
开发语言·python
Seeklike1 小时前
diffuxers学习--AutoPipeline
人工智能·python·stable diffusion·diffusers
m0_480502641 小时前
Rust 入门 生命周期-next2 (十九)
开发语言·后端·rust
IT利刃出鞘1 小时前
Java线程的6种状态和JVM状态打印
java·开发语言·jvm
前端小趴菜051 小时前
python - 数据类型
python
前端小趴菜051 小时前
python - 变量
python
再吃一根胡萝卜1 小时前
使用 squashmigrations 命令优化 Django 迁移文件
python·django