python调用音频 python调用声音

sounddevice是一个与Numpy兼容的录音以及播放声音的包。

安装sounddevice包

直接通过pip就能安装。

pip install sounddevice

播放音乐

首先,用numpy生成440Hz的正弦波

import numpy as np

fs = 44100 # Hz

f = 440 # Hz

length = 5 #s

myarray = np.arange(fs * length)

myarray = np.sin(2 * np.pi * f / fs * myarray)

用sounddevice包播放音乐非常简单。调用play函数来播放声音,需要传入需要播放声音的波形,和采样率。

import sounddevice as sd

sd.play(myarray, fs)

查看声音设备

计算机上可能有多个声音播放/录制设备,sounddevice会默认使用系统默认的设备。调用query_devices()函数会显示系统所有的声音设备。

sd.query_devices()

下面是我计算机上的声音设备,>标示为默认输入设备,

0 Microsoft 声音映射器 - Input, MME (2 in, 0 out)

> 1 立体声混音 (Realtek High Defini, MME (2 in, 0 out)

2 麦克风 (Realtek High Definition, MME (2 in, 0 out)

3 Microsoft 声音映射器 - Output, MME (0 in, 2 out)

< 4 扬声器 (Realtek High Definition, MME (0 in, 2 out)

5 主声音捕获驱动程序, Windows DirectSound (2 in, 0 out)

6 立体声混音 (Realtek High Definition Audio), Windows DirectSound (2 in, 0 out)

7 麦克风 (Realtek High Definition Audio), Windows DirectSound (2 in, 0 out)

8 主声音驱动程序, Windows DirectSound (0 in, 2 out)

9 扬声器 (Realtek High Definition Audio), Windows DirectSound (0 in, 2 out)

10 扬声器 (Realtek High Definition Audio), Windows WASAPI (0 in, 2 out)

11 立体声混音 (Realtek High Definition Audio), Windows WASAPI (2 in, 0 out)

12 麦克风 (Realtek High Definition Audio), Windows WASAPI (2 in, 0 out)

13 Speakers (Realtek HD Audio output), Windows WDM-KS (0 in, 6 out)

14 立体声混音 (Realtek HD Audio Stereo input), Windows WDM-KS (2 in, 0 out)

15 麦克风 (Realtek HD Audio Mic input), Windows WDM-KS (2 in, 0 out)

16 线路输入 (Realtek HD Audio Line input), Windows WDM-KS (2 in, 0 out)

修改默认的输入设备为系统输出声音

系统默认的声音输入设备是麦克风,如果需要录制系统声音则需要将声音设备切换成立体声混音。有可能不存在立体声混音这个选项,这时你需要升级你的声卡驱动更新为比2013-5-10发布的6.0.10.1900更高的版本。

通过上面运行sd.query_devices()可以看到,我的计算机立体声混音设备序号为1。因此我需要设置:

sd.default.device[0] = 1

录制系统声音

录音和声音播放一样简单,这时你需要调用rec函数,传入需要录音的时长(采样的点数),同时设置blocking=True表示录音完成再返回,最后设置channels=1表示只录制一个声道。

fs = 44100 # Hz

length = 5 # s

recording = sd.rec(frames=fs * length, samplerate=fs, blocking=True, channels=1)

最后使用http://scipy.io将音频保存为文件。

from scipy.io import wavfile

wavfile.write(‘recording.wav’, fs, recording)

FastStone Capture无法录制系统声音解决方法(win10)

步骤一: 右键桌面–>个性化 步骤二: 主题–>高级声音设置 步骤三: 录音–>右键“立体声混音”,单击启用就OK了.

Python黑帽编程1.3 Python运行时与包管理工具

Python黑帽编程1.3 Python运行时与包管理工具 0.1 本系列教程说明 本系列教程,采用的大纲母本为

python的egg包的安装和制作]

Defining Python Source Code Encodings Python egg 的安装 egg文件制作与安装 2011-06-10 14:22:50| 分类: python | …

繁简转换OpenCC,autogb 和 autob5,iconv,python的jianfan包

OpenCC OpenCC 是跨平台.多语言的开放中文转换库,除了基本的简繁转换功能外,用户还可以选择对不同用词习惯和异体字的处理方式. OpenCC 还提供方便的网页转换界面. OpenOffice …

python自动化运维:系统基础信息模块

p { margin-bottom: 0.25cm; line-height: 120% } a:link { } 第一章: 首先介绍下系统性能信息模块:psutil psutil能够轻松实现获取系统 …

Python/模块与包之模块

Python/模块与包之模块 1.什么是模块? 模块就是py文件 2.为什么要用模块? 如果在解释器上进行编码,把解释器关闭之前写的文件就不存在了,如果使用模块的话就能永久保存在磁盘中. 3.如何使用 …

mas录屏,带系统声音和麦克风声音

自带的QuickTime + Soundflower 可完美解决,同时录系统的声音和mic声音,也可以只录系统声音. 安装Soundflower 在应用程序 -> 实用工具,里面找到“音频 MI …

数据分析:基于Python的自定义文件格式转换系统

*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* …

Python模块、包、异常、文件(案例)

Python模块.包.异常.文件(案例) python.py #模块 # Python中的模块(Module),是一个Python文件,以.py文件结尾,包含了Python对象定义和Python语句, …

随机推荐

Python之路,Day2 - Python基础2

def decode(self, encoding=None, errors=None): “”" 解码 “”" “”& …

div+css基础

Div+css技术 Div是用于存放文字,图片,元素的容器 Css 是用于指定存放在div中的内容如何显示,包括内容的位置和外观(层叠样式表) Html 文件 …

各种常用函数 (SQL)

数学函数 1.绝对值 S:select abs(-1) value O:select abs(-1) value from dual 2.取整(大) S:select ceiling(-1.001 …

Javascript动态生成表格的性能调优

vision 0.8 [耗时672ms]终极优化 将字符串作为数组对象的方式是目前效率最高,性能最优的方式.

锋利的jQuery读书笔记—jQuery中操作DOM

一般来说,DOM的操作分为3个方面,即DOM Core.HTML-DOM和CSS-DOM jQuery中的DOM操作主要包括以下种类: 查找节点 查找元素节点 查找属性节点 创建节点 创建元素节点 创 …

AlarmReceiver 与IntentService的使用

1:GetSmsService.java public class GetSmsService extends IntentService{ private AlarmManager alarmMan …

PyConChina2016 北京站 献给Python开发者

开源编程语言Python近年来在互联网.游戏.云计算.大数据.运维.企业软件等领域有非常多的应用.今天小编就为大家推荐一场Python开发者的盛会:PyConChina2016(北京)! PyCon大 …

玩转mongodb(九):通过log4jmongo来实现分布式系统的日志统一管理

背景 在分布式系统中,我们有多个web app,这些web app可能分别部署在不同的物理服务器上,并且有各自的日志输出.当生产问题来临时,很多时候都需要去各个日志文件中查找可能的异常,相当耗费人力. …

MySQL binlog_format中sbr 和rbr(Statement-Based and Row-Based Replication)的优缺点

Advantages of statement-based replication 1 技术成熟 2 对于大量的更新删除等操作,仅仅会写入少量的变更结果,加速日志获取或者备份的速度 3 日志文件包含了 …

多个iframe中根据src获取特定iframe并执行操作

多个iframe中根据src获取特定iframe并执行操作 前言:在项目中做一个批量编辑工单时需要在一大堆的iframe中的某一个iframe里边再用模态框的形式显示编辑区域,然后再在模态框里边加入。

以上就是“python调用音频 python调用声音”的全部内容,希望对你有所帮助。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

二、Python必备开发工具

img

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

五、Python练习题

检查学习结果。

img

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

img

最后祝大家天天进步!!

上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。

  • 22
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值