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()
相关推荐
云和数据.ChenGuang2 分钟前
Zabbix 6 与 PHP 5 版本**完全不兼容
运维·开发语言·php·zabbix·运维工程师
csbysj20202 分钟前
Ruby 范围(Range)
开发语言
littlezls5 分钟前
在VSCode中运行Python脚本文件时如何传参
vscode·python
苏 凉7 分钟前
在 openEuler 24.03 LTS SP2 上安装部署 iSula 容器引擎及性能测试
开发语言·rust
@#---18 分钟前
爬取b站的网页信息
爬虫·python
qq_3363139318 分钟前
HashMap
java·开发语言
专注VB编程开发20年26 分钟前
C# int*指向 int 的指针类型(unsafe 上下文)
java·开发语言·c#
要站在顶端33 分钟前
iOS自动化测试全流程教程(基于WebDriverAgent+go-ios)
开发语言·ios·golang
liwulin050635 分钟前
【PYTHON】python venv创建虚拟环境,非conda
开发语言·python·conda
fengfuyao98535 分钟前
基于MATLAB的支持向量机在故障诊断中的应用例程
开发语言·支持向量机·matlab