windows11 windows 11 (win11 win 11) 怎么安装 Python3 ? numpy? sounddevice? 声音信号处理库?

news2024/10/5 14:44:58

首先确认要安装的 sounddevice 库,链接:https://python-sounddevice.readthedocs.io/en/0.4.6/

根据文档,可知最新的 sounddevice 版本是 0.4.6
在这里插入图片描述
进入安装页面查看,发现 Newest sounddevice 可以使用 pip 安装,如下图

在这里插入图片描述
试试看电脑是否安装 python 和 python3

在这里插入图片描述
只会调出 “微软应用商店”,看来是没有安装了

进入 python 官网,链接:https://www.python.org/

在这里插入图片描述
下载安装 python3.12
在这里插入图片描述
默认设置安装(除了 C盘 改为 D盘)

再次在命令行窗口运行 python/python3 发现还是不行

记录python3.12 的安装路径,把它放进环境变量里 (用户变量和系统变量的 Path)
在这里插入图片描述
再次在命令行窗口运行 python,如下图
在这里插入图片描述
运行如下命令安装 sounddevice

python -m pip install sounddevice

在这里插入图片描述
再使用如下命令安装 cffi 和 numpy 等必要的库

python -m pip install cffi
python -m pip install numpy
 python -m pip install matplotlib

现在让我们测试下面的代码:

# 1. 导入必要的三个库
import sounddevice as sd
import numpy as np
import matplotlib.pyplot as plt

# 2. 定义采样率和持续时间
sample_rate = 44100  # 采样率(每秒采样点数)
duration = 120  # 持续时间(秒)

# indata: 接收到的声音数据
def plot_waveform(indata, frames, time, status):
    # 3. 将接收到的声音数据转换为numpy数组
    audio_data = np.hstack(indata)

    # 4. 使用 audio_data(numpy 数组) 绘制波形图
    plt.clf()
    plt.plot(audio_data)
    plt.xlabel('Sample')
    plt.ylabel('Amplitude')
    plt.title('Real-time Waveform')
    plt.grid(True)
    plt.ylim([-1, 1])  # 设置纵轴范围为[-1, 1]
    plt.pause(0.001) # 使程序在绘制波形图后暂停 0.001 秒,然后继续执行下一行代码。 (类似于绘图的 sleep)

# 5. 打开输入流并实时接收声音信号(开启另一个线程)
with sd.InputStream(callback=plot_waveform, channels=1, samplerate=sample_rate):
    sd.sleep(int(duration * 1000)) # 程序持续时间为 duration 秒

可以实时显示声音信号
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1297566.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

mysql中NULL值

mysql中NULL值表示“没有值”,它跟空字符串""是不同的 例如,执行下面两个插入记录的语句: insert into test_table (description) values (null); insert into test_table (description) values ();执行以后,查看表的…

Linux系统编程:高级IO总结

非阻塞IO基本概念 高级IO核心就一个概念:非阻塞IO。 与该概念相对的,就是我们之前学习过的阻塞IO。 非阻塞IO(Non-blocking I/O)是一种IO模型,用于实现异步IO操作,使应用程序能够在等待IO操作完成的同时…

【Python】 生成二维码

创建了一个使用 python 创建二维码的程序。 下面是生成的程序的图像。 功能描述 输入网址(URL)。 输入二维码的名称。 当单击 QR 码生成按钮时,将使用 QRname 中输入的字符将 QR 码生成为图像。 程序代码 import qrcode import tkinterd…

【C++】简单工厂模式

2023年12月6日,周三下午 今天又学习了一次简单工厂模式 每多学习一次,都会加深对设计模式的理解 目录 什么是简单工厂模式简单工厂模式的优缺点举例说明 什么是简单工厂模式 简单工厂模式(Simple Factory Pattern)是一种创建型…

【深度学习】一维数组的 K-Means 聚类算法理解

刚看了这个算法,理解如下,放在这里,备忘,如有错误的地方,请指出,谢谢 需要做聚类的数组我们称之为【源数组】 需要一个分组个数K变量来标记需要分多少个组,这个数组我们称之为【聚类中心数组】…

网络基础---网络层详解(图文清晰易懂!!!)

目录 一、网络层的功能 二、IP数据包的格式 三、ICMP协议 1.ICMP协议的概念和作用 2.ping命令 2.1 ping 的格式 2.2 ping选项 2.3 当我们ping不通时,及服务器出现问题,如何排错 2.4 信息传递时出现的问题类型和具体情况 四、冲突域和广播域 1.…

STM32--GPIO点亮LED灯(手把手,超详细)

写在前面:在前面的学习中,我们学习了STM32的编译环境(MDK)、时钟树以及GPIO的8种工作模式;这节我们学习正式入门STM32---点亮第一个LED灯;即利用GPIO进行电灯,尽管是一个十分简单的实现&#xf…

2020年第九届数学建模国际赛小美赛A题自由泳解题全过程文档及程序

2020年第九届数学建模国际赛小美赛 A题 自由泳 原题再现: 在所有常见的游泳泳姿中,哪一种最快?哪个冲程推力最大?在自由泳项目中,游泳者可以选择他们的泳姿,他们通常选择前面的爬行。然而,游泳…

知识付费商城7.0.3开心学习版,新增供货商功能

彩虹知识付费商城7.0.3小森升级版新增供货商开心学习版。仅供开发参考,切勿正式商用。 1.新增邮件提醒功能,支持给用户发订单、结算等邮件通知 2.支持给管理员发送提现、域名审核等邮件通知 3.支持设置手续费最低扣除金额 4.修复了其他一些已知问题 …

激光雷达标定板提高扫地机器人感知环境能力和清洁效率

智能扫地机器人的激光雷达标定板是一种用于校准激光雷达的设备,它通常由不同反射率的涂料涂覆在板面上,用于接收激光雷达发出的激光束并将其反射回来,从而帮助校准激光雷达的测量参数。在自动驾驶和机器人领域,激光雷达和相机的联…

HDFS Java API 基本操作实验

文章目录 一、实验环境二、实验内容(一)数据准备(二)编程环境准备(三)使用Hadoop API操作HDFS文件系统(四)使用Hadoop API Java IO流操作HDFS文件系统 三、实验步骤(一&…

OpenCL学习笔记(二)手动编译开发库(win10+vs2019)

前言 有时需求比较特别,可能需要重新编译opencl的sdk库。本文档简单记录下win10下,使用vs2019编译的过程,有需要的小伙伴可以参考下 一、获取源码 项目地址:GitHub - KhronosGroup/OpenCL-SDK: OpenCL SDK 可以直接使用git命令…

【剑指offer|图解|数组】寻找文件副本 + 螺旋遍历二维数组

🌈个人主页:聆风吟 🔥系列专栏:数据结构、剑指offer每日一练 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 一. ⛳️寻找文件副本(题目难度:简单)1.1 题目1.2 示例1.3 限制1.4 解题思路一c代…

2023年第一次系统架构师备考经历

12月7日成绩已经出来,果然最担心的案例分析没有过,才考了40分,还差5分,我就可以一次拿下证书,好可惜啊,今年的题出的有点偏,大数据居然成为必答题,平常是搞Java,大数据方…

做抖店代发,新手如何定类目?五大类目优缺点分析!

我是电商珠珠 类目是店铺的方向,只有将店铺的定位确定好,才能超越大部分的同行。 我经常跟我的学生讲,选择类目的时候不能瞎选,要学会去分析市场,由于大部分的学员前期都是新手小白,所以我们这边会负责给…

[Linux] 用LNMP网站框架搭建论坛

一、nginx在其中工作原理 原理: php-fpm.conf是控制php-fpm守护进程 它是php.ini是一个php解析器 工作过程: 1.当客户端通过域名请求访问时,Nginx会找到对应的虚拟主机 2. Nginx将确定请求。 对于静态请求,Nginx会自行处理…

听GPT 讲Rust源代码--src/tools(9)

File: rust/src/tools/rust-analyzer/crates/ide-assists/src/handlers/apply_demorgan.rs 在Rust源代码中,apply_demorgan.rs文件位于rust-analyzer工具的ide-assists库中,其作用是实现一个辅助函数,用于在代码中应用De Morgan定律的变换。 …

第二十一章网络通信总结

网络程序设计基础 局域网与互联网 为了实现两台计算机的通信,必须用一个网络线路连接两台计算机。如下图所示 网络协议 1.IP协议 IP是Internet Protocol的简称,是一种网络协议。Internet 网络采用的协议是TCP/IP协议,其全称是Transmissi…

SPRD Android 13 下拉状态栏菜单添加静音快捷键简单记录

SPRD Android 13 下拉状态栏菜单添加静音快捷键简单记录 需要修改文件具体修改补丁吐槽需要修改文件 frameworks/base/packages/SystemUI/res/values/config.xml frameworks/base/packages/SystemUI/src/com/android/systemui/qs/tileimpl/QSFactoryImpl.java frameworks/base…

Java入门 EditPlus的安装与配置讲解

写Java程序不建议使用EditPlus,首选idea社区版,其次是vscode, 然后是eclipse 。editplus说实话排不上号。 但既然小伙伴想了解一下怎么配置,这里就简单说一下。 下载 首先是jdk,jdk是Java开发和运行的基础&#xff…