python生成一个WAV文件的正弦波
2024-09-08 15:28:33
import numpy as np
import matplotlib.pyplot as plt T = 1.0 / sample_rate #周期
x = np.arange(0, 1.0, T)
y = 0.9*np.sin(2 * np.pi * fc * x)
file=wave.open(r'hello.wav','wb')
file.setnchannels(1)#设置通道数
file.setsampwidth(2)#设置采样宽
file.setframerate(16000)#设置采样
file.setcomptype('NONE','not compressed')#设置采样格式 无压缩
plt.plot(y[:16])#画出一个周期的波形图
plt.show()
y=y*32768
y_data=y.astype(np.int16).tobytes()#将类型转为字节
file.writeframes(y_data)
file.close()
ys=y[:fft_size]
yf=np.abs(np.fft.fft(ys)/fft_size)
plt.subplot(211)
plt.plot(x[:fft_size],ys)
plt.subplot(212)
plt.plot(x[:fft_size],yf)
plt.show()
最新文章
- sql跨库查询
- TextView 选择文字
- ios每日一发--Leanclude数据云存储以及登录 注册账户
- Servlet 编程 请求的转发
- [Mongo] How to Install Mongo on Debian(不要安装)
- 屏幕取色工具推荐 ColorPix
- WWF3常用类 <;第十一篇>;
- hadoop 2.0 lzo 问题
- java之表达式陷阱
- 16位cpu下主引导扇区及用户程序的编写
- springmvc实现REST中的GET、POST、PUT和DELETE
- 机器学习基石:Homework #0 SVD相关&;常用矩阵求导公式
- ?:,reverse,vector的基本小结
- [Python]mysql-python 安装错误 fatal error C1083: Cannot open include file: &#39;config-win.h&#39;: No such file or directory
- Qgis练手
- 深入详解美团点评CAT跨语言服务监控(八)报表持久化
- 根据svm将视频帧转换为img
- PTA 7-6 列出连通集(深搜+广搜)
- Rails中activeAdmin的使用
- OO第三次阶段总结