#!/usr/bin/env python #-*- coding: utf-8 -*- """ 绘制波形图 plottingWaveform.py """ importwave importpylab as pl importnumpy as np print('working') #打开wav文档 file = wave.open(r"mic4.wav", "rb") #读取格式信息 #(nchannels, sampwidth,framerate, nframes, comptype, compname) params =file.getparams() nchannels,sampwidth,framerate,nframes = params[:4] #读取波形数据 str_data =file.readframes(nframes) #文件使用完毕,关闭文件 file.close() #将波形数据装换成数组 wave_data = np.fromstring(str_data, dtype=np.short) wave_data.shape = (-1, 2) wave_data = wave_data.T #矩阵转置 time = np.arange(0, nframes) * (1.0 /framerate) print ("time:", len(time)) print ("wave_data:", len(wave_data[0][0:len(time)])) #绘制波形 """ subplot(mnp) / (m,n,p)是将多个图画到一个平面上的工具. 其中,m表示是图排成m行,n表示图排成n列,也就是整个figure中有n个图是排成一行的,一共m行, 如果m=2就是表示2行图.p表示图所在的位置,p=1表示从左到右从上到下的第一个位置. """ pl.subplot(2, 1, 1) #这里也可以使用pl.subplot(211) pl.plot(time, wave_data[0][0:len(time)]) pl.subplot(2, 1, 2) #这里也可以使用pl.subplot(212) pl.plot(time, wave_data[1][0:len(time)], c="g") pl.xlabel("time (seconds)") pl.show()
Python绘制wav文件音频图(静态)[matplotlib/wave]
免责声明:文章转载自《Python绘制wav文件音频图(静态)[matplotlib/wave]》仅用于学习参考。如对内容有疑问,请及时联系本站处理。
上篇java学习--基础知识进阶第六天--集合&迭代器、增强for & 泛型、常见数据结构、List子体系vue使用基础下篇
宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=